CC2530串口通訊

//請一定一定一定確保打開了板子的串口開關(往右開)(別問我怎麼知道的!)

  • serial_port.h
/*CC2530通過串口發送數據到PC端,由PC端的串口助手打印顯示出來*/

//main函數,先調用初始化 USART0Init函數,然後調用USART0_SendString函數就好了。

#include <ioCC2530.h>
#include <string.h>
#define uint unsigned int
#define uchar unsigned char

void USART0Init(void)
{
  CLKCONCMD &= ~0x40; //選擇32MHz晶振爲系統時鐘源
  while(CLKCONSTA & 0x40); //等待晶振穩定爲32MHz
  CLKCONCMD &= ~0x47;//設置系統時鐘爲32MHz
  PERCFG |= 0x00;//設置UART0爲外設位置1
  P0SEL |= 0x0c;//設置P0_2和P0_3作爲串口
  P2DIR &= ~0xc0;//端口0UART0爲第1優先級
  U0CSR |= 0x80; //選擇UART模式
  U0CSR |= 0x40; //使能接收器
  U0GCR |= 11;  
 //設置波特率爲115200
  U0BAUD |= 216;
  UTX0IF = 0; //UART0 TX中斷標誌位初始化爲0

}

//通過串口發送一串字符

void USART0_SendString(char *data,uint length) 

{
  uint i;
  for(i=0;i<length;i++)
  {
    U0DBUF = *data++;
    while(UTX0IF ==0);
    UTX0IF = 0;
  }
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章