文档首页/ LiteOS/ 维测指南/ 魔法键使用方法
更新时间:2021-07-08 GMT+08:00
分享

魔法键使用方法

使用场景

系统未输出挂死相关信息,但是无响应时,可以通过魔法键查看中断是否有响应。在中断有响应的情况下,可以通过魔法键查看task信息中 的CPUP(CPU占用率),找到是哪个任务长时间占用CPU导致系统其他任务无响应(一般为比较高优先级任务一直抢占CPU,导致低优先级任务无响应)。

功能说明

在uart中断和usb转虚拟串口中断中,嵌入魔法键检查功能,对特殊按键进行识别,输出相关信息。

使用方法

  1. 通过make menuconfig开启魔法键功能。

    • 该功能依赖于Shell,所以需要先使能Shell。
      Debug ---> Enable a Debug Version ---> Enable Shell
    • 该功能需要配置LOSCFG_ENABLE_MAGICKEY=y,若关闭该选项,则魔法键失效,开启该宏开关的菜单项为:
      Debug ---> Enable MAGIC KEY
      可以在menuconfig中光标移动到该选项上,输入“?”,查看帮助信息:
      Answer Y to enable LiteOS Magic key.
        ctrl + r : Magic key check switch;
        ctrl + z : Show all magic op key;
        ctrl + t : Show task information;
        ctrl + p : System panic;
        ctrl + e : Check system memory pool.

  2. 输入“ctrl + r ” 键,打开或者关闭魔法键检测功能。

    在连接uart或者usb转虚拟串口的情况下,输入“ctrl + r ” 键,打开魔法键检测功能,输出 “Magic key on”;再输入一次后,则关闭魔法键检测功能,输出“Magic key off”。魔法键功能如下:

    • ctrl + z:帮助键,输出相关魔法键简单介绍。
    • ctrl + t:输出任务相关信息。
    • ctrl + p:系统主动进入panic,输出panic相关信息后,系统会挂住。
    • ctrl + e:系统进行简单的内存池完整性检查,检查发现错误则输出相关错误信息,检查正常则输出“system memcheck over, all passed!”。

注意事项

魔法键检测功能打开情况下,如果需要通过uart或者usb转虚拟串口输入特殊字符需避免与魔法键值重复,否则魔法键会被误触发,而原有设计功能可能出现错误。

相关文档