文章导读 一些比较常见的linux命令,主要用于检测服务器的配置和硬件信息,包括:操作系统、CPU、内存、硬盘分区、系统时间、负载、网络相关、进程、用户、开关机、启动等方面,适用于主流操作系统,常见的centos...Debian 系发行版版本命令 $ cat /etc/redhat-release # 查看 CentOS RedHat 系发行版版本命令 $ cat /etc/os-release # 查看通用 Linux...proc/cpuinfo # 查看 CPU 核心数命令 $ grep MHz /proc/cpuinfo # 查看 CPU 频率命令 查看内存命令 $ cat /proc/meminfo # 查看内存硬件相关信息命令...Ctrl + C 退出界面 查看网络相关情况 $ ifconfig # 查看网卡及本机 ip 情况命令(需要系统安装了 net-tools 工具) $ ip addr show # 功能同上,新的 Linux
一些比较常见的linux命令,主要用于检测服务器的配置和硬件信息,包括:操作系统、CPU、内存、硬盘分区、系统时间、负载、网络相关、进程、用户、开关机、启动等方面,适用于主流操作系统,常见的centos...Debian 系发行版版本命令 $ cat /etc/redhat-release # 查看 CentOS RedHat 系发行版版本命令 $ cat /etc/os-release # 查看通用 Linux...proc/cpuinfo # 查看 CPU 核心数命令 $ grep MHz /proc/cpuinfo # 查看 CPU 频率命令 查看内存命令 $ cat /proc/meminfo # 查看内存硬件相关信息命令...,Ctrl + C 退出界面 查看网络相关情况 $ ifconfig # 查看网卡及本机 ip 情况命令(需要系统安装了 net-tools 工具) $ ip addr show # 功能同上,新的 Linux
目前使用minicom作为串口软件。但使用过程中,有一点感觉不方便的地方,就是我需要使用多个串口,当使用的不是串口0时,就要手动修改minicom的配置。...于是考虑实现脚本,自动列出当前串口,选择后调用minicom打开指定串口,免去手工修改的麻烦。..."Invaild selection" fi done 添加可执行权限,给脚本起个方便输入的别名 ln -s /path/to/myminicom.sh /usr/bin/com 需要打开串口的时候...,输入com,即可列出当前的串口,选择后可打开对应串口。
前言 使用Linux系统,很有必要熟悉一些常用的命令。本文收集整理一些常用的用于检测服务器的配置和硬件信息的命令,需要时可查阅。...包括:操作系统、CPU、内存、硬盘分区、系统时间、负载、网络相关、进程、用户、开关机、启动等方面,适用于主流Linux操作系统比如centos、ubuntu、debian等 操作系统版本 $ uname...系发行版版本命令 $ cat /etc/redhat-release # 查看 CentOS RedHat 系发行版版本命令 $ cat /etc/os-release # 查看通用 Linux...# 查看 CPU 核心数命令 $ grep MHz /proc/cpuinfo # 查看 CPU 频率命令 查看内存命令 $ cat /proc/meminfo # 查看内存硬件相关信息命令...C 退出界面 查看网络相关情况 $ ifconfig # 查看网卡及本机 ip 情况命令(需要系统安装了 net-tools 工具) $ ip addr show # 功能同上,新的 Linux
之前使用的方式是这样的 http://www.cnblogs.com/zqb-all/p/7073612.html
1.引言 本篇介绍ESP32上通过MicroPython实现串口数据的收发。 2.环境介绍 ESP32 小板: ? Micro USB线: ?...在进行第3节和第4节实验前,还需要: 将板子G12引脚和USB转TTL的RXD引脚短接 将板子G13引脚和USB转TTL的TXD引脚短接 将板子GND引脚和USB转TTL的GND引脚短接 3.串口发送...完成的功能即:ESP32通过串口发送数据给USB转TTL设备 4.串口接收 代码如下: from machine import UART,Pin uart = UART(2, baudrate=115200...完成的功能即:USB转TLL设备通过串口发送数据给ESP32。...直接将代码复制到串口窗口中,运行结果如下: ? 使用上一篇介绍的通过 ampy --port COM3 run --no-output uart.py 方法,在串口中可以看到输出结果如下: ?
尽管串行通讯的比按字节传输的并行通信慢,但是串口可以在仅仅使用两根线的情况下就能实现数据的传输。...图1 串行通信与并行通信 二、串口通讯模式 串口通讯模式包括单工、半双工和全双工,其中单工模式数据传输只支持数据在一个方向上传输。...详见下图: 图2 (a)单工、(b)半双工、(c)全双工 三、串口通讯协议 最初数据是模拟信号输出简单过程量,后来仪表接口出现了RS232接口,这种接口可以实现点对点的通信方式,但这种方式不能实现联网功能...特性如下: 图3 RS232基本特性 2.RS232的物理特性 在RS232的通讯方式中,两个通讯设备的"DB9接口"之间通过串口信号线建立起连接,串口信号线中使用"RS-232标准"传输数据信号。...其具体接线方式如下图所示: 图11 RS485(点对多点)接线方式 七、网络电台串口 以我司机载网络电台为例,综合接口为J30J-25。
/* * uart 打开分析 * * 问题: 当应用程序调用open系统调用函数,那么是如何open串口的?...register setup for the port controls */ return ret; } 总结: open的主要作用是 在内核通过创建并初始化一个tty_struct来描述具体对应的一个硬件设备...,比如这里就是用一个tty_struct来描述s3c24xx上的uart0的,然后找到uart_port 中ops的startup方法初始化uart的硬件。...4.根据步骤3中找到的uart_state,找到里面的uart_port的ops中的startup方法来初始化uart硬件
虽然以太网接口和USB接口也是以一个串行流进行数据传送的,但是串口连接通常特指那些与RS-232标准兼容的硬件或者调制解调器的接口。废话少讲,今天来解剖使用串口时的编程代码细节。...上面的代码是使用串口的第一步,来解释下都是啥意思。...来瞧瞧: 第21-22行,定义了一个用来配置串口属性的结构体: struct termios serial; bzero(&serial, sizeof(serial)); 第24行,将串口设置为raw...cfsetispeed(&serial, B9600); cfsetospeed(&serial, B9600); 第28-32行,设置串口控制属性(c_cflag),其中: serial.c_cflag...: tcsetattr(fd,TCSANOW,&serial); 当然,上面的 fd 就是系统中的某一个你想要设置的成上面那样的属性参数的串口,比如就拿粤嵌GEC210开发板来说,他有四个串口,其中第一个就已经被用于终端控制了
4.串口库相关使用(参考example示例) 串口有两种模式EventDriven/Polling EventDriven(事件驱动方式) 使用事件处理串口的读取,一旦有数据到来,就会发出readyRead...()信号,我们可以关联该信号来读取串口的数据。...我们需要自己建立定时器来读取串口的数据。 在Windows下支持以上两种模式,而在Linux下只支持Polling模式。...//进行操作中... ... port->close(); //关闭串口 QextSerialEnumerator类 用来统计在线串口用的,它有个成员函数...()成员函数来开启信号事件触发 5.示例-使用EventDriven事件驱动模式制作串口助手 5.1 效果图-跟下位机通信 和原子的XCOM串口助手做比较 ?
最近在了解嵌入式方面的知识,就随笔记录一下: 查看Linux本机串口: 1、查看串口是否可用 可以对串口发送数据比如对com1口,echo /dev/ttyS0 2、查看串口名称使用 ls...-l /dev/ttyS* 一般情况下串口的名称全部在dev下面,如果你没有外插串口卡的话默认是dev下的ttyS*,一般ttyS0对应com1,ttyS1对应com2,当然也不一定是必然的; 3、...查看串口驱动 cat/proc/tty/drivers/serial 4、查看串口设备 dmesg | grep ttyS* 5、查一下板子上的串口有没有设备 grep tty/proc.../dev下应该有一个USB串口:/dev/ttyUSB0. 当一个串行卡或数据卡被侦测到时,它会被指定成为第一个可用的串行设备。...PC上的串口一般是ttyS,板子上Linux的串口一般叫做ttySAC; 串口使用: 如果需要查看这个串口设备输出: cat ttyUSB0 如果需要对这个设备输入: echo yaoxu > ttyUSB0
/*串口read函数分析 * 当应用程序调用read系统调用时,会调用tty_fops中的tty_read * 接下来分析tty_read函数 * * 其中最重要的就是ld->ops->read(tty...* 首先: 数据当然是从硬件里read出来的。 * 那么当我们的串口有数据的话,当然就调用我们以前注册的rx中断函数了。...unsigned int ufcon, ch, flag, ufstat, uerstat; int max_count = 64; while (max_count-- > 0) { /*读取UFCON串口配置寄存器...*/ ufcon = rd_regl(port, S3C2410_UFCON); /*读取 UFSTAT串口状态寄存器。...UERSTAT_OVERRUN, ch, flag); } /*这是才将整个数据送tty->read_buf中去*/ tty_flip_buffer_push(tty); } /* 将串口产生的数据送进
/*和read的分析过程一样, 我们首先分析tty_write*/ /*最重要的就是do_tty_write函数。 前面都是一些合法性判断*/ static ...
查看Linux本机串口: 1、查看串口是否可用 如果需要查看这个串口设备输出: cat ttyUSB0 如果需要对这个设备输入: echo yaoxu > ttyUSB0 常用的调试工具有: minicom...cutecom Linux系统可视化串口应用软件,使用上与Windows系统串口调试工具。 picocom 效果上类似 minicom 的精简版,设置比较简单,还可以有背景颜色。...PC上的串口一般是ttyS,板子上Linux的串口一般叫做ttySAC; 串口权限问题 临时调试解决 在使用串口进行通信时,经常需要使用指令来赋予用户读写的权限 $ sudo chmod 777 /dev...查看linux所有用户 使用 /etc/passwd 文件 使用任何一个像 cat、more、less 等文件操作命令来打印 Linux 系统上创建的用户列表。.../etc/passwd 是一个文本文件,其中包含了登录 Linux 系统所必需的每个用户的信息。
简介 嵌入式Linux下串口编程与Linux系统下的编程没有什么区别,系统API都是一样的。...RS232与RS485在使用上的区别,RS232是全双工的,只能对接一个设备串口设备。RS485是半双工的总线协议,一般可以挂多个传感器设备,半双工的意思是同时只能有一个设备向串口发数据。...用到的API函数 函数 说明 open 打开设备,用于打开串口设备 fcntl 修改设备描述符属性参数 isatty 检测打开的描述符是否指向一个终端 tcgetattr 用来获取串口终端参数 cfmakeraw...1: { new_cfg.c_cflag &= ~CSTOPB; new_cfg.c_cflag &= ~CRTSCTS; //禁用硬件流控...//new_cfg.c_cflag |= CRTSCTS; //启用硬件流控 break; } case 2:
CCD图像检测 作者:一点一滴的Beer 指导教师:Chen Zheng 单位:WHU 二、黑白图像检测的硬件设计 2.1 电源提供。...2.3.3.1硬件二值电路 在软件上对灰度图片进行黑白分割时,有两种方法: 固定阈值法,即高于此阈值电压,即认为是1,否则是0,然后再通过软件进行黑线边缘检测。 ...5.采用硬件二值,直接对图片进行了正确有效的分割,减少了CPU的运算量,增加了分割的可靠性。 显然,因为以上优点使得硬件二值的检测方案对于色彩简单的赛道环境拥有极大的优势。...图22:理想赛道环境时的极限情况 图23:实际赛道环境 在实际的赛道中,一方面有来自交叉赛道的黑线正常干扰,另外一方面有来自光线的干扰,特别是赛道边缘地带,会有些杂乱的干扰信号,这个对硬件边缘检测计数是极其不利的...在硬件层面上,同样也能实现逐步搜索:在第一行信号进入时,根据上一行的中心,来对视频信号检测时机进行适当延时,跳过干扰地带后,再对跳变点进行检测。
测试机器的硬件信息: 查看CPU信息(型号) # cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c 8 Intel(R)...# dmidecode | grep 'Processor Information' 查看内 存信息 # cat /proc/meminfo # uname -a Linux euis1...2.6.9-55.ELsmp #1 SMP Fri Apr 20 17:03:35 EDT 2007 i686 i686 i386 GNU/Linux (查看当前操作系统内核信息) # cat.../etc/issue | grep Linux Red Hat Enterprise Linux AS release 4 (Nahant Update 5) (查看当前操作系统发行版信息) 查看机器型号
# 查看所有交换分区 # hdparm -i /dev/hda # 查看磁盘参数(仅适用于IDE设备) # dmesg | grep IDE # 查看启动时IDE设备检测状况
hook测试 这里我用win32写了一个MessageBox的程序,当点击开始按钮就会弹窗,这里我写了一个Hook_E9函数用来限制对MessageBoxA的hook,如果检测到了hook,则调用ExitProcess...-20220406165929083.png] 然后我们这里对我们的程序的E9指令进行替换,修改为先用call短跳到没有被监控的区域,然后再跳到我们自己的函数 然而这里还是被拦截,这里显示的是被CRC检测拦截了...这里就不能使用常规的方法去规避hook,而是通过CPU的dr0-dr7寄存器去触发异常,通过异常处理函数来修改文本框的值,这里我们首先需要了解的是硬件断点 硬件断点 简单说一下软件断点和内存断点,软件断点就是我们通常在...与软件断点与内存断点不同,硬件断点不依赖被调试程序,而是依赖于CPU中的调试寄存器。调试寄存器有7个,分别为Dr0~Dr7。用户最多能够设置4个硬件断点,这是由于只有Dr0~Dr3用于存储线性地址。...在OD里面也能够看到只能设置4个硬件断点 [image-20220402185424231.png] 设置硬件断点 Dr0~Dr3用于设置硬件断点,由于只有4个断点寄存器,所以最多只能设置4个硬件调试断点
,这里可以看到拦截的是E9这个硬编码 然后我们这里对我们的程序的E9指令进行替换,修改为先用call短跳到没有被监控的区域,然后再跳到我们自己的函数 然而这里还是被拦截,这里显示的是被CRC检测拦截了...我们知道Inline hook无论是通过E8还是E9跳转,肯定是要修改内存的,那么如果程序有CRC检测,那么我们这种使用汇编跳到自己的处理函数的方法是怎么都行不通的。...这里就不能使用常规的方法去规避hook,而是通过CPU的dr0-dr7寄存器去触发异常,通过异常处理函数来修改文本框的值,这里我们首先需要了解的是硬件断点 硬件断点 简单说一下软件断点和内存断点,软件断点就是我们通常在...与软件断点与内存断点不同,硬件断点不依赖被调试程序,而是依赖于CPU中的调试寄存器。调试寄存器有7个,分别为Dr0~Dr7。用户最多能够设置4个硬件断点,这是由于只有Dr0~Dr3用于存储线性地址。...在OD里面也能够看到只能设置4个硬件断点 设置硬件断点 Dr0~Dr3用于设置硬件断点,由于只有4个断点寄存器,所以最多只能设置4个硬件调试断点。
领取专属 10元无门槛券
手把手带您无忧上云