打印

【STC89c52】要是谁能发现这程序的错误,不知道的不要发言

[复制链接]
3564|28
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
ningyinga|  楼主 | 2011-7-28 12:12 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 ningyinga 于 2011-7-28 13:26 编辑

按下矩阵键盘第二行时以1200bps发送,1,2,3,4,


#include <reg52.h>
unsigned char num,temp;
unsigned char code table[]={
48,49,50,51,
52,53,54,55,
56,57,58,59};
void display();
void main()
{
TMOD=0x20;
TL1=0XE8;           
TH1=0XE8;
TR1=1;
SM0=0;
SM1=1;

while(1)
{
  display();
}
}
void display()
{

P3=0xfd;
temp=P3;
temp=temp&0xf0;
if(temp!=0xf0)
{  
  switch(temp)
  {
   case 0xe0:num=1;break;
   case 0xd0:num=2;break;
   case 0xb0:num=3;break;
   case 0x70:num=4;break;
  }
  while(temp!=0xf0)
  {
   temp=P3;
   temp=temp&0xf0;
  }
  P1=table[num];
  SBUF=table[num];
  while(!TI);
  TI=0;
}
}

相关帖子

沙发
gx_huang| | 2011-7-28 12:37 | 只看该作者
拒绝当爸!

使用特权

评论回复
板凳
lyjian| | 2011-7-28 12:37 | 只看该作者
拒绝当你爸!

使用特权

评论回复
地板
lixiaoxu2meng| | 2011-7-28 13:17 | 只看该作者
有没有种不是证明给你看的  
lz帖子让人看了不爽  先前是“【STC89c52】要是谁能发现这程序的错误,我叫你爸”
唉 现在这社会 啥人都有啊

使用特权

评论回复
5
ayb_ice| | 2011-7-28 13:52 | 只看该作者
我不是你爸,别乱叫

使用特权

评论回复
6
mugenwon| | 2011-7-28 14:52 | 只看该作者
自己debug一下,没难度可言。。。

使用特权

评论回复
7
ningyinga|  楼主 | 2011-7-28 21:13 | 只看该作者
没难度?你试了没,我就是试不来,其他三排键盘都行

使用特权

评论回复
8
highgear| | 2011-7-28 21:19 | 只看该作者
我几秒钟就看出了问题所在,但不准备发言。

为了自己微不足道的便利,而把尊严随意抛却的人,不值得尊敬。

使用特权

评论回复
9
ningyinga|  楼主 | 2011-7-28 22:11 | 只看该作者
楼上不要这么小气嘛,我只是想引起大家的注意,我在百度发帖n天了,都没人回答,着急啊,我在这道歉了

使用特权

评论回复
10
lyjian| | 2011-7-29 08:19 | 只看该作者
你自己也不知道,干嘛还要发言?

使用特权

评论回复
11
lyjian| | 2011-7-29 08:21 | 只看该作者
像你这种激将法除了让别人觉得反感外,没有其他用处

使用特权

评论回复
12
jack_shine| | 2011-7-29 09:13 | 只看该作者
本帖最后由 jack_shine 于 2011-7-29 10:01 编辑

设置问题

使用特权

评论回复
13
jack_shine| | 2011-7-29 09:16 | 只看该作者
这是最基础的问题了

使用特权

评论回复
14
zjswuyunbo| | 2011-7-29 09:20 | 只看该作者
想想还是不说好了

使用特权

评论回复
15
mubei| | 2011-7-29 09:29 | 只看该作者
我刚学51没几天,如果回答不是很好的话请见谅。貌似你的总中断开关没打开,即12楼说的, 还有TL1=0XE8;           
TH1=0XE8;      这个地方应该用小写0xe8,  我昨天看视频学习时发现大小写是要区分的。
另外建议lz不要起这种标题      二姨家的风气还是很好的,只要你有问题大家会帮你的,没必要弄个标题哗众取宠   现在你有问题别人帮助你 ,以后别人有问题你帮助别人就ok

使用特权

评论回复
16
jack_shine| | 2011-7-29 10:02 | 只看该作者
我刚学51没几天,如果回答不是很好的话请见谅。貌似你的总中断开关没打开,即12楼说的, 还有TL1=0XE8;           
TH1=0XE8;      这个地方应该用小写0xe8,  我昨天看视频学习时发现大小写是要区分的。
另外建议lz ...
mubei 发表于 2011-7-29 09:29
大小写都没关系的,这位小哥:)

使用特权

评论回复
17
mubei| | 2011-7-29 10:05 | 只看该作者
16# jack_shine
额 那我今天试试    谢谢

使用特权

评论回复
18
jack_shine| | 2011-7-29 10:42 | 只看该作者
17# mubei 你看的什么视频说大小写要区分的:)

使用特权

评论回复
19
mubei| | 2011-7-29 10:45 | 只看该作者
18# jack_shine
不是看视频上说的  是昨天看视频学习过程中 我用大写结果出错了 改了小写就没事了……

使用特权

评论回复
20
yewuyi| | 2011-7-29 10:50 | 只看该作者
0X还是0x,这个在各种编译器中不一定均能识别,很多的编译器需要进行区分,你写0X确实可能不被识别,为了保持代码的可通用性,建议一律写成0x

后面的16进制数是否大小写则不关键,我所见到的所有编译器都不区分这个大小写。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

9

帖子

1

粉丝