打印
[应用相关]

不开中断可以,开了后一直发FF

[复制链接]
516|9
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
feiqi1|  楼主 | 2017-6-12 20:25 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
串口查询发送,不开中断可以,开了后一直发FF
沙发
androidbus| | 2017-6-12 20:26 | 只看该作者
贴程序看下吧,这么说看不出什么原因

使用特权

评论回复
板凳
feiqi1|  楼主 | 2017-6-12 20:41 | 只看该作者
如下:

void Init_Port(void);

void Init_CLK(void);

void Init_UART1(void);

char data[6]="MSP430";

void main()

{

  WDTCTL=WDTPW+WDTHOLD;

  Init_CLK();

  Init_Port();

  Init_UART1();

  unsigned char i;

  _EINT();

  while(1)

  {

    for(i=0;i<6;i++)

    {

      TXBUF1=data[i];

      while((UTCTL1&0x01)==0);

    }

  }

  

  

}

void Init_Port(void)

{

    //将所有的管脚在初始化的时候设置为输入方式

    P3DIR = 0;



    //将所有的管脚设置为一般I/O口

    P3SEL = 0;

    return;

}

void Init_CLK(void)

{

    unsigned int i;

    //将寄存器的内容清零

    //XT2震荡器开启

    //LFTX1工作在低频模式

    //ACLK的分频因子为1

    BCSCTL1 = 0X00;        

                                       

    do

    {

        IFG1 &= ~OFIFG;                       // 清除OSCFault标志

        for (i = 0x20; i > 0; i--);               

    }

    while ((IFG1 & OFIFG) == OFIFG);      // 如果OSCFault =1   

                                       

    BCSCTL2 = 0X00;                        //将寄存器的内容清零

    BCSCTL2 += SELM1;                //MCLK的时钟源为TX2CLK,分频因子为1

    BCSCTL2 += SELS;                //SMCLK的时钟源为TX2CLK,分频因子为1

}

void Init_UART1(void)

{

    //将寄存器的内容清零

    U1CTL = 0X00;        

    //数据位为8bit

    U1CTL += CHAR;                        

   

    //将寄存器的内容清零

    U1TCTL = 0X00;        

    //波特率发生器选择SMCLK

    U1TCTL += SSEL1;                        

   

    //波特率为9600

    UBR0_1 = 0X00;                        

    UBR1_1 = 0X03;

    //调整寄存器

    UMCTL_1 = 0X00;                        



    //使能UART1的TXD和RXD

    ME2 |= UTXE1 + URXE1;

    //使能UART1的RX中断

    IE2 |= URXIE1;        

    //使能UART1的TX中断

    IE2 |= UTXIE1;                        

   

    //设置P3.6为UART1的TXD

    P3SEL |= BIT6;        

    //设置P3.7为UART1的RXD

    P3SEL |= BIT7;                        

   

    //P3.6为输出管脚

    P3DIR |= BIT6;                        

    return;

}

使用特权

评论回复
地板
litengg| | 2017-6-12 20:43 | 只看该作者
是不是受到外部干扰造成的啊

使用特权

评论回复
5
qiangweii| | 2017-6-12 20:48 | 只看该作者
使用示波器测量一下电平电压试试

使用特权

评论回复
6
shashaa| | 2017-6-12 20:50 | 只看该作者
查询发送怎么会发送数据呢?

使用特权

评论回复
7
xia00| | 2017-6-12 20:59 | 只看该作者
串口的波特率可能匹配有问题。。

使用特权

评论回复
8
hfdy01| | 2017-6-12 21:00 | 只看该作者
中断也不会可能产生这样的信号。

使用特权

评论回复
9
CallReceiver| | 2017-6-12 21:10 | 只看该作者
电压是否有波动?电平全是高电平。

使用特权

评论回复
10
boy1990| | 2017-6-12 21:12 | 只看该作者
正常情况下,不会出现电平波动的问题。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

424

主题

1616

帖子

1

粉丝