作者:少年阿炳
一工程配置
1.1 打开FSP Smart Configurator,新建一个项目。
1.2 串口配置:
如上图所示:
1.2.1 选择Stack->new Stack->Connectivity->Uart(r_sci_uart)
1.2.2 再在Pin->Peripherals->Connectivity:SCI->SCI9,
1.2.3 选择对应的TXD9和RXD9的IO口。
因为我想要用开发板自带的TYPEC口上的串口,查看电路图后确定IO口。因为SCI9这个串口新建工程后,被定义为烧录口,所以按照我上面三步配置后,会发现TXD9和RXD9报错,把工程自动配置的取消即可。或者你可以选择别的串口。都是一样的。 1.2.4如下图所示,需要更改Channel为9,SCI的编号和Channel编号是一一对应的关系。如果你选择的是SCI0,那么必须更改Channel为0。这点非常重要。
1.2.5 设置串口的回调函数这个回调函数(函数名可以自定义)相当于stm32的USARTx_IRQHandler
自此,串口配置就完成了。 之后配置好LED的IO口。 用keil5打开工程,配置串口中断回调函数
- void Uart9_Callback (uart_callback_args_t * p_args)
- {
- switch (p_args->event)
- {
- case UART_EVENT_RX_CHAR:
- {
- //R_SCI_UART_Write(&g_uart9_ctrl, (uint8_t *)&(p_args->data), 1);
- switch (p_args->data)
- {
- case '1':
- LED1_ON;
- break;
- case '2':
- LED1_OFF;
- break;
- case '3':
- LED2_ON;
- break;
- case '4':
- LED2_OFF;
- break;
- case '5':
- LED3_ON;
- break;
- case '6':
- LED3_OFF;
- break;
- default:
- break;
- }
-
- break;
- }
- default:
- break;
- }
- }
复制代码- void hal_entry(void)
- {
- /* TODO: add your own code here */
-
- UART0_Init();
-
- while(1)
- {
- }
- #if BSP_TZ_SECURE_BUILD
- /* Enter non-secure code */
- R_BSP_NonSecureEnter();
- #endif
- }
复制代码
以上就是所有配置的过程。之后就可以用串口来控制LED啦 |