IO模拟串口,程序运行有些不稳定,希望高手指点一下

2019-03-24 15:47发布

/***************************************************程序功能:IO口模拟串口  时钟是30K的,波特率9600工作起来有时候稳定,有时候全是乱码,麻烦各位高手了。---------------------------------------------------测试说明:在串口助手中看到输出的数组。***************************************************/#include  <msp430x14x.h>//#include  "BoardConfig.h"int byte;int TX_Data;/****************主函数****************/
void senddata(unsigned char);void send(unsigned char*);void delay(void);void main(void){   WDTCTL = WDTPW + WDTHOLD;  
// // 开启XT2振荡器 // BCSCTL1 &= ~XT2OFF; unsigned int i;    do { IFG1 &=~OFIFG; for(i=0xff;i>0;i--); } while(IFG1 & OFIFG == OFIFG); // // MCLK,SMCLK选择XT2 // BCSCTL2 |= SELM_2+SELS;
         int j=2000; while(j--);
      _EINT();                        //使能全局中断      for(int i=0;i<10;i++)    send("abcdef ");      LPM3;                           //CPU进入LPM3模式}
void delay(void){  for(int i=0;i<20;i++)  {  }    }
void send(unsigned char *ptr){  unsigned char nChar=0;  while(ptr[nChar]!='')  {     byte=9;    senddata(ptr[nChar++]);    delay();  }  byte=9;}

void senddata(unsigned char send){    TX_Data=0x200;   int TX_temp=0x00;   TX_temp|=send;   TX_temp<<=1;   TX_Data|=TX_temp;   TX_temp=TX_Data;    WDTCTL = WDTPW + WDTHOLD;       //关闭看门狗      P3DIR = 0x10;    P3OUT = 0x10; //   BoardConfig(0xf0);              //关闭数码管和电平转换,打开流水灯       TBCCTL0 = CCIE;                   //使能CCR0中断   TBCCR0 = 2;
//    TBCCR0 = 4094;                    //设定周期0.5S                   TBCTL = TBSSEL_1 + MC_1 + TBCLR; //定时器A的时钟源选择ACLK,增计数模式                  //设置P2口方向为输出    
}
/*******************************************函数名称:Timer_B 功    能:定时器B的中断服务函数参    数:无返回值  :无********************************************/#pragma vector = TIMERB0_VECTOR__interrupt void Timer_B (void){    int con=TX_Data&1;             for(int i=0;i<=4;i++);  if(con==0)      P3OUT &= 0xEF;  else      P3OUT |= 0x10;  TX_Data>>=1;
  if(--byte==0)     TBCTL &=~MC_3;}
不好意思了 此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
1条回答
jingfeng90
1楼-- · 2019-03-24 23:08
 精彩回答 2  元偷偷看……

一周热门 更多>

相关问题

    相关文章