新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 智能硬件 > RISC-V單片機(jī)快速入門03-基于RT_Thread Nano添加控制臺(tái)

RISC-V單片機(jī)快速入門03-基于RT_Thread Nano添加控制臺(tái)

作者:一葉孤沙 時(shí)間:2020-06-18 來源:知乎 收藏

前言:

本文引用地址:http://m.butianyuan.cn/article/202006/414405.htm

上一節(jié),我們完成了GD32VF103在RT_Thread Nano上的移植,本節(jié)我們?yōu)槠湓黾涌刂婆_(tái)輸出功能,以及通過FinSH組件和用戶交互功能。

一、基礎(chǔ)知識(shí)

1.FinS H簡(jiǎn)介

RT-Thread FinSH 是 RT-Thread 的命令行組件(shell),提供一套供用戶在命令行調(diào)用的操作接口,主要用于調(diào)試或查看系統(tǒng)信息。它可以使用串口 / 以太網(wǎng) / USB 等與 PC 機(jī)進(jìn)行通信,使用 FinSH 組件基本命令的效果圖如下所示:

二、添加步驟

1.導(dǎo)入工程

將上一節(jié)內(nèi)容進(jìn)行復(fù)制,修改.project中工程名字為lesson3

重新import進(jìn)來新的工程

2.控制臺(tái)輸出

適配號(hào)控制臺(tái)輸出,就可以使用RT_Thread中rt_kprintf()函數(shù)進(jìn)行串口信息的打印,方便調(diào)試Bug、獲取系統(tǒng)當(dāng)前運(yùn)行狀態(tài)。

(1) 串口初始化

在gd32vf102c_start.c中定義調(diào)試串口初始化函數(shù)void uart_debug_init(void),同時(shí)在gd32vf103c_start.h中聲明。

然后再board.c中rt_hw_board_init()函數(shù)中調(diào)用uart_debug_init()。

(2) 實(shí)現(xiàn) rt_hw_console_output

在gd32vf102c_start.c文件中,實(shí)現(xiàn)rt_hw_console_output如下:

void rt_hw_console_output(const char str)
{
    rt_enter_critical();
    while(str != '