2232|4

67

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

MSP430串口通信不成功 [复制链接]

我用的是F122单片机,下面是我的程序,串口调试助手一直收不到数据,电路用的max3232,用示波器测它的输出大概波形是有的,但是全是毛刺,好像噪声很大的样子。不知道是不是这个问题导致通信不成功。
#include  
void USART_Send(unsigned int pData);
void main(void)
{
  WDTCTL = WDTPW + WDTHOLD;                 // Stop WDT
  unsigned int i;
  P2DIR |= BIT0; //P1.4 IO口设置为输出.
  P2SEL |= BIT0; //P1.4 IO口设置为ACLK.
  P1DIR |= BIT4; //P1.4 IO口设置为输出.
  P1SEL |= BIT4; //P1.4 IO口设置为SMCLK.
  BCSCTL1 &= ~XT2OFF; //开高速晶振
  BCSCTL1 |= XTS; // ACLK = LFXT1 = HF模式
do
{
IFG1 &= ~OFIFG; // 清除振荡器失效标志
for(i = 0Xff;i > 0;i--); // 稳定时间
}
while((IFG1 & OFIFG) != 0); // 如果振荡器失效标志存在
BCSCTL2 |= SELM_2; //?MCLK主时钟选XT2为时钟源.XT2输入不分频.
BCSCTL2 |= SELS; //SMCLK选XT2为时钟源.(参考)


  P3SEL |= 0x30;                            // P3.6,7 = USART1 TXD/RXD
  ME2 |= UTXE0 + URXE0;                     // Enable USART1 TXD/RXD
  UCTL0 |= CHAR;                            // 8-bit character
  UTCTL0 |= SSEL1;                          // UCLK = SMCLK

  U0BR0 = 0x41;                             // 8M/9600 -
  U0BR1 = 0x03;                             //
  UMCTL0 = 0x12;                            // Modulation

  UCTL0 &= ~SWRST;                          // Initialize USART state machine
  IE2 |= URXIE0;                            // Enable USART1 RX interrupt
  _EINT(); // 不要忘了开中断
  while(1)
  {
  USART_Send(0xaa);
  }
  //_BIS_SR(LPM3_bits + GIE);                 // Enter LPM3 w/ interrupt
}

void USART_Send(unsigned int pData)
{

TXBUF0 = pData; // 装入发送寄存器
while ((IFG2 & UTXIFG0) == 0); // 判断:发送是否完成
IFG2 &= ~(UTXIFG0);
}

#pragma vector=USART0RX_VECTOR
__interrupt void usart1_rx (void)
{
  while (!(IFG2 & UTXIFG0));                // USART1 TX buffer ready?
  TXBUF0 = RXBUF0;                          // RXBUF1 to TXBUF1
}

最新回复

谢谢分享问题  详情 回复 发表于 2016-5-11 10:53
 
点赞 关注

回复
举报

6066

帖子

92

TA的资源

裸片初长成(初级)

推荐
 
tanzhiying 发表于 2015-5-19 16:39
问题已经解决,是串口线没接对的问题。

谢谢分享问题所在
 
 

回复

67

帖子

0

TA的资源

一粒金砂(中级)

沙发
 
毛刺是电容没焊好,现在没有毛刺了,但是串口调试助手还是收不到东西。
 
 
 

回复

67

帖子

0

TA的资源

一粒金砂(中级)

板凳
 
问题已经解决,是串口线没接对的问题。

点评

谢谢分享问题所在  详情 回复 发表于 2015-5-19 16:54
 
 
 

回复

39

帖子

0

TA的资源

一粒金砂(中级)

5
 
谢谢分享问题
 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

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

 
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
快速回复 返回顶部 返回列表