精华内容
下载资源
问答
  • Linux设置串口波特率
    千次阅读
    2020-12-09 15:27:06

        stty -F /dev/ttyO0 -a

    root@root:~# stty -F /dev/ttyO0 -a
    speed 230400 baud; rows 24; columns 80; line = 0;
    intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = <undef>; 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

       查看串口1(/dev/ttyO0)当前的参数,包括波特率、数据位等。 其中speed就是我们想要修改的波特率

     

      stty -F /dev/ttyO0 ispeed 115200 ospeed 115200 cs8

      该命令将串口1(/dev/ttyO0)设置成115200波特率,8位数据模式。一般情况下设置这两个参数就可以了,如果显示数据乱码,可能还需要设置其它参数,注意,此种方式只能设置标准的波特率,自定义的波特率是没法设置的。

    root@root:~# stty -F /dev/ttyO0 ispeed 115200 ospeed 115200 cs8
    root@root:~# stty -F /dev/ttyO0 -a
    speed 115200 baud; rows 24; columns 80; line = 0;
    intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = <undef>; 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

     

    更多相关内容
  • 51单片机之串口波特率计算方式0的波特率配置方式2的波特率配置方式1和3的波特率配置 232串口模式,共有4钟方式,其中方式0、方式2的波特率是固定的。方式1、方式3的是可变波特率,这两个是用T1定时器作为波特率发生...
  • 1.宏定义;2.设置波特率
  • 串口通信,就是RS-232/RS-485通信,要求通信的双方波特率等通信格式一样才可以通信成功。可是在许多情况下,两种不同格式比如不同波特率的串口也要相互通信,这就必须进行串口波特率等格式的转换。
  • STM32系列串口波特率自适应官方应用文档(中文),含检测模式介绍、ABR误差计算、软件自动波特率和硬件波特率的配置及实现方法。有示例,内容不多,全文只有20页左右,通俗易懂!
  • 串口波特率检测.rar

    2019-09-18 09:07:41
    用VS2010 C# 写的串口波特率检测小软件的上位机程序,下位机不停发送0XAA,上位机不停改变波特率去匹配,代码简单,有注释。
  • 单片机串口接收,发送,字符串比较
  • 利用此计算器,很容易计算出51单片机波特率的定时器的初值,方便编程使用
  • 嵌入式Linux系统中,应用程序设置串口波特率代码示例,有需要的可以参考。
  • 串口波特率计算

    2011-12-08 18:00:27
    串口波特率计算是关于c51的,很不错的软件,希望大家能用得到
  • 香蕉派,修改 uboot 和 kernel 串口波特率

    万次阅读 多人点赞 2021-10-12 01:16:39
    buildroot(uboot-2018.07 + linux-4.18.12) 默认波特率 编译 $ make bananapi_m1_defconfig $ make 编译好后,SD 卡烧录镜像 sdcard.img,插入 BPI 启动,默认情况下 uboot 和 kernel 的串口波特率为 115200。我们...

    环境

    硬件:bananapi m1
    软件:buildroot(uboot-2018.07 + linux-4.18.12)
    在这里插入图片描述

    默认波特率

    编译

    $ make bananapi_m1_defconfig
    $ make
    

    编译好后,SD 卡烧录镜像 sdcard.img,插入 BPI 启动,默认情况下 uboot 和 kernel 的串口波特率为 115200。我们把串口工具调到 115200,8n1,就可以看到系统启动时的 log 了,包括 uboot 和 kernel 的 log 打印。

    修改波特率

    如何修改波特率呢?同样也是分为两块,uboot 和 kernel。
    先看 uboot,使用 make uboot-menuconfig 命令
    在这里插入图片描述
    → Device Drivers → Serial drivers 路径下,将 Default baudrate 改成 57600。然后重新编译 uboot。
    其实就是修改 output/build/uboot-2018.07/.config 中的 CONFIG_BAUDRATE

    #
    # Serial drivers
    #
    CONFIG_BAUDRATE=57600                                                                                                      
    CONFIG_REQUIRE_SERIAL_CONSOLE=y
    CONFIG_SPECIFY_CONSOLE_INDEX=y
    CONFIG_SERIAL_PRESENT=y
    CONFIG_SPL_SERIAL_PRESENT=y
    CONFIG_CONS_INDEX=1
    CONFIG_DM_SERIAL=y
    

    接着修改 kernel 的串口波特率。不同的板子,不同的镜像,修改的位置是不一样的,我知道的有两种

    1. 修改 dts

    这里我看到编译好的镜像使用的是 sun7i-a20-bananapi.dtb 这个文件,于是就去修改 output/build/linux-4.18.12/arch/arm/boot/dts/sun7i-a20-bananapi.dts

        chosen {
            // stdout-path = "serial0:115200n8";
            stdout-path = "serial0:57600n8";
        };
    

    重新编译 kernel,再完整编译生成 sdcard.img,重新烧录,串口工具波特率改成 57600,启动
    在这里插入图片描述
    可以看到,uboot 阶段显示正常,到 kernel 阶段出现了乱码,显然 kernel 的串口波特率并没有修改成功,那问题出现在哪呢?

    2. 修改 boot.scr

    仔细看了 uboot 的启动 log,没看到加载 sun7i-a20-bananapi.dtb 的打印,却看到了这一句 Found U-Boot script /boot.scr 这句是干嘛的呢?查资料知道,boot.scr 是通过 boot.cmd 编译生成的。
    board/bananapi/bananapi-m1/boot.cmd

    setenv bootargs console=ttyS0,115200 earlyprintk root=/dev/mmcblk0p2 rootwait                                               
      
    mmc dev 0
    fatload mmc 0 $kernel_addr_r zImage
    fatload mmc 0 $fdt_addr_r sun7i-a20-bananapi.dtb
    
    bootz $kernel_addr_r - $fdt_addr_r
    

    看到 boot.cmd 的内容瞬间就找到了答案,波特率是在这里通过启动参数的形式由 uboot 传递给 kernel 的。系统启动后,执行命令 cat /proc/cmdline 也能证实这一点

    Welcome to Bananapi M1
    buildroot login: root
    # cat /proc/cmdline
    console=ttyS0,115200 earlyprintk root=/dev/mmcblk0p2 rootwait
    #
    

    console=ttyS0,115200 earlyprintk root=/dev/mmcblk0p2 rootwait 这句就是 boot.scr 里面的内容。
    下面我们来修改一下
    boot.cmd

    setenv bootargs console=ttyS0,57600 earlyprintk root=/dev/mmcblk0p2 rootwait                                               
      
    mmc dev 0
    fatload mmc 0 $kernel_addr_r zImage
    fatload mmc 0 $fdt_addr_r sun7i-a20-bananapi.dtb
    
    bootz $kernel_addr_r - $fdt_addr_r
    

    编译

    $  mkimage -A arm -T script -O linux -d boot.cmd boot.scr
    

    我们可以不用重新编译并烧录整个镜像,只要单独编译并替换 boot.scr 这个文件就行了。替换后启动
    在这里插入图片描述
    可以看到,uboot 和 kernel 都以 57600 的波特率正常打印 log 了,通过 cat /proc/cmdline 查看波特率也是 57600。

    # cat /proc/cmdline
    console=ttyS0,57600 earlyprintk root=/dev/mmcblk0p2 rootwait
    
    展开全文
  • Linux设置串口波特率等参数

    千次阅读 2021-05-11 19:59:44
    stty查看串口参数stty -F /dev/ttyS0 -a11查看串口1(/dev/ttyS0)当前的参数,包括波特率、数据位等。stty设置串口参数stty -F /dev/ttyS0 ispeed 115200 ospeed 115200 cs811该命令将串口1(/dev/ttyS0)设置成115200...

    stty查看串口参数

    stty -F /dev/ttyS0 -a

    1

    1

    查看串口1(/dev/ttyS0)当前的参数,包括波特率、数据位等。

    stty设置串口参数

    stty -F /dev/ttyS0 ispeed 115200 ospeed 115200 cs8

    1

    1

    该命令将串口1(/dev/ttyS0)设置成115200波特率,8位数据模式。一般情况下设置这两个参数就可以了,如果显示数据乱码,可能还需要设置其它参数,使用man查看stty其它设置选项。

    cat打印串口数据

    cat /dev/ttyS0

    1

    1

    串口数据就可以在终端上显示了。

    cygwin

    这种方法同样适用于cygwin环境。

    发送数据

    echo "sss" > /dev/ttyS0

    MSP430设置串口波特率的方法

    给定一个BRCLK时钟源,波特率用来决定需要分频的因子N:               N = fBRCLK/Baudrate 分频因子N通常是非整数值,因此至少一个分频器和一个调制阶段用来尽可能的接 ...

    Linux下串口编程【转】

    本文转载自:http://blog.csdn.net/w282529350/article/details/7378388 /************声明:本人只是见到这篇文章对我帮助很大才转载的,但 ...

    MSP430精准配置高速串口波特率的方法

    引言     在实际项目大批量生产调试设备时,笔者发现同样版本的程序在不同设备上运行时效果不一致,一部分设备串口通信正常,另外一部分串口通信不正常.通过示波器对多个设备的串口波特率及系统时钟频率测试, ...

    第十三章 Openwrt 修改串口波特率 以适应普通51不支持 115200高速率

    ,单片机或arduino的串口波特率可自行设置.当然,一般都会设置9600,也可以设置为115200.假设现在openwrt波特率为115200,单片机的串口波特率为9600.要进行一个通信,该如何设 ...

    Linux下串口编制【转】

    串行口是计算机一种常用的接口,具有连接线少,通讯简单,得到广泛的使用.常用的串口是RS-232-C接口(又称EIA RS-232-C)它是在1970年由美国电子工业协会(EIA)联合贝尔系统.调制解调 ...

    Linux下串口編程遇到的接收数据错误及原因(0x0d&comma;0x11接收错误)

    摘要:Linux下串口编程遇到的接收数据错误及原因 来源:https://dotblogs.com.tw/k/2012/07/24/73572 近日在调试串口的时候发现,另一设备向我ARM板的串口发送 ...

    linux UART串口驱动开发文档

    转:http://www.360doc.com/content/10/0417/18/829197_23519037.shtml linux UART串口驱动开发文档时间:2010-01-09 14: ...

    Linux下串口配置初步探寻

    一.在struct termios结构体中,对串口进行基本配置(如波特率设置,校验位和停止位设置 等). (一): struct termios   //串口的设置主要是设置struct termio ...

    linux 使用串口连接设备console

    linux使用串口连接cisco设备的console   linux 自带一个串口命令:minicom,需要经过设置,之后就可以连接了.   传说是默认就可以,我可能RP不好,我必须要经过设置才可以. ...

    随机推荐

    Python 修饰符

    def hello(fn):    def wrapper():        print "hello"        fn()        print "goodb ...

    php示例代码之empty函数

    1 2 3 4 5 6 7 8 9 10 11 <?php     $testVar=0;   if(empty($testVar))   {     echo 'msg:true';   } ...

    【maven】 maven的setting&period;xml文件的详解

    1       Maven的安装 安装Maven之前要确保已经安装好了jdk,并且配置好了环境变量JAVA_HOME.具体安装步骤如下: 从apache网上下载maven项目的压缩包.下载地址为:ht ...

    redis(二)Redis适用场景,如何正确的使用

    网络IO模型 Memcached是多线程,非阻塞IO复用的网络模型,分为监听主线程和worker子线程,监听线程监听网络连接,接受请求后,将连接描述字pipe 传递给worker线程,进行读写IO, ...

    win 7 下Maven环境的搭建

    Apache Maven,是一个软件(特别是Java软件)项目管理及自动构建工具. Maven是什么? 比较正式的定义:Maven是一个项目管理工具,它包含了: 一个项目对象模型 (Project O ...

    CentOS 7单用户模式修改root密码

    CentOS 7的单用户模式和6.5稍有不同 把ro改成 "rw init=/sysroot/bin/sh". 完成之后按 "Ctrl+x" chroot /s ...

    Seajs是什么及其优缺点&amp&semi;如何使用?

    这篇文章主要介绍了Seajs的相关知识和和学习心得,适合刚接触SeaJS的同学,需要的朋友可以参考下,有更好的新手教程或文档,欢迎推荐.分享! 1.Seajs简介   Seajs,一个Web模块加载框 ...

    php 的优化

    =>PHP函数禁用 disable_functions = phpinfo,passthru,exec,system,popen,chroot,escapeshellcmd,escapeshel ...

    Hadoop OutputCommitter

    1. OutputCommitters MapReduce使用一个提交协议来确保作业(job)和任务(task)都完全成功或失败.这个通过 OutputCommiter来实现. 新版本 MapRedu ...

    2017&period;11&period;13 flex 布局相关问题

    一.今日任务:城市体验平台小程序的开发(由于数据还未完善,今天主要是 UI 布局的开发) 二.所遇问题 1. flex 布局问题: html:

    展开全文
  • LPC111x_LPC11Cxx_串口波特率配置工具用于NXP LPC111x LPC11Cxx 系列芯片的 串口波特率寄存器配置,含小数分频寄存器,比官方用户手册上的算法更精确,自动生成代码和文件,使用非常方便! 如何使用:1.输入main ...
  • Convert版工业级串口波特率转换器使用说明书
  • 51单片机串口波特率

    2021-11-16 10:11:21
    波特率需要使用定时器1 波特率 = ((2^SMOD)/32) * (定时器溢出率) 定时器溢出率 = 系统时钟/指令周期/装载数 SMOD = 1 ,波特率加倍 TH1 = TL1 = -(FOSC / INSTRU_CYCLE / 32 / BAUD); //Set auto-reload vaule ...

    SCON

    SCON = 0X50工作方式1
    波特率需要使用定时器1

    波特率 = ((2^SMOD)/32) * (定时器溢出率)
    定时器溢出率 = 系统时钟/指令周期/装载数
    SMOD = 1 ,波特率加倍

    在这里插入图片描述
    在这里插入图片描述

    TH1 = TL1 = -(FOSC / INSTRU_CYCLE / 32 / BAUD); //Set auto-reload vaule
    TR1 = 1;  
    

    在这里插入图片描述

    展开全文
  • STM32单片机修改串口波特率

    千次阅读 2020-11-03 10:32:43
    对于STM32F1系列的开发板,串口波特率设置之后,就开始进行通信了,一般情况下是不需要修改的,但是在实际的项目开发中,我们可能需要通过串口对模块进行配置等操作,配置完模块之后进行数据之间的通信,又需要更改...
  • 在整个串口波特率初始化子程序中,我们两种方式完整的代码都在里面,没有用注释符号标注的是6T模式方式的代码,用注释符号标注的是12T模式下通过定时器2来实现的代码。 6T或12T模式的设置是在烧写程序时自己选择的,...
  • 基于FPGA串口波特率自适应功能的设计与实现
  • FPGA提升串口波特率、QT提高波特率支持的方法 ​ 本文主要讲解FPGA计算串口波特率的方法以及QT5对230400以上波特率的支持方法。 1.FPGA提升串口波特率 1.1确定FPGA串口的模块的时钟 ​ FPGA常用的时钟频率有:25M/50...
  • 一、分数波特率的产生 一、接收器和发送器的波特率在USARTDIV的整数和小数寄存器中的值应设置成相同。 = 这里的fck是给外设的时钟(PCLK1用于USART2、 3、 4、 5, PCLK2用于USART1)USARTDIV是一个无符号的定点数。...
  • 串口波特率的理解

    千次阅读 2020-08-14 14:17:32
    一、基础知识 1.1 bit与byte bit就是位,也叫比特位,是计算机中最小的单位; byte是字节,也就是B;...1.2 波特率概念 1)比特率:9600bps ,其表示每秒传输9600bit,也就是相当于每一秒中分成了9600等
  • 异步通信SCI/UART大概是我们最最最常用的外设了吧(无以言表,只能用连续三个最来表示了),呵呵,目前绝大数的应用都离不开串口串口配置...本篇博客的主要内容是想聊一聊串口初始化时波特率的计算问题,下面走起~
  • 串口波特率等概念

    千次阅读 2018-10-24 09:03:18
    篇一 : 串口波特率等概念 1:比特率:9600bps 就是每秒中传输9600bit,也就是相当于每一秒中划分成了9600等份。 如此,那么每1bit的时间就是1/9600秒=104.16666666666666666666666666667us。约0.1ms。既然是9600...
  • 串口波特率转换的实现武汉波仕电子有限公司孙汉华027-51518044串口通信,就是RS-232/RS-485通信,要求通信的双方波特率等通信格式一样才可以通信成功。
  • 之前的文章中介绍过STM32的USB接口虚拟串口的功能。...1.电脑上设置的串口波特率不影响USB接口传输的速率。 2.怎样获取电脑上串口助手设置的波特率,以设置USART1使其波特率与串口助手一致。 波特率设置 其实ST
  • MSP430串口波特率配置工具(原创)。方便的为msp430系列单片机配置串口波特率
  • 其中,方式0和方式2的波特率是固定的,而方式1和方式3的波特率是可变的,由定时器T1的溢出率决定。 串行口的四种工作方式对应着三种波特率。由于输人的移位时钟的来源不同,所以,各种方式的波特率计算公式也不同
  • 串口波特率计算详解

    千次阅读 2019-01-10 15:16:07
    STM32下波特率计算详解 波特率的计算     STM32下的波特率和...    STM32串口波特率通过USART_BRR进行设置,STM32的波特率寄存器支持分数设置,以提高精确度。USART_BRR的前4位用于表示小数,后12位用于表示...
  • linux 串口波特率的修改与sdma的设置

    千次阅读 2020-08-26 14:28:25
    最近这几天准备用串口实现DMA的传输数据,刚开始研究三天DMA,结果是一脸懵逼,无奈之下,只能跑去研究串口,结果发现Linux系统串口和DMA是真的难(小白,而且没人一起...二、串口波特率设置与SDMA传输 三、测试 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 56,984
精华内容 22,793
关键字:

串口波特率

友情链接: MacroCreator.zip