原创 430的串口和相应低功耗模式(LPM1)应用 1

2013-1-21 11:34 1213 7 7 分类: MCU/ 嵌入式 文集: MCU

 

先看看串口的接口,
24343357_13421467853np3.jpg
24343357_134214678945EK.jpg
因为接口是复用的,可以作为IO也可以作为外设接口,所以要在P3SEL做一下设置。
接下来看看串口的设置流程,这点这个430的datasheet说的很清楚,我也很推荐这样的datasheet说明方式,不像有的公司,介绍了很多寄存器,但是这个功能怎么用,从开始初始化,设置寄存器,然后启动该应用没有介绍。这点,应该给MSP430单片机掌声,还有就是TI公司提供了一些简单的例程,可以学习一下,也挺方便大家使用430单片机的,这点蛮好的啊。
24343357_13421467921Xmk.jpg
这个图片里面的5步就是告诉你怎么设置一个串口,很方便的吧,你只要对照这5步来,就行了。很方便的。
我们需要完成的工作就是第二步的那句初始化USART寄存器。接下来看看相关的寄存器吧。我把程序弄上来,对照程序说比较方便。
 1:   P3SEL |= 0x30;                            // 选择P3.4和P3.5做UART通信端口
 2:   ME1 |= UTXE0 + URXE0;                     // 使能USART0的发送和接受
 3:   UCTL0 |= CHAR;                            // 选择8位字符
 4:   UTCTL0 |= SSEL0;                          // UCLK = ACLK(32768HZ
 5:   UBR00 = 0x03;                             // 波特率9600
 6:   UBR10 = 0x00;                             //
 7:   UMCTL0 = 0x4A;                            // Modulation
 8:   UCTL0 &= ~SWRST;                          // 初始化UART状态机
 9:   IE1 |= URXIE0;                            // 使能USART0的接收中断
第1,2 3 4句程序不解释了,自己看看寄存器就好了,
我主要说一下波特率的设置,在串口调试里面这点,都是比较繁琐的,像51还要和相关的定时器配合使用,
430单片机不需要定时器配合,只要有UCLK时钟就好了,这里时钟是32768HZ。
24343357_1342148262huXX.jpg
 
24343357_1342148268vFcC.jpg
在datasheet里面有实例计算,如果你想具体了解,你可以看datasheet。

文章评论0条评论)

登录后参与讨论
我要评论
0
7
关闭 站长推荐上一条 /3 下一条