在STM32F4上实现简单的SHELL

平台简介

正点原子STM32F4最小系统板,HAL库,CUBEMX

核心要点

空指针可以指向函数并运行

实现过程

1.首先建立一个结构体virtuallist, 保存函数名(函数指针)和对应的提示字符串。这里定义list_item仅用于sizeof()测量一个结构体的大小。
在STM32F4上实现简单的SHELL
2.建立“函数—提示字符”对应表。这里使用结构体数组。函数本体需要在创建对应表前声明,创建对应表后实现
在STM32F4上实现简单的SHELL
3.串口接受的字符,有256种情况。为了方便使用,我们占用一个字符0xfe,用于打印“函数—提示字符”对应表。
在STM32F4上实现简单的SHELL
4.接下来是处理函数,处理函数需要在串口中断里调用,shell_rx_dat是串口中断接收的数据。
在STM32F4上实现简单的SHELL在STM32F4上实现简单的SHELL在STM32F4上实现简单的SHELL
6.效果
在STM32F4上实现简单的SHELL
在STM32F4上实现简单的SHELL

结语

思路就是接收不同数字执行不同函数。这里做的极为简单,传参的功能都没有。听说正点原子的USMART不错,大家可以参考一下,我写的这个很大原因是疫情在家无聊。感觉叙述的有点乱[手动狗头],大家参考一下源码吧。