linux下查看与设置串口(或串口终端)信息和属性 两种方法 利用/proc查看串口(或串口终端)属性: cat /proc/tty/driver/serial 或: cat /proc/tty/drivers 使用stty查看与设置串口(或串口终端)属性: stty -F /dev/ttySn -a ========================================================================= 其他 查看串口是否可用,可以对串口发送数据,如: echo helloworld >/dev/ttyS0 查看串口驱动:cat /proc/tty/drivers/serial 在终端输入:dmesg | grepttyS*显示从系统启动到现在串口插入拔出的信息。 然后在设备端插入一个usb转rs232线,在终端输入:dmesg | grepttyS* ,会显示:usb 2-2.1:pl2303 converter now attached tottyUSB0; 可以通过此法确定我新插入的串口线对应的串口号。 ========================================================================= 使用stty查看与设置串口(或串口终端)属性 1. 指令语法 通过–help参数查看语法规则。 # stty –help Usage: stty [-F DEVICE] [–file=DEVICE] [SETTING]… or: stty [-F DEVICE] [–file=DEVICE] [-a|–all] or: stty [-F DEVICE] [–file=DEVICE] [-g|–save] [选项] -a, –all : 以容易阅读的方式打印当前的所有配置; -g, –save: 以stty终端可读方式打印当前的所有配置。 -F, –file: 打印当前的所有设置打开指定的设备,并用此设备作为输入来代替标准输入 [参数] 终端设置:指定终端命令行的设置选项。 ————————————————————————————————————————– 2. 使用方法 可以用stty指令,查看或设置某个串口的波特率等信息。 用stty查看串口参数: stty -F /dev/ttySn -a #ttySn为要查看的串口 用stty设置串口参数: stty -F /dev/ttyS0 ispeed ospeed cs8 -parenb -cstopb -echo 该命令将串口1(/dev/ttyS0)输入输出都设置成波特率,8位数据模式, 奇偶校验位-parenb,停止位-cstopb,同时-echo禁止终端回显。 一般情况下设置波特率和数据模式这两个参数就可以了,如果显示数据乱码,可能还需要设置其它参数,使用man查看stty其它设置选项。 打印出终端的行数和列数: stty size 在命令行下禁止输出小写: stty olcuc #开启 / stty -olcuc#恢复 改变ctrl+D的方法: stty eof “string” 系统默认是ctrl+D来表示文件的结束,而通过这种方法,可以改变。 屏蔽回显: stty -echo #禁止回显 / stty echo #打开回显 测试方法: stty -echo;read; / stty echo;read 忽略回车符: stty igncr #开启 / stty -igncr#恢复 cat打印串口数据: cat /dev/ttyS0 #串口数据就可以在终端上显示了。 发送数据: echo “sss” > /dev/ttyS0 读取串口数据并保存: cat /dev/ttyUSB0 > serialdata.txt ————————————————————————————————————————– 3. 示例 附: 串口查看参数 # stty -a -F /dev/ttyS0 speed baud;stty: /dev/ttyS0 line = 0; intr = ^C; quit = ^; erase = ^?; kill = ^U; eof = ^D; eol = ; eol2 = <undef>; swtch = <undef>; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R; werase = ^W; lnext = ^V; flush = ^O; min = 1; time = 0; -parenb -parodd cs8 hupcl -cstopb cread clocal -crtscts -ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl ixon ixoff -iuclc -ixany -imaxbel -iutf8 opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0 isig icanon -iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt echoctl echoke ————————————————————————————————————————– 4. 参数说明 特殊字符: * dsusp 字符 每当输入刷新时会发送一个用于终端阻塞信号的字符 eof 字符 表示文件末尾而发送的字符(用于终止输入) eol 字符 为表示行尾而发送的字符 * eol2 字符 为表示行尾而发送的另一个可选字符 erase 字符 擦除前一个输入文字的字符 intr 字符 用于发送中断信号的字符 kill 字符 用于擦除当前终端行的字符 * lnext 字符 用于输入下一个引用文字的字符 quit 字符 用于发送退出信号的字符 * rprnt 字符 用于重绘当前行的字符 start 字符 在停止后重新开启输出的字符 stop 字符 停止输出的字符 susp 字符 发送终端阻断信号的字符 * swtch 字符 在不同的shell 层次间切换的字符 * werase 字符 擦除前一个输入的单词的字符 特殊设置: N 设置输入输出速度为N 波特 * cols N 统治内核终端上有N 栏 * columns N 等于cols N ispeed N 设置输入速度为N 波特 * line N 设置行约束规则为N min N 和 -icanon 配合使用,设置每次一完整读入的最小字符数为<N> ospeed N 设置输出速度为N 波特 * rows N 向内核通告此终端有N 行 * size 根据内核信息输出当前终端的行数和列数 speed 输出终端速度(单位为波特) time N 和-icanon 配合使用,设置读取超时为N 个十分之一秒 控制设置: [-]clocal 禁用调制解调器控制信号 [-]cread 允许接收输入 * [-]crtscts 启用RTS/CTS 握手 csN 设置字符大小为N 位,N 的范围为5 到8 [-]cstopb 每个字符使用2 位停止位 (要恢复成1 位配合”-“即可) [-]hup 当最后一个进程关闭标准终端后发送挂起信号 [-]hupcl 等于[-]hup [-]parenb 对输出生成奇偶校验位并等待输入的奇偶校验位 [-]parodd 设置校验位为奇数 (配合”-“则为偶数) 输入设置: [-]brkint 任务中断会触发中断信号 [-]icrnl 将回车转换为换行符 [-]ignbrk 忽略中断字符 [-]igncr 忽略回车 [-]ignpar 忽略含有奇偶不对称错误的字符 * [-]imaxbel 发出终端响铃但不刷新字符的完整输入缓冲 [-]inlcr 将换行符转换为回车 [-]inpck 启用输入奇偶性校验 [-]istrip 剥除输入字符的高8 位比特 * [-]iutf8 假定输入字符都是UTF-8 编码 * [-]iuclc 将大写字母转换为小写 * [-]ixany 使得任何字符都会重启输出,不仅仅是起始字符 [-]ixoff 启用开始/停止字符传送 [-]ixon 启用XON/XOFF 流控制 [-]parmrk 标记奇偶校验错误 (结合255-0 字符序列) [-]tandem 等于[-]ixoff 输出设置: * bsN 退格延迟的风格,N 的值为0 至1 * crN 回车延迟的风格,N 的值为0 至3 * ffN 换页延迟的风格,N 的值为0 至1 * nlN 换行延迟的风格,N 的值为0 至1 * [-]ocrnl 将回车转换为换行符 * [-]ofdel 使用删除字符代替空字符作填充 * [-]ofill 延迟时使用字符填充代替定时器同步 * [-]olcuc 转换小写字母为大写 * [-]onlcr 将换行符转换为回车 * [-]onlret 使得换行符的行为表现和回车相同 * [-]onocr 不在第一列输出回车 [-]opost 后续进程输出 * tabN 水平制表符延迟的风格,N 的值为0 至3 * tabs 等于tab0 * -tabs 等于tab3 * vtN 垂直制表符延迟的风格,N 的值为0 至1 本地设置: [-]crterase 擦除字符回显为退格符 * crtkill 依照echoprt 和echoe 的设置清除所有行 * -crtkill 依照echoctl 和echol 的设置清除所有行 * [-]ctlecho 在头字符中输出控制符号(“^c”) [-]echo 回显输入字符 * [-]echoctl 等于[-]ctlecho [-]echoe 等于[-]crterase [-]echok 在每清除一个字符后输出一次换行 * [-]echoke 等于[-]crtkill 意义相同 [-]echonl 即使没有回显任何其它字符也输出换行 * [-]echoprt 在””和”/”之间向后显示擦除的字符 [-]icanon 启用erase、kill、werase 和rprnt 等特殊字符 [-]iexten 允许POSIX 标准以外的特殊字符 [-]isig 启用interrupt、quit和suspend 等特殊字符 [-]noflsh 在interrupt 和 quit 特殊字符后禁止刷新 * [-]prterase 等于[-]echoprt * [-]tostop 中止尝试向终端写入数据的后台任务 * [-]xcase 和icanon 配合使用,用转义符””退出大写状态 综合设置: * [-]LCASE 等于[-]lcase cbreak 等于-icanon -cbreak 等于icanon cooked 等于brkint ignpar istrip icrnl ixon opost isig icanon eof eol 等的默认值 -cooked 等于-raw crt 等于echoe echoctl echoke dec 等于echoe echoctl echoke -ixany intr ^c erase 0177 kill ^u * [-]decctlq 等于[-]ixany ek 清除所有字符,将它们回溯为默认值 evenp 等于parenb -parodd cs7 -evenp 等于-parenb cs8 * [-]lcase 等于xcase iuclc olcuc litout 等于-parenb -istrip -opost cs8 -litout 等于parenb istrip opost cs7 nl 等于-icrnl -onlcr -nl 等于icrnl -inlcr -igncr onlcr -ocrnl -onlret oddp 等于parenb parodd cs7 -oddp 等于-parenb cs8 [-]parity 等于[-]evenp pass8 等于-parenb -istrip cs8 -pass8 等于parenb istrip cs7 raw 等于-ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr -icrnl -ixon -ixoff -iuclc -ixany -imaxbel -opost -isig -icanon -xcase min 1 time 0 -raw 等于cooked sane 等于cread -ignbrk brkint -inlcr -igncr icrnl -iutf8 -ixoff -iuclc -ixany imaxbel opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0 isig icanon iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt echoctl echoke, 所有特殊字符均使用默认值
2024最新激活全家桶教程,稳定运行到2099年,请移步至置顶文章:https://sigusoft.com/99576.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。 文章由激活谷谷主-小谷整理,转载请注明出处:https://sigusoft.com/55813.html