源码如下:
- #include <mydec.h>
- uchar r_a=1;
- void UART_Initial(void)
- {
- SCON=0X50;
- TMOD=0X20;
- EA=1;
- ES=1;
- TH1=0XFD;
- TL1=0XFD;
- TR1=1;
- }
- void SendByte(uchar dat)
- {
- SBUF=dat;
- while(!TI);
- TI=0;
- }
- void SendString(uchar *s)
- {
- while(*s)
- {
-
- SendByte(*s);
- s++;
- }
- }
- void main()
- {
- uchar *s="hello world!";
- UART_Initial();
- SendString(s);
- // SendByte(r_a);
- // while(!T0);
- // T0=0;
-
- }
- //void UART_Inter() interrupt 4
- //{
- // if(TI)
- // {
- //
- //
- // }
- // if(RI)
- // {
- // r_a=SBUF;
- // P1=r_a;
- // SBUF=r_a;
- // RI=0;
- //
- //
- // }
- //
- //
- //
- //}
复制代码代码其实只有几行,高手们帮看下。现在的问题是,当我把第二行的
uchar r_a=1;注释掉时,hello world 能输出到串口助手的输出端,接收区会不停打印这两个单词。但是如果添上这句代码,就接收不到。只会出现一次hhello world!然后就没有反应了,求教高手是怎么回事。
一周热门 更多>