//請一定一定一定確保打開了板子的串口開關(往右開)(別問我怎麼知道的!)
- 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;
}
}