使用超级终端完成单片机与电脑通讯
超级终端的设置过程如上图所示,下面是单片机的硬件衔接电路:
单片机C程序:
#include
void int_initial()//串口中止初始化
{
EA=1;
ES=1;
}
void RS232_receive_Init() //串口初始化设置
{
SCON = 0x50; // UART作业于形式1, REN=1
TMOD = 0x20 ; // Timer1 工业于形式2
PCON |= 0x80; // SMOD1 = 1,波特率加倍
TH1 = 0xF3; // 波特率4800 Bds at 12MHz
TL1 = 0xF3; // 波特率4800 Bds at 12MHz
TR1 = 1; // 发动Timer1
}
void main()
{
int_initial();
RS232_receive_Init();
while(1)
{
}
}
void receive_int() interrupt 4 //中止函数,中止标号是4
{
EA=0;
RI=0;
dat1=SBUF;
····
EA=1;
}
定时器T1形式2的初始值计算公式:
留意:单片机的晶振是12MHz时,串口的波特率最好不要超越4800,不然会呈现误码。