标题:
串口通信如何控制其他硬件
[打印本页]
作者:
reveal
时间:
2017-8-5 10:47
标题:
串口通信如何控制其他硬件
#include "reg52.h"
sbit led=P2^0;
typedef unsigned int u16;
typedef unsigned char u8;
void UsartInit()
{
SCON=0X50;
TMOD=0X20;
PCON=0X80;
TH1=0XF3;
TL1=0XF3;
ES=1;
EA=1;
TR1=1;
}
void main()
{
UsartInit();
while(1);
}
void Usart() interrupt 4
{
u8 receiveData;
receiveData=SBUF;
SBUF=receiveData;
while(!TI);
TI=0;
RI = 0;
// 当接受到数字0是使led亮
if(SBUF==0)
{
led=0;
}
}
但是程序没有自己想要的结果,希望大佬帮忙改下 ,最好能解释下串口通如何控制其他硬件
作者:
g753388438
时间:
2017-8-5 11:56
好久没写51的串口程序了 有几点你需要确定一下
第1 波特率 一定要设置正确
第2 中断一定要打开
第3
void Usart() interrupt 4
{
u8 receiveData;
receiveData=SBUF;
SBUF=receiveData;
while(!TI);
TI=0;
RI = 0;
// 当接受到数字0是使led亮
if(SBUF==0)
{
led=0;
}
}
复制代码
改成
void Usart() interrupt 4
{
u8 receiveData;
receiveData=SBUF;
if(receiveData==0)
{
led=0;
}
SBUF=receiveData;
while(!TI);
TI=0;
RI = 0;
// 当接受到数字0是使led亮
}
复制代码
这样只有收到0时led等会亮
第4 你要确定led灯亮,IO口应该置0还是置1
作者:
reveal
时间:
2017-11-11 15:46
谢谢 认真学习下
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1