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

相关推荐
筑梦之路5 小时前
Alibaba Cloud Linux 4 制作 Ansible RPM包实践(离线可复用)——筑梦之路
linux·运维·ansible
承渊政道5 小时前
Linux网络学习【应用层自定义协议与序列化实战:从手写序列化与反序列化到深入理解进程间关系与守护进程】
linux·网络·学习·ubuntu·json·序列化与反序列化
无垠的广袤5 小时前
【ED-CLAWBOX】智能家居枢纽
linux·物联网·docker·智能家居·树莓派·aiot·home assistant
玩AI的奶茶5 小时前
什么情况适合租算力?一张场景对照表,加三个自测问题
大数据·linux·服务器·数据库·人工智能·python
IT利刃出鞘5 小时前
Linux权限--adduser和useradd的区别
linux·运维·服务器
天意__5 小时前
Android手机上部署Linux服务器 在Termux里安装Ubuntu
android·linux·服务器
Ruiery5 小时前
Linux 6.6内核内存管理深度解析(五):page cache(页缓存)— 读缓存在内存、写延迟回写
linux·运维·服务器·缓存
星恒随风5 小时前
Linux进程信号(一):从Ctrl+C到kill、raise、alarm,深入理解信号的概念与产生原理
linux·c语言·笔记·学习·状态模式
MinterFusion5 小时前
如何在开放麒麟(openKylin)下安装GTK(v0.1.0)
linux·操作系统·软件安装·gtk·明德融创·openkylin·linux图形软件开发
Lzg_na6 小时前
FAT文件系统详解
linux