以下控制端均以windows为例
1. linux下(包含Android等嵌入式linux)
1.1 adb调试
adb是基于usb或以太网wifi等局域网之上的工具,在被控端嵌入式linux端有个监听adbd进程,控制端有adb server和adb client,adb client用tcp和adb server链接,adb server用usb总线协议或tcp和adbd通信
1.2 ssh调试
ssh是一种标准的网络协议,用途广泛,在被控端标准linux系统或者嵌入式linux均常见,被控端有sshd进程,控制端ssh client工具
1.3 串口调试
串口是一种物理接口,在这之上有不同的电平标准,一般串口命令行用于底层驱动开发等,直接连接串口的话,只能进行数据收发,利用串口调试工具xcom等
getty用于管理串口等各种设备/dev/tty*的连接,在linux init时加入 /sbin/getty -L ttyS0 0 vt100 监听串口的连接(也是个守护进程),如果有连接,则开启一个shell进行服务;
这样就能在串口连接时,打开shell终端,并调用login和passwd程序,然后就可以使用linux shell啦。
getty介绍getty命令用于设置终端机模式,连线速率和管制线路。
getty命令是UNIX之类操作系统启动时所必须的3个步骤之一 ,用来开启终端,进行终端的初始化,设置终端。 getty 命令设置和管理终端线路和端口。getty 命令由 init 命令来运行。getty 命令与终端状态管理员程序相链接。终端状态管理员程序提供了终端控制和登录的复合功能。 当作为 getty 命令调用时,终端状态管理员程序提供了通常的端口管理功能。
2. 裸机或者rtos下(rtos以freertos为例)
2.1 裸机stm32
因为裸机是不具备命令行终端程序的,得自己实现,所以一般不使用命令行,也没必要,一般就直接调试,具体参考不同芯片原厂的硬件调试器如st-link或者j-link。
2.2 rtos-freertos
freertos的话可以参考官方提供了CLI(Command Line Interface)的demo以及相关API,可以让需要者参考实现 - V9.0版本下,demo路径为:FreeRTOS/FreeRTOS-Plus/Demo/Common/FreeRTOS_Plus_CLI_Demos
参考链接:http://www.cppblog.com/LT450196683/archive/2021/07/14/217751.html
就是自己实现个clid,在mcu上电就跑
以上为较为常用的命令行链接方式
标签:linux,方式,常用命令,adb,终端,串口,getty,连接 From: https://www.cnblogs.com/lzc978/p/17247871.html