本人使用的51开发板为 郭天祥C51 TX-1C开发板 ;
本笔记部分根据B站up主:江科大自化协、郭天祥的教学视频 整理得到
从上面三个图中我们可以得到:SCON = 0101 0000
,通过方式 1 工作,允许串行接受状态
PCON = 1000 0000
这个主要 SMOD = 1
,起一个波特率加倍的作用,由于我是软件设置这个,所以我选了这个选项那么就 SMOD = 1
,不选的话也没关系,但是波特率的计算值就会不太一样
串口波特率的计算是通过定时器 1 来计算的,于是定时器 1 设置成 8 位自动重装载定时器,当溢出时将 TH1 存放的值自动重装入TL1。同时启动定时器 1 ,且禁止定时器 1 中断。
TMOD &= 0x0f;
TMOD |= 0x20; //8位自动重装载寄存器
ET1 = 0; //禁止定时器1中断
TR1 = 1; //启动定时器1
当发送数据时才需要加上这两句语句
EA = 1; //CPU的总中断允许控制位
ES = 1;