linux下串口非标准波特率

1,linux下常规c语言串口编程

常规编程可以参考下面链接,相对解释全面

Linux 串口编程学习记录(termios.h)_tcdrain-CSDN博客

2,linux下串口非标波特率问题

参考下面链接解释,常规的termios.h中的方法,配置串口波特率,只能配置标准波特率,拓展波特率也是标准波特率的倍数,对于想420000,100000,这种非标且与标准波特率没有备注关系,不能整除的波特率,无法使用,但是正常串口硬件是可以支持这些非标波特率的

[ Linux NXP RK ] 配置标准波特率与非标准波特率 |CSDN创作打卡_linux b750000-CSDN博客

linux下串口非标准波特率的实现_linux c语言设置串口 非标 波特率-CSDN博客

3,非标波特率如何实现

方法一:试过,但是没有成功,有兴趣的朋友可以试试

转:Linux C下非特定波特率的配置和使用_linux tiocsserial-CSDN博客

方法二:使用termios2 我最终使用的这个方法,已经调试通过

Linux使用termios2结构体设置串口非标准波特率_termios 设置波特率-CSDN博客

注意事项

linux的x86和arm64架构下均测试通过。
程序包含的两个头文件<termios.h> 和<asm/termbits.h>都定义了struct termios,需要将<asm/termbits.h>中的注释掉。

先以标准波特率打开串口,再通过termios2 配合ioctrl修改自定义波特率。

确保打开串口权限 sudo chmod 777 /dev/ttyUSB0

另外,参考https://github.com/GrantEdwards/Linux-arbitrary-baud/blob/main/arbitrary-baud.c

相关推荐
openHiTLS密码开源社区1 天前
【密码学实战】openHiTLS passwd命令行:专业密码哈希生成工具
linux·密码学·哈希算法·ldap·密码策略·随机盐值
WTCLLB1 天前
netgear r6220 路由器,刷openwrt后,系统备份还原
linux·网络·智能路由器·openwrt
迎風吹頭髮1 天前
UNIX下C语言编程与实践38-UNIX 信号操作:signal 函数与信号捕获函数的编写
linux·c语言·unix
做运维的阿瑞1 天前
Linux系统性能监控与故障定位实战:CPU/内存/I/O/网络
linux·运维·网络
驱动探索者1 天前
车库到双子星:惠普的百年科技传奇
linux
啊?啊?1 天前
1 玩转Linux命令行:基础文件操作实战教程
linux·服务器·基础指令
Code Warrior1 天前
【Linux】线程概念与控制(2)
linux
Java 码农1 天前
CentOS 7 上安装 PostgreSQL
linux·postgresql·centos
筑梦之路1 天前
CentOS 7 升级perl版本到5.40.3 —— 筑梦之路
linux·运维·centos
一个不秃头的 程序员1 天前
从 0 到上线、长期运行、后续更新的**全流程**(适配 CentOS 服务器)
linux·服务器·centos