一路向北lm 发表于 2019-12-20 09:31

【东软载波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");       
        }
}


一路向北lm 发表于 2019-12-20 09:31

在Board.c中需要对串口USART0进行初始化操作。

一路向北lm 发表于 2019-12-20 09:32

添加重映串口控制台到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();
}


一路向北lm 发表于 2019-12-20 09:32

烧写代码测试:串口打印出线程的信息,同时LED在循环闪烁。RT-Thread基于ES32F0654Demo基本完成!

aozima 发表于 2019-12-20 10:03

感觉可以把IO驱动适配一下,代码可以发布到gitee等平台。
页: [1]
查看完整版本: 【东软载波ESF0654 PDS开发板活动】测试RT-Thread 的kprintf