微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > STC89C52 串口读回数据的问题

STC89C52 串口读回数据的问题

时间:10-02 整理:3721RD 点击:
我用串口助手发 字符 1或0,  单片机收到后 给unsigned char UART_buff, Money;  然后判断是否等于1或0,
可是就是不会相应。
  if( UART_buff == 1 )   Money = 1;  这几好像有问题 ?
请大侠帮我看看   我就想把 上位机发来的字符判断下,如果是1,就有动作  不是就没有动作

if(RI == 1) {  //如果收到.  
       RI = 0;      //清除标志.  
       New_rec = 1;
       UART_buff = SBUF;  //接收.
   if( UART_buff == 1 )   Money = 1;
//     if(UART_buff == 'a' )  Money = 1;
//           Money = UART_buff;
     }  
     else  {        //如果送毕.  
       TI = 0;      //清除标志.  
       Send_ed = 1;  
     }
if ((New_rec == 1) && (Send_ed == 1))    //com
{  //如果收到新数据及发送完毕  
         SBUF = UART_buff; //那就发送.  
         New_rec = 0;  
         Send_ed = 0;  
     }

     if( Money == 1 )        //scan COM FAIL
{
red_          =1;
green_          =1;
yellow_          =0;
sweep_key =1;
   go_stop=0;
a=1;
ss=0;
bb=0;
Money = 0;
value_fail=1;          
}更多

0




字符1应该是用'1'或者,0x31.

马上试下
还请你多帮忙看看
哪里还有问题

试了下不行

额..你确定你的串口收发数据正常么?

先把串口通讯调好把

收发咩有 问题啊  

我把程序发你看看   你帮忙看下是什么问题
SCON = 0X50;
TMOD=0X20;
PCON=0X00;
TH1=0XFD;
TL1=0XFD;
ES=1;
EA=1;
TR1=1;
晶振是22.1184的
我这个设置对吗

两位大侠 帮忙看看哪里有问题


Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top