硬件知识_UART硬件介绍

1. 串口的硬件介绍

UART的全称是Universal Asynchronous Receiver and Transmitter,即异步发送和接收。
串口在嵌入式中用途非常的广泛,主要的用途有:

  • 打印调试信息;
  • 外接各种模块:GPS、蓝牙;

串口因为结构简单、稳定可靠,广受欢迎。

通过三根线即可,发送、接收、地线。

通过TxD->RxD把ARM开发板要发送的信息发送给PC机。
通过RxD->TxD线把PC机要发送的信息发送给ARM开发板。
最下面的地线统一参考地。

2. 串口的参数

  • 波特率:一般选波特率都会有9600,19200,115200等选项。其实意思就是每秒传输这么多个比特位数(bit)。
  • 起始位: 先发出一个逻辑”0”的信号,表示传输数据的开始。
  • 数据位:可以是5~8位逻辑”0”或”1”。如ASCII码(7位),扩展BCD码(8位)。小端传输。
  • 校验位:数据位加上这一位后,使得“1”的位数应为偶数(偶校验)或奇数(奇校验),以此来校验数据传送的正确性。
  • 停止位:它是一个字符数据的结束标志。

问:
怎么发送一字节数据,比如‘A‘?
‘A’的ASCII值是0x41,二进制就是01000001,怎样把这8位数据发送给PC机呢?

答:

  • 双方约定好波特率(每一位占据的时间);

  • 规定传输协议

    • 原来是高电平,ARM拉低电平,保持1bit时间;
    • PC在低电平开始处计时;
    • ARM根据数据依次驱动TxD的电平,同时PC依次读取RxD引脚电平,获得数据;

前面图中提及到了逻辑电平,也就是说代表信号1的引脚电平是人为规定的。

如图是TTL/CMOS逻辑电平下,传输‘A’时的波形:

在xV至5V之间,就认为是逻辑1,在0V至yV之间就为逻辑0。

如图是RS-232逻辑电平下,传输‘A’时的波形:

在-12V至-3V之间,就认为是逻辑1,在+3V至+12V之间就为逻辑0。

RS-232的电平比TTL/CMOS高,能传输更远的距离,在工业上用得比较多。

市面上大多数ARM芯片都不止一个串口,一般使用串口0来调试,其它串口来外接模块。

3. 串口电平

ARM芯片上得串口都是TTL电平的,通过板子上或者外接的电平转换芯片,转成RS232接口,连接到电脑的RS232串口上,实现两者的数据传输。

现在的电脑越来越少有RS232串口的接口,当USB是几乎都有的。因此使用USB串口芯片将ARM芯片上的TTL电平转换成USB串口协议,即可通过USB与电脑数据传输。

上面的两种方式,对ARM芯片的编程操作都是一样的。

4. 串口内部结构

ARM芯片是如何发送/接收数据?
如图所示串口结构图:

要发送数据时,CPU控制内存要发送的数据通过FIFO传给UART单位,UART里面的移位器,依次将数据发送出去,在发送完成后产生中断提醒CPU传输完成。
接收数据时,获取接收引脚的电平,逐位放进接收移位器,再放入FIFO,写入内存。在接收完成后产生中断提醒CPU传输完成。

配套视频网站:
B站:https://www.bilibili.com/video/BV17g411F7oR?p=9
嵌入式开发板硬件操作入门—韦东山

