MSP430串口通信中断与设置详解
168 浏览量
更新于2024-09-05
收藏 62KB PDF 举报
本文主要讨论了在使用MSP430系列单片机进行串口数据收发时遇到的一些问题以及编程技巧。作者在参考沈建华编著的书籍时,注意到书中的某些控制字没有详细列出,这可能导致在实际编程过程中遗漏,从而引发错误。特别提到的三个特殊功能寄存器——ME2 IE2 IFG2(或ME1 IE1 IFG1)与USART1通信模块紧密相关,它们分别是中断使能寄存器(IE2/IE1),中断标志寄存器(IFG2/IFG1)和模块使能寄存器(ME2/ME1)。通过定义宏(如DEFC)来简化这些寄存器的操作,例如设置UART1的接收和发送中断(URXIE1, UTXIE1)、中断标志(URXIFG1, UTXIFG1)以及波特率控制(U1MCTL)。
MSP430系列单片机的串口波特率设置具有其独特性,可以通过UTCTL寄存器选择不同的时钟源,如外部时钟UCLK1、ACLK或SMCLK。波特率的计算涉及到精确的比例计算,例如750kHz时钟下,若要实现115200波特率,需要调整UBR(基本时钟比率寄存器)的值,使得BRCLK(波特率发生器时钟)除以UBR的结果接近于期望的波特率除以16。在这个例子中,UBR为3,对应于750000/(115200*8)的结果,而M7到M0的位可以灵活地调整以满足精度要求,但不能连续占据相邻位置,并且UMCTL的最低值必须至少为0x03。
本文还提到了两个函数:`void Delay(unsigned char m)`,用于实现延迟,以及`void ComInit(void)`,可能用于初始化串口通信。在数据发送方面,有一个名为`unsigned char Usart_Tx_`的变量或函数,这可能是用于存放待发送的数据或用于传输数据的接口。
本文的重点在于帮助开发者更好地理解和使用MSP430的串口功能,避免因为缺乏控制字列表而产生的编程问题,并提供了波特率设置和相关寄存器操作的具体步骤。
535 浏览量
117 浏览量
1113 浏览量
166 浏览量
1000 浏览量
248 浏览量
2022-09-23 上传
120 浏览量
点击了解资源详情
weixin_38616359
- 粉丝: 8
- 资源: 933
最新资源
- excel制表的技巧
- spring开发指南
- ARES User Guide
- IBM Redbook -WebSphere Studio 5.1.2 for JSF and SDO
- winsock编程实例
- Flash开发媒体应用程序.pdf
- 转TD使用手册——实用实例
- ISIS User Guide
- 计算机图形学实验程序
- 最新scsi ultra320协议
- aspnet MVC应用程序实例
- IBM DB2 - SQL Reference for Cross-Platform Development
- How to Write Better Test Cases
- Java langugae Specification 3.0
- JAVA认证-310-055
- iometer使用指南