3379|5

39

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

msp430f4152 LPM3模式下,9600bps 串口通信不能收发数据 [复制链接]

本帖最后由 18633013902 于 2016-6-22 10:58 编辑

RT,msp430f4152在LPM3模式下,时钟为SMCLK时,TimerA 模拟的UART串口不能通信, 不知道什么原因造成的?

最新回复

你研究研究下面的官方例程吧,注意时钟设置: //****************************************************************************** //   MSP430x41x2 Demo - USCI_A0, 115200 UART Echo ISR, DCO SMCLK, LPM3 // //   Description: Echo a received character, RX ISR used. Normal mode is LPM3. //   Automatic clock activation for SMCLK through the USCI is demonstrated. //   USCI_A0 RX interrupt triggers TX Echo. //   Baud rate divider with 1048576hz = 1048576/115200 = ~9.1 (009h|01h) //   ACLK = LFXT1 = 32768Hz, MCLK = SMCLK = default DCO = 32 x ACLK = 1048576Hz //   //* An external watch crystal between XIN & XOUT is required for ACLK *//        // //               MSP430x41x2 //             ----------------- //         /|\|              XIN|- //          | |                 | 32kHz //          --|RST          XOUT|- //            |                 | //            |     P6.6/UCA0TXD|------------> //            |                 | 115200 - 8N1 //            |     P6.5/UCA0RXD|<------------ // // //  P. Thanigai //  Texas Instruments Inc. //  January 2009 //  Built with CCE Version: 3.1 and IAR Embedded Workbench Version: 4.11 //****************************************************************************** #include  <msp430x41x2.h> void main(void) { volatile unsigned int i;   WDTCTL = WDTPW+WDTHOLD;                   // Stop WDT   FLL_CTL0 |= XCAP14PF;                     // Configure load caps   do   {   IFG1 &= ~OFIFG;                           // Clear OSCFault flag   for (i = 0x47FF; i > 0; i--);             // Time for flag to set   }   while ((IFG1 & OFIFG));                   // OSCFault flag still set?   P6SEL |= BIT5+BIT6;                       // P6.5,6 = USCI_A0 RXD/TXD   UCA0CTL1 |= UCSSEL_2;                     // SMCLK   UCA0BR0 = 0x09;                           // 1MHz 115200   UCA0BR1 = 0x00;                           // 1MHz 115200   UCA0MCTL = 0x02;                          // Modulation   UCA0CTL1 &= ~UCSWRST;                     // **Initialize USCI state machine**   IE2 |= UCA0RXIE;                          // Enable USCI_A0 RX interrupt   __bis_SR_register(LPM3_bits + GIE);       // Enter LPM3, interrupts enabled } // Echo back RXed character, confirm TX buffer is ready first #pragma vector=USCIAB0RX_VECTOR __interrupt void USCI0RX_ISR(void) {   while (!(IFG2&UCA0TXIFG));                // USCI_A0 TX buffer ready?   UCA0TXBUF = UCA0RXBUF;                    // TX -> RXed character }复制代码   详情 回复 发表于 2016-9-15 02:07
 
点赞 关注

回复
举报

118

帖子

0

TA的资源

一粒金砂(高级)

沙发
 
时钟为ACLK时

点评

什么意思?ACLK可以通信  详情 回复 发表于 2016-6-24 16:41
 
 

回复

39

帖子

0

TA的资源

一粒金砂(中级)

板凳
 

什么意思?ACLK可以通信
 
 
 

回复

118

帖子

0

TA的资源

一粒金砂(高级)

4
 
串口在ACLK时钟下 LPM3可以工作
 
 
 

回复

277

帖子

0

TA的资源

纯净的硅(中级)

5
 
你研究研究下面的官方例程吧,注意时钟设置:

  1. //******************************************************************************
  2. //   MSP430x41x2 Demo - USCI_A0, 115200 UART Echo ISR, DCO SMCLK, LPM3
  3. //
  4. //   Description: Echo a received character, RX ISR used. Normal mode is LPM3.
  5. //   Automatic clock activation for SMCLK through the USCI is demonstrated.
  6. //   USCI_A0 RX interrupt triggers TX Echo.
  7. //   Baud rate divider with 1048576hz = 1048576/115200 = ~9.1 (009h|01h)
  8. //   ACLK = LFXT1 = 32768Hz, MCLK = SMCLK = default DCO = 32 x ACLK = 1048576Hz
  9. //   //* An external watch crystal between XIN & XOUT is required for ACLK *//       
  10. //
  11. //               MSP430x41x2
  12. //             -----------------
  13. //         /|\|              XIN|-
  14. //          | |                 | 32kHz
  15. //          --|RST          XOUT|-
  16. //            |                 |
  17. //            |     P6.6/UCA0TXD|------------>
  18. //            |                 | 115200 - 8N1
  19. //            |     P6.5/UCA0RXD|<------------
  20. //
  21. //
  22. //  P. Thanigai
  23. //  Texas Instruments Inc.
  24. //  January 2009
  25. //  Built with CCE Version: 3.1 and IAR Embedded Workbench Version: 4.11
  26. //******************************************************************************
  27. #include  <msp430x41x2.h>

  28. void main(void)
  29. {
  30. volatile unsigned int i;

  31.   WDTCTL = WDTPW+WDTHOLD;                   // Stop WDT
  32.   FLL_CTL0 |= XCAP14PF;                     // Configure load caps

  33.   do
  34.   {
  35.   IFG1 &= ~OFIFG;                           // Clear OSCFault flag
  36.   for (i = 0x47FF; i > 0; i--);             // Time for flag to set
  37.   }
  38.   while ((IFG1 & OFIFG));                   // OSCFault flag still set?

  39.   P6SEL |= BIT5+BIT6;                       // P6.5,6 = USCI_A0 RXD/TXD
  40.   UCA0CTL1 |= UCSSEL_2;                     // SMCLK
  41.   UCA0BR0 = 0x09;                           // 1MHz 115200
  42.   UCA0BR1 = 0x00;                           // 1MHz 115200
  43.   UCA0MCTL = 0x02;                          // Modulation
  44.   UCA0CTL1 &= ~UCSWRST;                     // **Initialize USCI state machine**
  45.   IE2 |= UCA0RXIE;                          // Enable USCI_A0 RX interrupt

  46.   __bis_SR_register(LPM3_bits + GIE);       // Enter LPM3, interrupts enabled
  47. }

  48. // Echo back RXed character, confirm TX buffer is ready first
  49. #pragma vector=USCIAB0RX_VECTOR
  50. __interrupt void USCI0RX_ISR(void)
  51. {
  52.   while (!(IFG2&UCA0TXIFG));                // USCI_A0 TX buffer ready?
  53.   UCA0TXBUF = UCA0RXBUF;                    // TX -> RXed character
  54. }
复制代码

点评

已解决 根据收据手册查询得知在TIMERA模拟UART时,低功耗模式下时钟不能自动激活  详情 回复 发表于 2016-9-18 17:36
 
个人签名我爱大清国我怕它完了可谁爱我啊
 
 

回复

39

帖子

0

TA的资源

一粒金砂(中级)

6
 
wojiaomt 发表于 2016-9-15 02:07
你研究研究下面的官方例程吧,注意时钟设置:

已解决  
根据数据手册查询得知在TIMERA模拟UART时,低功耗模式下时钟不能自动激活
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表