嵌入式开发板硬件操作入门学习6——硬件知识_串口(UART)硬件介绍相关推荐

  1. 嵌入式开发板硬件操作入门学习9——集成电路芯片手册术语词汇表(中英文对照)

    原创链接:集成电路芯片半导体中英文对照术语词汇表 英语 中文 1-9 10 gigabit 10 Gb 1st Nyquist zone 第一奈奎斯特区域 3D full‑wave electroma ...

  2. 嵌入式开发板硬件操作入门学习0——电路图概念 硬件接口的四大类

    电路图概念 术语: sch:schematic,原理图 PCB:Printed Circuit Board,印刷电路板 footprint:脚印.足迹,表示元件在电路板上的外形 component:元 ...

  3. ARM嵌入式开发板学习路线指引

    如何入门嵌入式?嵌入式开发学习方法步骤  如何入门嵌入式?嵌入式开发学习路线指引  嵌入式开发就是指在嵌入式操作系统下进行开发,一般常用的系统有linux,android.  平台:Cortex-A9 ...

  4. tx1开发板可以装linux,Nvidia推出Jetson TX1嵌入式开发板 针对深度学习神经网络设计...

    今天,Nvidia正式宣布基于Tegra X1打造的Jetson TX1登陆中国区市场.据介绍,该产品为Nvidia旗下首款针对深度学习神经网络而设计的嵌入式开发板,针对的开发方向为无人机.自主机器人 ...

  5. 开发linux学习板子_linux嵌入式开发板推荐,资深程序员教给你

    嵌入式是现在发展最快的IT技术之一了,很多人都选择了嵌入式这一行业,对于嵌入式来说,他挣得多,前景也很不错,学习嵌入式,开发板是最离不开的了,很多出入嵌入式行业的人对于嵌入式开发板,不知道,应该怎么选 ...

  6. tx1开发板可以装linux,Jetson TX1嵌入式开发板被Nvidia推出,发力深度学习

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 不久前,Nvidia正式宣布基于TegraX1打造的JetsonTX1登陆中国区市场.据引见,该产品为Nvidia旗下首款针对深度学习神经网络而设计的嵌入 ...

  7. 跟涛哥一起学嵌入式 25:我接触过近50块嵌入式开发板,分享一下教训和总结...

    最近老是有学员问我:涛哥,你的嵌入式教程针对哪款开发板鸭?到底使用哪款开发板学习?我的回答往往是:暂时不用开发板,学习嵌入式,不一定非得用开发板,在qemu仿真平台上学习就可以了.3年前我发布了互联网 ...

  8. 嵌入式开发板CAN通信编程——伺服电机驱动

    嵌入式开发板CAN通信编程--伺服电机驱动 在实际的嵌入式项目开发过程中,若不涉及上位机与开发板的通信传输数据,那最关键的无非就是两个内容,读取传感器的数据并处理,驱动硬件设备工作.传感器数据的读取内 ...

  9. 基于全志A33开发板linux系统移植学习记录(Boot0)

    基于全志A33开发板linux系统移植学习记录 第一章 Boot0基于ARMGCC的编译与修改 文章目录 基于全志A33开发板linux系统移植学习记录 前言 一.全志A33简介以及上电引导流程 二. ...

  10. 友善之臂NanoPC-T4嵌入式开发板 开箱

    前言:由于对底层编程.硬件感兴趣,购买了友善之臂nanopct4开发板,准备好好玩玩.由于之前玩过树莓派3b,对嵌入式开发板有些了解,但总感觉不够深刻.树莓派3b性能有限,跑raspbian系统有点卡 ...

最新文章

  1. 困扰爱因斯坦的「幽灵般的超距作用」,是如何被贝尔定理证明确实存在的?...
  2. 深度强化学习-马尔科夫决策过程和表格型方法
  3. 【C语言】有3个数a,b,c,要求按大小顺序把它们输出(基础法)
  4. eclipse java 生成api_怎样使用Eclipse在Java中实现自己的API
  5. TP框架中session操作
  6. 局域网ip扫描工具_Network Kit X for Mac(网络检测工具箱)
  7. 兜兜线报软件合集_柚子快报淘抢购秒杀系列【送秒杀软件】
  8. java学籍管理系统部分代码_java学籍管理系统源代码
  9. Windows XP和Windows 7双系统安装说明和注意事项
  10. 疫情过后:表面一切照旧,暗里风起云涌!
  11. linux 僵尸进程deffunc,多进程-开启子进程的两种方式,查看进程的pid与ppid,僵尸进程与孤儿进程...
  12. 用两条命令看出你买的H3C光模块是否是正品
  13. 微信摇一摇插件ios_iOS摇一摇手机,播放微信摇一摇音效
  14. 如何关闭计算机的wps云文档,怎么把wps云文档关掉
  15. 数值积分之龙贝格积分
  16. 07JavaScript数组与字符串对象
  17. An assembly specified in the application dependencies manifest (…) was not found
  18. GCD(i,j)求和
  19. 计算机vb基础知识,计算机二级VB考试基础知识
  20. 密立根测油滴实验c语言测试,密立根油滴实验

热门文章

  1. oracle触发器update本表数据
  2. linux下的etc文件夹
  3. 服务器网站首页被被修改,web服务器被入侵修改内容后如何处理
  4. 最大公约数简便算法_三种求最大公约数的方法
  5. 智遥工作流连接SAP,查询超时解决方法
  6. php接入北斗定位,手机如何连接北斗卫星?
  7. java毕业设计——基于java+AngularJS+jsp的配件营销系统设计与实现(毕业论文+程序源码)——配件营销系统
  8. 《SICP》习题第1章
  9. 高盛报告:人工智能、机器学习和数据将推动未来生产力的发展
  10. python比对Excel表和json数据