标题: 该单片机代码为什么串口通信没能实现流水灯控制以及熄灭,编译没有出错,用串口不... [打印本页]

作者: qwettyuio    时间: 2021-4-25 15:14
标题: 该单片机代码为什么串口通信没能实现流水灯控制以及熄灭,编译没有出错,用串口不...
  1. #include <reg51.h>
  2. #include <intrins.h>
  3. #define uchar unsigned char
  4. #define uint unsigned int
  5. code tabup[]={0xfb,0xfc,0xfd,0xfe,0x7f,0xdf,0xcf,0xbf};
  6. sbit LED1 = P1^0;
  7. sbit beep=P2^3;
  8. uchar buf,temp,i;
  9. void delay (uint z)
  10. {
  11.         uint x,y;
  12.         for(x=z;x>0;x--)
  13.         for(y=110;y>0;y--);
  14. }
  15. void madup()
  16. {
  17.         delay(1000); //延时1000毫秒
  18.         while(1)        //大循环
  19.         {
  20.                 for(i = 0; i < 8; i++)
  21.                 {
  22.                         P1 = tabup[i];
  23.                         delay(1000);        
  24.                 }
  25.         }
  26. }
  27. void main()
  28. {
  29.         TMOD =0x20;
  30.         SCON =0x50;
  31.         PCON =0x00;
  32.         EA =1;
  33.         ES=1;
  34.         TL1=0xfd;
  35.         TH1=0xfd;
  36.         TR1=1;
  37.         while(1);
  38. }
  39. void serial() interrupt 4
  40. {
  41.         ES=0;
  42.         RI=0;
  43.         buf=SBUF;
  44.         switch (buf)
  45.         {
  46.                 case 0: mabup();delay (100);break;
  47.                 case 1: P1=0xff;delay(100);break;
  48.                 default:    beep=0;P1=0xff;break;  //接受到其它数据,蜂鸣器响  
  49.         }
  50.         ES=1;
  51. }

复制代码

作者: gd2051    时间: 2021-4-25 16:36
mabup[]= 与   P1=tabup();  数组名不一样吧?
作者: tyrl800    时间: 2021-4-25 17:21
怎么在串口中断写这么多的语句,程序错误很多
作者: qwettyuio    时间: 2021-4-25 17:57
tyrl800 发表于 2021-4-25 17:21
怎么在串口中断写这么多的语句,程序错误很多

怎么修改
作者: 花心的刘备    时间: 2021-4-25 20:59
中断里怎么加了 ES=0;呢?
作者: huangzongwu    时间: 2021-4-26 10:28
很明显你这个延时函数不对啊,delay(1000)等于延时1000微秒即1毫秒差不多,1毫秒的闪烁你看不到效果的
作者: haokey    时间: 2021-4-28 11:05
灯亮不亮,madup()函数里面的while(1)要删掉
作者: haokey    时间: 2021-4-28 11:14
haokey 发表于 2021-4-28 11:05
灯亮不亮,madup()函数里面的while(1)要删掉

先不管灯亮不亮,madup()函数里面的while(1)要删掉




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1