源码路径
- https://gitee.com/nrush/nr_micro_shell.git
git clone https://gitee.com/nrush/nr_micro_shell.git
移植
1、源码文件拷贝
- 只需要 inc 以及 src 两个文件夹内容
2、将两个文件夹中的c、h文件添加到工程中
3、修改配置文件 nr_micro_shell_config.h
- 可见源码中readme.md说明
- 因为裸机下移植,需要定义
#define NR_MICRO_SHELL_SIMULATOR
- 开启
#define NR_SHELL_USING_EXPORT_CMD
可更好的使用该shell
4、使用(main.c)中调用
- 初始化必要的串口驱动(可见 【国民技术N32项目移植】N32L43XRL-STB 串口调试 使用printf打印日志)
- 定义自己需要的调试命令,如下:我定义了两个命令用来打开 led和关闭led的命令(命令为 on和off)
void led_on_command_funtion(char argc, char *argv) { log_func(); GPIO_SetBits(GPIOB, GPIO_PIN_4); } void led_off_command_funtion(char argc, char *argv) { log_func(); GPIO_ResetBits(GPIOB, GPIO_PIN_4); } NR_SHELL_CMD_EXPORT(on, led_on_command_funtion); NR_SHELL_CMD_EXPORT(off, led_off_command_funtion); NR_SHELL_CMD_EXPORT(off, led_off_command_funtion);
NR_SHELL_CMD_EXPORT(off, led_off_command_funtion);
- 主函数中调用如下
int main(void) { log_init(); //uart驱动初始化 shell_init();//shell初始化 unsigned int i = 0; while (1) { if (USART_GetFlagStatus(USART1, USART_FLAG_RXDNE) != RESET) { char ch = USART_ReceiveData(USART1);//读取一个字节 // log_debug("recv %x", ch); shell(ch);//shell执行 } } } }
}
使用
-
编译下载 后,通过串口工具我查看到初始化打印
-
开源代码,初始化打印,以及提示符可以自己修改
-
配合上 shell工具使用更 happy
-
支持tab补全,查看命令等
审核编辑:汤梓红
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
移植
+关注
关注
1文章
376浏览量
28104 -
N32
+关注
关注
0文章
18浏览量
7188 -
串口调试
+关注
关注
2文章
267浏览量
24680 -
国民技术
+关注
关注
2文章
307浏览量
20353
发布评论请先 登录
相关推荐
nr_micro_shell的优点是什么
nr_micro_shell — 在单片机上体验linux shell命令行,自动补全,历史命令,自定义命令单片机在进行实际调试和维护时,常常需要与单片机进行交互,获取或设置某些参数,以了解系统工作
发表于 01-12 06:58
N32L43XRL-STB开发板硬件使用指南
N32L43XRL-STB开发板硬件使用指南开发板用于国民技术股份有限公司32位N32L43XRL系列MCU的开发。本文档详细描述了N32L43XR
发表于 11-01 06:48
【国民技术N32项目移植】N32L43XRL-STB项目移植之基于IIC接口的OLED
IIC接口的OLED是平时实验中常用的显示设备,和开发板只需要四根线连接,VCC、GND、SDA、SCL。而且所使用的IIC经常采用软件模拟的方式实现。本次移植就是利用N32L436的两个IO口模拟
发表于 12-23 08:35
【国民技术N32项目移植】easypower 结论
经过简单的移植和调试,比较顺利的完成。本设计比较简单,国民技术的软件库和例程也比较完善。所以还是容易的。只是在原来设计的板子上做移植和验证。
发表于 02-28 23:49
评论