完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
为什么我用的这个程序,每次运行到while ((IFG2 & UTXIFG1) == 0);就停在了这里?是串口配置的问题吗?
/*使用MSP430F149开发板向和PC机进行串口通信,单片机向PC发送字符串 unsigned char TBuf[8]={1,2,3,4,5,6,7,8}, 使用串口调试助手接收到的字符串为:01 02 03 04 05 06 07 00 F8*/ #include unsigned char TBuff[8]={1,2,3,4,5,6,7,8}; // 发送缓冲区 void USART_Send(unsigned char *pData) { unsigned char j; for(j=0; j<8; j++) { TXBUF1 = pData[j]; // 装入发送寄存器 while ((IFG2 & UTXIFG1) == 0); // 判断:发送是否完成 IFG1 &= ~(UTXIFG1); } } void main(void) { WDTCTL = WDTPW + WDTHOLD; // Stop WDT P3SEL |= 0xC0; // P3.6,7 = USART0 TXD/RXD ME2 |= UTXE1 + URXE1; // Enable USART0 TXD/RXD UCTL1 |= CHAR; // 8-bit character UTCTL1 |= SSEL1; // UCLK = ACLK UBR01 = 0x0D; // 32k/2400 - 13.65 UBR11 = 0x00; // UMCTL1 = 0x6B; // Modulation UCTL1 &= ~SWRST; // Initialize USART state machine IE2 |= URXIE1; // Enable USART0 RX interrupt _EINT(); // interrupt while(1) { USART_Send(TBuff); } } |
|
相关推荐
4个回答
|
|
被自己解决了,原因在于我在仿真的时候选的是软件仿真,板子做出来了应该选择的是硬件仿真,也就是在IAR中选project--->options...--->Debugger--->Driver--->FET Debugger.希望后来人不要重蹈我的覆辙。
|
|
|
|
楼主用的什么编译器?IARorCCS
|
|
|
|
Sogao,原来如此,细心一点即可
|
|
|
|
|
|
|
|
只有小组成员才能发言,加入小组>>
3031个成员聚集在这个小组
加入小组2923 浏览 1 评论
MSP430FR5994 使用库函数 定时器触发AD问题请教
3594 浏览 2 评论
请问怎么把下面51单片机的代码改成msp430 g2 pocket的代码,还有改下时间变成30秒
2341 浏览 1 评论
4800 浏览 1 评论
2573 浏览 1 评论
1325浏览 3评论
MSP430FR5994 使用库函数 定时器触发AD问题请教
3596浏览 2评论
2925浏览 1评论
1508浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-28 06:43 , Processed in 1.338113 second(s), Total 84, Slave 67 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号