地奇星开发板提供了3路串口资源,其中串口9所使用的引脚为P109和P110。
为此需要在RASC中进行引脚的配置,并生成相应的KEIL工程,其步骤为:
1)将串口对应的引脚设置为UART9,见图1所示。

图1 启用UART9
2)在栈中,添加UART9并对其属性加以设置,见图2所示。

图2 参数设置
此外,为使用串口能起到控制LED的功效,还需要将LED所对应的引脚P402设置为输出模式,见图3所示。

图3 配置LED引脚
在完成以上配置后,通过生成功能来创建一个KEIL工程框架。
在KEIL编程环境下,在添加串口通讯函数情况下,其实现串口来控制LED的主程序为:
void hal_entry(void)
{
err = R_SCI_UART_Open(&g_uart9_ctrl, &g_uart9_cfg);
assert(FSP_SUCCESS == err);
err = R_SCI_UART_Read(&g_uart9_ctrl, uart_rx_buffer, 3);
assert(FSP_SUCCESS == err);
while(1)
{
if(uart_receive_complete_flag)
{
uart_receive_complete_flag = false;
if(uart_rx_buffer[0] == 0x55 && uart_rx_buffer[1] == 0xAA)
{
if(uart_rx_buffer[2] == 0x10)
{
R_IOPORT_PinWrite(&g_ioport_ctrl, BSP_IO_PORT_04_PIN_02, BSP_IO_LEVEL_HIGH);
}
if(uart_rx_buffer[2] == 0x11)
{
R_IOPORT_PinWrite(&g_ioport_ctrl, BSP_IO_PORT_04_PIN_02, BSP_IO_LEVEL_LOW);
}
}
err = R_SCI_UART_Read(&g_uart9_ctrl, uart_rx_buffer, 3);
assert(FSP_SUCCESS == err);
}
R_BSP_SoftwareDelay (100, BSP_DELAY_UNITS_MILLISECONDS);
}
}
在完成程序的编译及下载后,其测试的连接状态如图4所示,串口控制的形式如图5所示,即发送指令“55 AA 10”可点亮LED;发送指令“55 AA 11”,则熄灭LED。

图4 测试环境

图5 串口控制
|