AG35学习笔记(一):debug串口抓取模组log、debug串口测试AT指令、echo命令通过串口发送16进制数据

一、概述

二、抓取模组log

在之前记录了通过USB,使用移远工具Qwinlog来抓取log(3.3 抓取模组log)。
现在记录下使用debug串口抓取模组log。

2.1 硬件接口

根据模组手册,debug串口如下:
在这里插入图片描述

2.2 用户登录

使用MobaXterm进行串口连接。通过上电后会看到打印的log。敲击回车,会提示输入用户名。依次输入用户名、密码,即可登录设备:
在这里插入图片描述

2.3 相关指令

抓取log方法如下:

1. 在模组debug UART口执行以下命令:
 echo 1 > /sys/module/printk/parameters/perf_mode_console
 echo 1 > /sys/module/msm_show_resume_irq/parameters/debug_mask
 echo 0x2 > /sys/module/ipc_router_core/parameters/debug_mask
2.  然后让模块进入休眠,复现到问题,提供下模组debug 口的log.

模组休眠后,并不会断开连接。可以抓取模组的唤醒过程。

三、测试AT指令

通过debug串口也是可以发送AT指令的。

3.1 查看端口

在这里插入图片描述
结合时间,可以看出是smd8。

3.2 进入模式

使用microcom /dev/smd8指令(microcom用法),进入测试。在刚进入的时候,输入AT等指令,可以回复(无指令回显)。但是过一会就异常了:
在这里插入图片描述
使用ctrl+x退出测试。异常原因和指令没有回显的问题,暂未解决。

四、串口发16进制

通过在MPU端直接发送串口指令给MCU,来模拟APP远程控制。为了不修改MPU程序,在终端使用echo发送数据:0x55 0xAA 0x02 0x40 0x00 0x01 0x81 0x3C 0x01,也就是:

echo -e "\x55\xAA\x02\x40\x00\x01\x81\x3C\x01" > /dev/ttyHS0

在这里插入图片描述

echo使用

  1. 使用>
    在这里插入图片描述
  2. 使用 >>
    在这里插入图片描述
  3. 使用 -n,表示不增加\n
    在这里插入图片描述
  4. 使用 -e,表示使能\的转义功能