C51单片机串行口讲解:异步通信与波特率

需积分: 10 1 下载量 100 浏览量 更新于2024-07-13 收藏 3.63MB PPT 举报
"MCS-51单片机的串行口结构及通信方式" MCS-51系列单片机的串行通信是其重要的功能之一,尤其在嵌入式系统和物联网应用中广泛使用。该系列单片机的串行接口主要涉及到RXD和TXD两条线,分别用于数据接收和发送。串行通信接口有四种工作模式,分别是: 1. 方式0:同步移位寄存器方式。在这种模式下,波特率直接由系统时钟确定,适合简单的串行数据传输。 2. 方式1:8位异步通信方式。波特率由定时器T1的溢出率决定,这种方式适用于标准的RS-232通信协议。 3. 方式2:9位异步通信方式。波特率直接由系统时钟产生,增加了一个第九位用于多机通信或数据校验。 4. 方式3:也是9位异步通信方式,但波特率由定时器T1决定,与方式2类似,提供更多的通信选项。 在MCS-51单片机中,与串行口相关的特殊功能寄存器包括: - SBUF(串行数据缓冲区):地址为99H,用于发送和接收数据。发送时,CPU将数据写入SBUF,然后由串行口按照起始位、数据位、停止位的顺序发送出去;接收时,CPU从SBUF读取数据,SBUF会存储接收到的数据位。 - SCON(串行控制寄存器):地址为98H,设置串行口的工作模式和控制接收、发送。其中,SM0和SM1选择工作方式,SM2用于多机通信控制,REN控制是否允许接收,TB8和RB8分别表示发送和接收的第九位数据,TI和RI是发送和接收中断标志。 - PCON(电源控制寄存器):地址为87H,虽然不直接与串行通信相关,但在电源管理中起到作用,可以影响系统的低功耗模式。 SCON寄存器中的TI(发送中断标志)在不同工作模式下有不同的置位时机。在方式0时,TI在发送完第8位数据后由硬件自动置位;而在方式1、2、3中,TI则在发送停止位开始时置位。TI置位后,会触发中断请求,通知CPU可以发送下一个数据。需要注意的是,TI的清零通常需要CPU手动执行。 MCS-51单片机的串行通信能力强大且灵活,能够适应各种通信需求。通过合理配置工作方式、控制寄存器和处理中断,可以实现高效的串行数据交换。这使得MCS-51单片机成为许多嵌入式系统开发中的首选微控制器。