视频推荐
由于嵌入式设备资源受限,通常无法在其上安装庞大的IDE调试程序,且许多嵌入式系统并无桌面环境。为了方便调试自开发程序,本文介绍利用VSCode与gdbserver进行嵌入式设备上程序的远程调试方法。
由于系统资源限制,通常在ZMC600E/900E上无法安装庞大的IDE来调试程序,同时ZMC600E/900E中默认不带桌面。我们可以通过VSCode+ssh协议远程到ZMC600E/900E来开发和运行程序,但通常只能在设备上通过gdb命令行程序进行调试。为了更加方便地调试程序,可以通过VSCode+gdbserver程序来实现远程调试的目的。接下来将详细介绍如何在Windows上实现远程调试ZMC600E/900E。
7. OpenSSL
对win10及更新版本的Windows系统,已默认包含在系统软件中。旧版本Windows需要自行安装。
cmake_minimum_required(VERSION 3.10)
project(test)
set(CMAKE_BUILD_TYPE Debug)
add_definitions(-Wall -ggdb -O0 -pipe)
include_directories("../../include")
link_directories("../../lib")
add_executable(test test.c)
target_link_options(test PRIVATE -lpthread -lrt -ldl -lstdc++ -lm)
target_link_libraries(test zecm)
{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "g++",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceFolder}/build/${fileBasenameNoExtension}",
"args": [
"test.xml"
],
"cwd": "${workspaceFolder}",
"stopAtEntry": false,
"externalConsole": false,
"useExtendedRemote": true,
"MIMode": "gdb",
"targetArchitecture": "arm",
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
},
{
"description": "set up remote debug program",
"text": "set remote exec-file ${fileBasenameNoExtension}",
"ignoreFailures": false
},
],
"miDebuggerPath": "D:/aarch64-linux/bin/aarch64-linux-gnu-gdb.exe",
// "miDebuggerPath": "/usr/bin/gdb-multiarch",
"miDebuggerServerAddress": "192.168.1.136:2000"
}
]
}
{
"description": "set up remote debug program",
"text": "set remote exec-file ${fileBasenameNoExtension}",
"ignoreFailures": false
}
# ZMC900E
./gdbserver --multi 192.168.1.136:200
ZMC900E 是ZLG致远电子开发的最新一代EtherCAT主站控制器,其核心采用多核异构的应用处理器,内核包括4+1个64位的Arm®Cortex®-A55核,主频2GHz;3个Cortex-R5F内核,主频800MHz。同时板载4GB LPDDR4、8GB eMMC以及32KB FRAM。
ZMC900E EtherCAT主站控制器为了满足不同的自动化应用需求,集成1路专用EtherCAT口、3路通用以太网、1路CANFD、1路RS485、1路TF卡、1路USB3.0 Host、1路HDMI接口、16路Dl数字输入、16路DO数字输出等接口,灵活满足自动化设备应用需求。
EtherCAT 系列文章
【新品上市】ZMC900E 国产高性能EtherCAT总线控制器
【新品上市】ZLG致远电子PCIe EtherCAT通讯卡产品正式发布!
【技术分享】不借助Linux系统,在Windows下如何搭建ZMC900E交叉编译环境
【技术分享】关节电机驱动,解锁智能机器人 的“灵动” 密码
【技术分享】手把手带你入门AWStudio运动控制编程
【技术分享】面对快速迭代的技术,怎能忽视设备升级的高效与灵活性?
【技术分享】灵活连接,无限可能—探索EtherCAT的拓扑艺术
【技术分享】EtherCAT技术赋能工业储能,优化GOOSE网络实时性与效率
【技术分享】人形机器人时代已来,解锁未来智能奥秘
【技术分享】EtherCAT 分布式时钟简介
【200个电机驱动】如何实现EtherCAT分布式供电?
【200个电机驱动】如何同步运行?--基于EtherCAT的柔性电机驱动系统
【200个电机驱动】如何快速搭建柔性自动生产线?
【插针机PLC开发】用AWBlock开发运动逻辑
【插针机HMI开发】用AWTK开发人机界面
【技术分享】EtherCAT 数据帧格式和寻址方式简介
【技术分享】“脱胎换骨”--插针机运动控制
【技术分享】EtherCAT总线如何对从站固件进行升级?
【技术分享】EtherCAT冗余技术如何实现通信线缆断开的补救?
【技术分享】如何精准分析人形机器人运动数据?
【技术分享】为何EtherCAT在运动控制总线中如此受欢迎?
【产品应用】ZMC600E运动控制器直线和圆弧插补算法详解
【产品应用】ZMC600E运动控制器T型、S型速度规划详解
【产品应用】使用PCIe EtherCAT通讯卡控制IO从站step by step(一)
【产品应用】使用PCIe EtherCAT通讯卡控制IO从站step by step(二)
【产品应用】ZMC900E控制器之ROS2环境安装指南
【产品应用】EtherCAT主站控制器系统实时性测试
【产品应用】ZMC900E 国产EtherCAT主站控制器 — 电源口传导骚扰整改
【产品应用】ZMC300E EtherCAT主站控制器实现复杂的运动轨迹规划原理及应用
【产品应用】手把手带你使用ZMC300E绘图
【产品应用】三个步骤,让你的EtherCAT电机转起来
【产品应用】EtherCAT如何保障高效率、高实时性、高灵活性的现场总线通讯
【产品介绍】ZMC601E总线型边缘控制器 — 引领制造型企业数字化转型
【产品介绍】ZMC600E EtherCAT主站控制器全新上市
【产品介绍】ZLG推出新一代工业机器人解决方案,为工业机器人注入新的活力