RealEvo-IDE 串口调试 app 补充说明

RealEvo-IDE 串口调试 app 补充说明

需求

对于不支持以太网接口的设备,可以使用串口进行手动启动调试基本流程参见《RealEvo-IDE使用手册》中 5.3 小节的内容。

为了用户能正常使用该功能,本文档将实际操作中的细节整理如下。


硬件设备

本次演示使用的硬件设备是翼辉信息的T3工业控制器IGC1500,串口设备信息如下:

1 个 RS232 Debug 接口:

设备名/dev/ttyS0,对应于接线端子 RS232-2,端口信号为 RX2,TX2,GND。

2 个 RS232 用户接口:

设备名/dev/ttyS5,对应于面板 DB9 接口

设备名/dev/ttyS7,对应于接线端子 RS232-1,端口信号为 RX1,TX1,GND。


本文档演示使用到 RS232 Debug 接口/dev/ttyS0)和 RS232 用户接口/dev/ttyS7)。

操作步骤

1、必须先用调试串口登陆到 SylixOS  shell 终端上,然后切换到需要调试的App文件夹中,使用 /dev/ttyS* 参数启动 debug 命令



1 通过串口启动 debug

1所示,使用设备的 /dev/ttyS0 串口与PC的串口COM2连接,登陆到串口 shell 终端和查看调试信息

然后使用设备的 /dev/ttyS7 串口与PC的串口COM1连接,用于调试程序

2、打开DebuggerConnection”属性页,在“Type”下拉框选择“Serial”,在“Device”编辑框中输入 PC 端与设备相连的调试串口(假设为COM1)名称,在Speed”编辑框设置串口波特率,SylixOS 调试串口波特率为 115200,如 2所示


2 调试串口设置

点击 2 中右下角的 Debug 按钮,进行调试。

注:如果目标设备没有第二个可以用于调试的串口,可以通过命令debug terminal ./app_demo”将当前串口用于调试串口,但是需要注意的是调试启动后需要将串口关闭,否则 RealEvo-IDE 将会出现连接失败的错误。

如果连接正常,RealEvo-IDE中会出现如下 3提示,


3 RealEvo-IDE 连接提示

点击Yes”即可进入调试流程。


4 进入Debug 模式

如上 4所示,进入Debug模式后,即可进行App调试。

示例1

设备的串口shell 端口跟Debug调试口不同,例如以上演示的例子:

使用设备的 /dev/ttyS0 串口与PC的串口COM2连接,登陆到串口 shell 终端和查看调试信息

使用设备的 /dev/ttyS7 串口与PC的串口COM1连接,用于调试程序

使用串口调试App的方法,按照“操作步骤”小结所示步骤即可,运行效果如下 5所示:


5 串口调试效果1

如上 5所示,左边为串口 shell 终端,启动 Debug 命令后,可以显示程序的调试信息(printf 函数输出)

示例2

设备的串口shell 端口跟Debug调试口共用一个设备串口,目标设备没有第二个可以用于调试的串口:

使用设备的 /dev/ttyS0 串口与PC的串口COM2连接,登陆到串口 shell 终端,同时也用于调试程序

App调试的PC串口参数设置如下 6所示,PCCOM2既可用作跟设备shell 终端交互,也可用作串口调试设备App


6 PC调试串口设置


7 使用shell串口作为debug端口启动调试

如上 7所示,使用设备的 shell 串口作为参数,启动 debug 调试,出现如下提示信息:

[GDB]Serial device: terminal 115200,n,8,1

则说明调试启动,这时需要关闭该串口的shell终端界面,释放PC串口COM2资源,然后在 6 右下角的 Debug 按钮,进行调试,效果如下 8所示:

8 串口调试效果2

这时,PC串口COM2作为Debug端口,不能显示程序的调试信息(printf 函数输出),只能通过RealEvo-IDE的调试界面查看程序执行状态和变量参数

 

视频演示

以上示例1和示例2,可以观看“RealEvo-IDE使用串口调试App演示.mp4”视频资料,视频大小66MB不能正常上传为附件,如有需要联系作者

参考资料:

[1] RealEvo-IDE使用手册.pdf

[2] T3工业控制器开发指导手册.pdf

 

版本信息

版本

日期

原因

编制

V1.00

2021/12/30

创建文档

雷一民、周东

 

zhoudong@acoinfo.com

20211230


    • Related Articles

    • RealEvo-IDE 使用串口调试 App

      需求 对于不支持以太网接口的设备,可以使用串口进行手动启动调试,基本流程参见《RealEvo-IDE使用手册》中 5.3 小节的内容。 为了用户能正常使用该功能,本文档将实际操作中的细节整理如下。   硬件设备 本次演示使用的硬件设备是翼辉信息的T3工业控制器IGC1500,串口设备信息如下: 1 个 RS232 Debug 接口: 设备名/dev/ttyS0,对应于接线端子 RS232-2,端口信号为 RX2,TX2,GND。 2 个 RS232 用户接口: ...
    • 使用 GDB 命令行调试 SylixOS 应用程序

      一、简介 SylixOS 在内核中内置了一个标准的 GDB Server。使用 GDB 调试,只有两个步骤: 在 SylixOS 上启动 GDB Server; 使用交叉编译工具链中的 GDB 应用程序连接到 SylixOS 上的 GDB Server。 两个步骤完成后,便可以使用 GDB 进行调试了 注:SylixOS 的 GDB 不支持 Watch 变量的功能,因为 Stub 不支持数据断点。 二、前提条件 1. 断开硬件调试工具 GDB 依靠 CPU ...
    • 基于 ACOEGC_T3(PF) 搭建 JLink 调试环境

            本文主要介绍全志 T3 JLink 调试环境搭建,基于 ACOEGC_T3(PF) 硬件板卡,系统架构使用裸核 * 3 + SylixOS 的 AMP 模式。调试环境可通过 RealEvo-IDE 和 JLink V9 同时对 T3 的 4 个核进行调试。 一、搭建调试环境 1、安装 JLink 软件,这里安装的是 V645a; 2、修改安装目录下的 JLinkDevices.xml 文件,这里的路径为: D:\Program Files ...
    • 汇编中使用串口打印调试方式

      问:如何在汇编中使用串口打印调试方式 BSP 调试中经常会遇到汇编中需要打印相关状态的情况,如下代码基于全志 T3(ARM Cortex A7)平台展示如何在汇编中打印一个字符的串口调试信息。类似的方式经过简单修改也可以移植到其他平台上。(注意:打印串口信息过程中会使用到 R0、R1 两个寄存器,注意相关寄存器的上下文关系) LDR R1, =0x01c2807C ; /* 读取串口状态寄存器 */ 1: LDR R0, [R1] MOV R0, R0, LSR#2 ; /* ...
    • 程序崩溃时该如何调试

      Q:程序崩溃时该如何调试 首先确定编译应用程序所选择的编译工具架构,和实际硬件架构是否一致。 可以使用 Crash Trap 调试, SylixOS 自 v1.9.9 内核版本后开始支持 crashtrap 命令,此命令可在程序崩溃时将进程切换到 STOP 模式,方便用户进入 Attach 调试。 更多扩展知识见: 使用方式详见《RealEvo-IDE 使用手册》第5章 RealEvo-IDE调试,5.8 Crash Trap调试 或者《SylixOS 开发禁(限)用说明》 ...