【东软载波ESF0654 PDS开发板活动】测试RT-Thread 的kprintf
创建线程任务1,实现对LED的翻转操作,其中还加入了rt_kprintf打印功能,main.c的具体代码如下:#include "board.h"#include "rtthread.h"
struct rt_thread led0_thread;
rt_uint8_t rt_led0_thread_stack;
void task1(void *parameter);
int main()
{
rt_kprintf("The Project is ES32F0654 RT-Thread Demo.........\r\n");
rt_thread_init(&led0_thread,"led0",
task1,RT_NULL,&rt_led0_thread_stack,
sizeof(rt_led0_thread_stack),3,20);
rt_thread_startup(&led0_thread);
}
void task1(void *parameter)
{
while(1)
{
LED1_TOGGLE;
LED2_TOGGLE;
rt_thread_delay(500);
rt_kprintf("LED0_Thread running.........\r\n");
}
}
在Board.c中需要对串口USART0进行初始化操作。
添加重映串口控制台到rt_kprintf,具体代码如下:void rt_hw_console_output(const char *str)
{
rt_enter_critical();
while(*str!= '\0')
{
if(*str == '\n')
{
UsartSendByte(USART0, '\r');
}
UsartSendByte(USART0, *str++);
}
rt_exit_critical();
}
烧写代码测试:串口打印出线程的信息,同时LED在循环闪烁。RT-Thread基于ES32F0654Demo基本完成!
感觉可以把IO驱动适配一下,代码可以发布到gitee等平台。
页:
[1]