标题: 大家好,我想通过串口然后在PC端按1,LED亮,请问我这个程序有什么问题呢 [打印本页]

作者: zhangzehong    时间: 2018-9-4 23:16
标题: 大家好,我想通过串口然后在PC端按1,LED亮,请问我这个程序有什么问题呢
#include "reg51.h"
typedef unsigned char u8;
typedef unsigned int u16;
sbit led=P2^0;
u8 i;
void UsartInit()
{
TMOD=0X20;
TH1=0xF3;
TL1=0xF3;
PCON=0x80;
TR1=1;
SCON=0x50;  
ES=1;
EA=1;   
}
void main()
{
UsartInit();
while(1);
}  
void Usart() interrupt 4
{  
u8 receiveDate=SBUF;  
RI=0;
i=SBUF;
switch(i)
{
  case(1):led=0;break;  
}        
SBUF=receiveDate;   
while(!TI);         
TI=0;      
}




作者: qinshuai    时间: 2018-9-5 06:10
u8  receiveDate=SBUF;这句话感觉有点问题。  case(1)这样写也可以嘛?没用过。case 1:led=0;break。)
作者: HC6800-ES-V2.0    时间: 2018-9-5 07:59
我在我的板子上试验了,没问题。
不过,要提醒你:你想在PC上按键就立即控制灯,目前是不可能的。因为你必须用串口调试工具,且发送数字1才能控制灯,不是你一按键就控制灯。
如果想那样直接控制灯,必须在PC上有相应的程序。
作者: zhangzehong    时间: 2018-9-5 15:48
HC6800-ES-V2.0 发表于 2018-9-5 07:59
我在我的板子上试验了,没问题。
不过,要提醒你:你想在PC上按键就立即控制灯,目前是不可能的。因为你必 ...

咦,好的,谢谢!




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