CF5010RBT60开发板,可提供4个通讯串口,见图1所示。

图1 串口电路
其中USART1被用作ISP下载接口,当然它也可以用于常规的串行通讯,其电路如图2所示。

图2 串口电路
而在例程中,所使用的是UART4,在测试时是无法依赖板载的USB转换芯片直接与电脑进行通讯的。
要想利用板载的芯片转换功能,需将UART4改为UART1。
经修改,其主程序的内容为:
void main(void)
{
my_usart1_init();
my_cfPrintf("Start user program...\\r\\n");
while (1);
}
对应的UART1初始化函数为:
void my_usart1_init(void)
{
UART_INIT_T cfg;
cfg.baudrate = 115200;
cfg.mode = 0;
cfg.afio = 0;
cfg.databit = 8;
cfg.stopbit = 0;
cfg.parity = 0;
cfg.interrupt = 0;
cfg.tx_enable = 1;
cfg.rx_enable = 1;
cfg.fpclk = RCC_Get_APB2_Clock();
Usart_Init(USART1,&cfg);
}
实现字符串信息输出的函数为:
uint8_t my_cfPrintf( const char* sbuf)
{
uint8_t ilen = 0,i = 0;
ilen=strlen(sbuf);
while( ilen-- )
{
UART_Send(USART1,sbuf[i++]);
}
return i;
}
经编译,其结果如图3所示。

图3 完成编译
|