STC 12C5A60s2 串口发送问题
下面这段程序我发到89c52里 通过串口调试助手 2400bps 12M晶振 发送到单片机 单片机就能把发送的十六进制数再返回来显示到串口调试助手中,并显示在P0口接的8个LED上面,但是换成STC12c5a60s2就只能在P0口上显示出来,但传不回上位机了。为什么呢?我看说明上写 12c5a60s2的串口1和51是一样的操作方式啊 为什么同样程序 能接收到 传不回来呢?#include"STC_NEW_8051.H"
#define uchar unsigned char
#define uint unsigned int
uchar a,flag;
void main()
{
TMOD=0x20;
TH1=0xf3;
TL1=0xf3;
TR1=1;
REN=1;
SM0=0;
SM1=1;
EA=1;
ES=1;
while(1)
{
if(flag==1)
{
ES=0;
SBUF=a;
while(!TI);
TI=0;
ES=1;
flag=0;
}
}
}
void ser() interrupt 4
{
RI=0;
P0=SBUF;
a=SBUF;
flag=1;
} 因为STC12C5A60S2速度快,想放弃89C52了,可是这个串口问题还没解决 有高手指点下吗 突然又好使了 …… 有一个工具的~去STC的网站上找,代码自动生成工具
页:
[1]