⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 code.c

📁 MSP430 串口通讯 利用查询实现
💻 C
字号:
#include "msp430x14x.h"
#define uchar unsigned  char 
#define uint  unsigned  int 
void Init(void);
char  Data[6]="MSP430";
void main(void)
{
       uchar i;
       uint j;  
       WDTCTL=WDTPW+WDTHOLD;                           //关闭关门狗
        _BIS_SR(OSCOFF);                                
	BCSCTL1&=~XT2OFF;				//XT2开启 											//启动XT2振荡器,
	BCSCTL1 |= RSEL0+RSEL1+RSEL2;                   // 选择最高不标称频率
	DCOCTL = 0xE0;																	//DCOCLK频率最高,不利用MOD进行调整
	do
	{
		IFG1 &= ~OFIFG;						// Clear OSCFault flag
		for(i=0xFF;i>0;i--);				// Time for flag to set
	}
	while((IFG1 & OFIFG) == OFIFG);			// OSCFault flag still set?
	_NOP();		
	BCSCTL2 |= SELS+DIVS_2;                        //SMCLK  SOURCE  XT2/4=460.8KHz         
  
 
         Init();
         while(1)
        {
         TXBUF1=0XFF;         
          while((UTCTL1&0X01)==0) ;              //等待发送完毕
          for(i=0;i<=6;i++)
          {
           TXBUF1=Data[i];
           while((UTCTL1&0X01)==0) ;              //等待发送完毕      
           }
          for(j=5000;j>0;j--);
          for(j=5000;j>0;j--);
          for(j=5000;j>0;j--);
          
        }
}

void Init(void)
{    
        P3SEL |= BIT6+BIT7;                    
	U1CTL |= SWRST;
	U1TCTL |= SSEL1;		// UCLK = SMCLK = 460.8kHz
	U1BR0 = 0X30;			// 9600  波特率设置
	U1BR1 = 0X00;
	U1MCTL = 0x00;
	U1CTL |= CHAR;					//no Parity + 8bit+1 STOP
	U1CTL &= ~SWRST;
	U1RCTL = URXEIE;	// Enable receive erroneous characters and clear the Error flag
	ME2 |= URXE1+UTXE1;									// Enable RX and TX
	IE2 |= URXIE1+UTXIE1;								// Enable RX Interrupt
	IFG2 &= ~UTXIFG1;
        
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -