我就是想通过端口助手控制单片机的LED关与开,也就是我输入 1 单片机LED亮,输入0 单片机LED灭
以下是我做好的电路 不知道是哪里有问题,就是在端口助手上 发送1 接收区一直接收不到 1的数据 ,单片机 LED也不亮 请问是什么原因
端口助手:
单片机程序代码:
#include <REG52.H>
sbit LED = P0^0;
unsigned char UART_buff;
bit New_rec = 0, Send_ed = 1, Money = 0;
//----------------------------------------------
void main (void)
{
SCON = 0x50; //串口方式1, 8-n-1, 允许接收.
TMOD = 0x20; //T1方式2
TH1 = 0xFD; //9600bps@11.0592MHz
TL1 = 0xFD;
TR1 = 1;
ES = 1; //开中断.
EA = 1;
while(Money == 0); //等着交费.
while(1) {
if ((New_rec == 1) && (Send_ed == 1)) {
SBUF = UART_buff; //发送.
New_rec = 0;
Send_ed = 0;
}
}
}
//----------------------------------------------
void ser_int (void) interrupt 4
{
if(RI == 1) { //如果收到.
RI = 0; //清除标志.
New_rec = 1;
UART_buff = SBUF; //接收.
if(UART_buff == '1') LED = 1;
if(UART_buff == '0') LED = 0;
if(UART_buff == '$') Money = 1;
}
else { //如果送毕.
TI = 0; //清除标志.
Send_ed = 1;
}
}
/