本文背景: 是真的不喜欢脑子记这些引脚,串口节点,动不动忘记了。...1.首先记录一下硬件引脚----tty节点对应关系 2.找一组/dev/ttyHSL1,先测试一下自环,然后写个app,从app里面读写这个节点 3.通过串口和单片机通信...硬件平台配置: 平台:msm8909 默认log串口:Board_KERNEL_CMDLINE := console=ttyHSL0, 115200, n8 对应文件节点:/dev/ttyHSL1 —...——————————————– 1.串口的linux驱动配置 (/dev/ttyHSL1) //msm8909.dtsi blsp1_uart2:serial@78b0000 { compatible...termios.h> #include #include #include #include #include <linux
前面我们安装好了Linux系统,但是无论是管理本机的虚拟机还是管理远程的服务器,我们一般都不在计算机上直接操作,而是用一种远程登陆管理工具。...这个工具的好处就是,你不需要直接在windows上直接安装个Linux虚拟机,用这个工具就可以直接管理远程的服务器,今天要学习的就是这个远程登陆管理工具 首先我们先设置一下虚拟机网络配置,“虚拟机”-...图4 但是这里要说明一点,以上的方法,只是一次性的,重启以后就没用了,或者说重启以后就要重新设置,如果要永久改变网卡的ip地址,需要修改Linux的配置文件,这个以后再说,这里先暂时用这种办法进行学习...接下来我们就要在真实机上远程登陆虚拟机中的Linux系统,这里我们首先要下载一个工具Secure CRT远程连接管理工具,这里我直接给出汉化破解版下载链接:https://pan.baidu.com...图7 输入我们登陆Linux的密码 ? 图8 连接成功,界面其实跟我们的Linux界面非常相似 ? 图9
虽然以太网接口和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开发板来说,他有四个串口,其中第一个就已经被用于终端控制了
/* * uart 打开分析 * * 问题: 当应用程序调用open系统调用函数,那么是如何open串口的?
之后,4578会消失,因为父进程执行到了wait,也知道了子进程是被信号2杀掉的。...僵尸不可能被杀死 我们看到上面4628是个僵尸很不爽,所以我们想把它干掉,据说Linux有个信号9,神挡杀神,佛挡杀佛,我们现在来用kill -9干掉4628: ?
项目场景: 使用STM32L0单片机主频设定2.097M,使用LPUART,115200波特率的串口进行通信,会出现偶发性的串口死机现象。...---- 问题描述 1.串口配置 2.回调函数接收数据 理论上通过以上配置,可以正常接收到DMA收到的不定长数据,经简单测试,每次通过串口助手,手动发送数据,确实都能正常接收并处理。...通过比较两次的仿真,发现ISR中断状态寄存器ORE标志位被置位后,不会再进入中断。...,和初步解决方案,在错误回调函数中重新打开串口。...如果有OverrunDisable开关,在不使用HAL库的中断回调来实现串口接收时最好禁止Overrun,不然出现串口接收溢出,RDR寄存器中的值将不会改变,也就读不到新数据了。
最近在了解嵌入式方面的知识,就随笔记录一下: 查看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
查看Linux本机串口: 1、查看串口是否可用 如果需要查看这个串口设备输出: cat ttyUSB0 如果需要对这个设备输入: echo yaoxu > ttyUSB0 常用的调试工具有: minicom...cutecom Linux系统可视化串口应用软件,使用上与Windows系统串口调试工具。 picocom 效果上类似 minicom 的精简版,设置比较简单,还可以有背景颜色。.../dev下应该有一个USB串口:/dev/ttyUSB0. 当一个串行卡或数据卡被侦测到时,它会被指定成为第一个可用的串行设备。...PC上的串口一般是ttyS,板子上Linux的串口一般叫做ttySAC; 串口权限问题 临时调试解决 在使用串口进行通信时,经常需要使用指令来赋予用户读写的权限 $ sudo chmod 777 /dev...查看linux所有用户 使用 /etc/passwd 文件 使用任何一个像 cat、more、less 等文件操作命令来打印 Linux 系统上创建的用户列表。
大多数Linux发行版和macOS都默认安装了SSH客户端和服务器,可通过下列命令确认安装: sudo apt install openssh-server openssh-client Windows
/*串口read函数分析 * 当应用程序调用read系统调用时,会调用tty_fops中的tty_read * 接下来分析tty_read函数 * * 其中最重要的就是ld->ops->read(tty...* 那么当我们的串口有数据的话,当然就调用我们以前注册的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 ...
2.关闭被远程端Windows7的防火墙,在运行界面输入“firewall.cpl”,打开Windows7防火墙设置,关闭防火墙。...3.配置Linux主机与Windows主机在同一个局域网,先查看Linux的IP是192.168.40.3,再配置Windows7的IP,使两者的IP在同一网段。...4.在Linux系统中输入ping命令,查看与Windows主机能否互联互通。...5.打开Windows远程连接,右击计算机,选择属性,打开计算机系统界面单击远程设置,选择“允许运行任意版本远程桌面的计算机连接”,再选择用户,显示xiang已经有访问权,可以用xiang这个用户远程登陆...再安装rdesktop软件包yum install rdesktop –y 7.在Linux系统的图形化界面上,右击打开终端输入rdesktop Windows IP,打开Windows远程登陆界面
简介 嵌入式Linux下串口编程与Linux系统下的编程没有什么区别,系统API都是一样的。...嵌入式设备中串口编程是很常用的,比如会对接一些传感器模块,这些模块大多是RS232或者RS485接口,对于软件层面上来说,RS232与RS48区别不大。...RS232与RS485在使用上的区别,RS232是全双工的,只能对接一个设备串口设备。RS485是半双工的总线协议,一般可以挂多个传感器设备,半双工的意思是同时只能有一个设备向串口发数据。...用到的API函数 函数 说明 open 打开设备,用于打开串口设备 fcntl 修改设备描述符属性参数 isatty 检测打开的描述符是否指向一个终端 tcgetattr 用来获取串口终端参数 cfmakeraw...将终端设置为原始模式,该模式下所有的输入数据以字节为单位被处理 tcflush 用于清空输入、输出缓冲区 tcsetattr 设置串口终端参数 read 读取数据 write 写数据 close 关闭串口设备
折腾了下linux服务器上的mongodb的远程登陆,遇到了点问题,在这里记录下来。以备以后查询。 前提:已经在linux上安装好了mongodb。安装方法这里不说了,网上各种有。...将 auth=true //把#注释去掉,安全起见,远程登陆需要用户验证 #bind_ip 127.0.0.1 //注释掉这句,表明允许远程连接,或者指点允许远程登陆的ip 重启数据库 /etc/
目录 Linux 背景 Linux环境搭建 Linux远程登陆 Linux 背景 肯尼斯·蓝·汤普森最早用汇编语言创建了UNIX系统,后来与他的好“基友”丹尼斯·里奇(C语言之父),他们两个一同用C语言重新写了...Linux提供自己编写的源代码。...Linux环境搭建 了解于此后,我们就要准备一下Linux环境的问题,这里主要有以下三种: 直接安装在物理机上. 但是由于 Linux 桌面使用起来非常不友好, 不推荐....使用虚拟机软件, 将 Linux 搭建在虚拟机上. 但是由于当前的虚拟机软件(如 VMWare 之类的)存在一些 bug , 会导致环境上出现各种莫名其妙的问题, 比较折腾....管理员账户密码(云服务器设置的) Linux远程登陆 完成上面步骤后,就可以用XShell进行远程登陆到我们的Linux XShell安装与下载:https://www.xshell.com/zh/free-for-home-school
程序员的世界里,总是充满着悬念,而带来悬念的就是挥之不去的bug 修复bug,就像侦办一起案件 我就蹭蹭热度 来个 程序员探案 系列吧 ---- 直击"案发"现场 前两天做嵌入式开发的一哥们在用ARM和一串口设备进行通信时..., 碰到了诡异的问题,受尽折磨的他告诉我: 数据被"吃掉"了,还有人"调包" "案情"分析 通过大量分析发送和接收的数据对比,看出了些端倪 数据被"吃掉" 程序在接收数据时 0x13,0x11总是收不到...数据被"调包" 串口发送方发0x0D,接收方收到0x0A 串口发送方发0x0A,接收方收到0x0D 找证据 从termios结构中找到有几个关键位设置对其有影响 c_iflag 中的INLCR,ICRNL...,IXON,IXOFF,IXANY(具体含义参见下面表格宏说明) c_iflag用于设置如何处理串口上接收到的数据,包含如下内容: 宏 英文说明 中文说明 INPCK Enable parity check...20*@param fd 类型 int 打开串口的文件句柄 21*@param speed 类型 int 串口速度 22*@return void*/ 23void
, 碰到了诡异的问题,受尽折磨的他告诉我: 数据被"吃掉"了,还有人"调包" "案情"分析 通过大量分析发送和接收的数据对比,看出了些端倪 数据被"吃掉" 程序在接收数据时 0x13,0x11总是收不到...数据被"调包" 串口发送方发0x0D,接收方收到0x0A 串口发送方发0x0A,接收方收到0x0D 找证据 从termios结构中找到有几个关键位设置对其有影响 c_iflag 中的INLCR,ICRNL...,IXON,IXOFF,IXANY(具体含义参见下面表格宏说明) c_iflag用于设置如何处理串口上接收到的数据,包含如下内容: 宏 英文说明 中文说明 INPCK Enable parity check.../** *打开串口 */ int open_dev(char *dev_name) { int fd = open(dev_name, O_RDWR | O_NOCTTY); if...*@param fd 类型 int 打开串口的文件句柄 *@param speed 类型 int 串口速度 *@return void*/ void set_speed(int
/** * uart分析 * * 其实串口分析就两个重要的文件: S3c2440.c Samsung.c * * **/ /*1...其实每一个串口都对应一个uart_port结构 * 这里只初始化了tty_port结构。...KERN_ERR "s3c24xx_init_uarts: cpu has no uart init\n"); } else (cpu->init_uarts)(cfg, no); } /*初始化系统上的串口资源...用于初始化uart_port 3. s3c24xx_serial_ops: 硬件的操作集 4. s3c24xx_uart_info: 用于初始化uart_port 其实也就是:编写S3c2440.c这个串口文件
由于使用的是python这样的能够跨平台运行的语言,所以所有python支持的平台,如Linux, Solaris, BSD, MacOS X, Windows等,paramiko都可以支持,因此,如果需要使用...本文重点给大家介绍借助Paramiko通过Python实现linux远程登陆及sftp操作。 1....需要额外安装 sshpass(如果不免密的话) 干扰信息太多,数据清理、格式化相当麻烦 代码实现不够优雅,可读性太差 ssh 连接不能复用,一次连接仅能执行一次命令 代码无法全平台,仅能在 Linux...txt') # 下载文件 sftp.get(remotepath='/tmp/22.txt', localpath='/tmp/33.txt') trans.close() 参考 Python远程登陆服务器应该这样玩
在这个充满不确定的VUCA时代下“变才是永恒的不变”,企业为了更好更快的是满足用户需求和适应市场的变化,获取更多用户的认可及市场占有率,就需要主动拥抱变化,敏捷...
领取专属 10元无门槛券
手把手带您无忧上云