发新帖本帖赏金 100.00元(功能说明)我要提问
返回列表
打印
[方案相关]

HC32F072之nr_micro_shell移植+源码

[复制链接]
楼主: caizhiwei
手机看帖
扫描二维码
随时随地手机跟帖
41
可以经由过程uart,毗连到单片机装备,实现对于装备的长途调试以及节制。

使用特权

评论回复
42
wjc3k| | 2023-8-9 07:06 | 只看该作者
学习,学习,学习。

使用特权

评论回复
43
yangxiaor520| | 2023-8-9 08:09 | 只看该作者
和littleshell相比,哪个更好用。

使用特权

评论回复
44
caizhiwei|  楼主 | 2023-8-9 15:36 | 只看该作者
yangxiaor520 发表于 2023-8-9 08:09
和littleshell相比,哪个更好用。

这种更简单一点更好用,自定义指令都是相通的

使用特权

评论回复
45
caizhiwei|  楼主 | 2023-8-9 15:38 | 只看该作者
分享一下我自己自定义的shell 指令:
/*
argc是参数的数目
argv存储每个参数的起始地址和内容
*/
void shell_reboot_cmd(char argc, char *argv)
{
    if (0 == strcmp("reboot", &argv[argv[0]]))
    {
        shell_printf("MCU Reboot now!!\r\n");
        MCU_SW_reset();
    }
}


/**
* @brief iap command
*/
void shell_update_cmd(char argc, char *argv)
{
        if (0 == strcmp("update", &argv[argv[0]]))
    {
        shell_printf("MCU Ready to OTA!!\r\n");
                UsrCMD.lte_update_cmd = true;
    }
}


void shell_erase_cmd(char argc, char *argv)
{
        if (0 == strcmp("erase", &argv[argv[0]]))
    {
                if (argc > 1)
                {
                        if (0 == strcmp("disk0", &argv[argv[1]]))
                        {
                                shell_printf("Erase (Inner Flash) Fatfs...\r\n");
                                //f_mount(NULL, "0:", 0);
                                BSP_fmc_erase_bank1();  // whole bank1       
                        }
                        if (0 == strcmp("disk1", &argv[argv[1]]))
                        {
                                shell_printf("Erase (SPI Flash) Fatfs...\r\n");
                                //f_mount(NULL, "1:", 0);
                                spi_flash_bulk_erase(); // whole chip
                        }
                }       
    }
}

void shell_list_files_cmd(char argc, char *argv)
{
        if (0 == strcmp("list", &argv[argv[0]]))
    {
                shell_printf(">List all files in disk1...\r\n");
                UsrCMD.list_file = true;                  
    }
}


void shell_cat_file_cmd(char argc, char *argv)
{
        if (0 == strcmp("cat", &argv[argv[0]]))
    {       
                if (argc > 1)
                {
                        strcpy(UsrCMD.file_name, &argv[argv[1]]);
                        shell_printf(">File : %s\r\n",UsrCMD.file_name);
                        UsrCMD.cat_file = true;
                }
        }
}

void shell_date_cmd(char argc, char *argv)
{
        if (0 == strcmp("date", &argv[argv[0]]))
    {
                EasyTime_Get_LocalTime_to_console(MyTime.TimeZone);       
    }
}


使用特权

评论回复
46
caizhiwei|  楼主 | 2023-8-9 15:39 | 只看该作者
写完了,记得回调函数的注册处理哦~
#ifdef NR_SHELL_USING_EXPORT_CMD
NR_SHELL_CMD_EXPORT(ls, shell_ls_cmd);
NR_SHELL_CMD_EXPORT(test, shell_test_cmd);
#else
const static_cmd_st static_cmd[] =
        {
                {"ls", shell_ls_cmd},
                {"update", shell_update_cmd},
        {"reboot", shell_reboot_cmd},
        {"print", shell_print_cmd},
        {"erase", shell_erase_cmd},
                {"list", shell_list_files_cmd},
                {"cat", shell_cat_file_cmd},
                {"date", shell_date_cmd},
                {"\0", NULL}};
#endif


使用特权

评论回复
47
infobull| | 2023-8-21 12:13 | 只看该作者
支持楼主,顶一个

使用特权

评论回复
48
spark周| | 2023-8-22 21:57 | 只看该作者
看到这个100进来的

使用特权

评论回复
49
诺曼子| | 2023-8-30 21:08 | 只看该作者
大佬厉害

使用特权

评论回复
50
Pretext| | 2023-9-11 10:48 | 只看该作者
体验Linux下的微控制器,shell命令行

使用特权

评论回复
51
鹿鼎计| | 2023-9-11 12:06 | 只看该作者
如果你想查看这篇文章的隐藏内容,请回复

使用特权

评论回复
52
love2008| | 2023-9-19 20:48 | 只看该作者
感觉还是没有RTT好

使用特权

评论回复
53
Joyje| | 2023-10-5 15:43 | 只看该作者
感谢分享!!!

使用特权

评论回复
54
digit0| | 2023-10-7 11:39 | 只看该作者
我一直在寻找shell相关的工具,但没有找到一个合适的

使用特权

评论回复
55
ehua| | 2023-10-8 00:07 | 只看该作者
如果您要查看本帖隐藏内容请回复

使用特权

评论回复
56
LLGTR| | 2023-10-8 15:34 | 只看该作者
作为一个轻量级的东西,nr_micro_shell的代码量很少,运行速率较快

使用特权

评论回复
57
芯路例程| | 2023-10-11 12:43 | 只看该作者
支撑号令补全以及历史记录等功效,便利用户快速输入指令。

使用特权

评论回复
58
V853| | 2023-11-2 18:41 | 只看该作者
非常适合在嵌入式单片机应用中使用

使用特权

评论回复
59
sun2005| | 2023-11-3 08:44 | 只看该作者
好东西!谢谢分享!

使用特权

评论回复
60
软核硬核| | 2023-11-3 21:03 | 只看该作者
支撑一下,试过不少开源shell。

使用特权

评论回复
发新帖 本帖赏金 100.00元(功能说明)我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则