嵌入式开发板硬件操作入门学习6——硬件知识_串口(UART)硬件介绍
硬件知识_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)硬件介绍相关推荐
- 嵌入式开发板硬件操作入门学习9——集成电路芯片手册术语词汇表(中英文对照)
原创链接:集成电路芯片半导体中英文对照术语词汇表 英语 中文 1-9 10 gigabit 10 Gb 1st Nyquist zone 第一奈奎斯特区域 3D full‑wave electroma ...
- 嵌入式开发板硬件操作入门学习0——电路图概念 硬件接口的四大类
电路图概念 术语: sch:schematic,原理图 PCB:Printed Circuit Board,印刷电路板 footprint:脚印.足迹,表示元件在电路板上的外形 component:元 ...
- ARM嵌入式开发板学习路线指引
如何入门嵌入式?嵌入式开发学习方法步骤 如何入门嵌入式?嵌入式开发学习路线指引 嵌入式开发就是指在嵌入式操作系统下进行开发,一般常用的系统有linux,android. 平台:Cortex-A9 ...
- tx1开发板可以装linux,Nvidia推出Jetson TX1嵌入式开发板 针对深度学习神经网络设计...
今天,Nvidia正式宣布基于Tegra X1打造的Jetson TX1登陆中国区市场.据介绍,该产品为Nvidia旗下首款针对深度学习神经网络而设计的嵌入式开发板,针对的开发方向为无人机.自主机器人 ...
- 开发linux学习板子_linux嵌入式开发板推荐,资深程序员教给你
嵌入式是现在发展最快的IT技术之一了,很多人都选择了嵌入式这一行业,对于嵌入式来说,他挣得多,前景也很不错,学习嵌入式,开发板是最离不开的了,很多出入嵌入式行业的人对于嵌入式开发板,不知道,应该怎么选 ...
- tx1开发板可以装linux,Jetson TX1嵌入式开发板被Nvidia推出,发力深度学习
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 不久前,Nvidia正式宣布基于TegraX1打造的JetsonTX1登陆中国区市场.据引见,该产品为Nvidia旗下首款针对深度学习神经网络而设计的嵌入 ...
- 跟涛哥一起学嵌入式 25:我接触过近50块嵌入式开发板,分享一下教训和总结...
最近老是有学员问我:涛哥,你的嵌入式教程针对哪款开发板鸭?到底使用哪款开发板学习?我的回答往往是:暂时不用开发板,学习嵌入式,不一定非得用开发板,在qemu仿真平台上学习就可以了.3年前我发布了互联网 ...
- 嵌入式开发板CAN通信编程——伺服电机驱动
嵌入式开发板CAN通信编程--伺服电机驱动 在实际的嵌入式项目开发过程中,若不涉及上位机与开发板的通信传输数据,那最关键的无非就是两个内容,读取传感器的数据并处理,驱动硬件设备工作.传感器数据的读取内 ...
- 基于全志A33开发板linux系统移植学习记录(Boot0)
基于全志A33开发板linux系统移植学习记录 第一章 Boot0基于ARMGCC的编译与修改 文章目录 基于全志A33开发板linux系统移植学习记录 前言 一.全志A33简介以及上电引导流程 二. ...
- 友善之臂NanoPC-T4嵌入式开发板 开箱
前言:由于对底层编程.硬件感兴趣,购买了友善之臂nanopct4开发板,准备好好玩玩.由于之前玩过树莓派3b,对嵌入式开发板有些了解,但总感觉不够深刻.树莓派3b性能有限,跑raspbian系统有点卡 ...
最新文章
- 困扰爱因斯坦的「幽灵般的超距作用」,是如何被贝尔定理证明确实存在的?...
- 深度强化学习-马尔科夫决策过程和表格型方法
- 【C语言】有3个数a,b,c,要求按大小顺序把它们输出(基础法)
- eclipse java 生成api_怎样使用Eclipse在Java中实现自己的API
- TP框架中session操作
- 局域网ip扫描工具_Network Kit X for Mac(网络检测工具箱)
- 兜兜线报软件合集_柚子快报淘抢购秒杀系列【送秒杀软件】
- java学籍管理系统部分代码_java学籍管理系统源代码
- Windows XP和Windows 7双系统安装说明和注意事项
- 疫情过后:表面一切照旧,暗里风起云涌!
- linux 僵尸进程deffunc,多进程-开启子进程的两种方式,查看进程的pid与ppid,僵尸进程与孤儿进程...
- 用两条命令看出你买的H3C光模块是否是正品
- 微信摇一摇插件ios_iOS摇一摇手机,播放微信摇一摇音效
- 如何关闭计算机的wps云文档,怎么把wps云文档关掉
- 数值积分之龙贝格积分
- 07JavaScript数组与字符串对象
- An assembly specified in the application dependencies manifest (…) was not found
- GCD(i,j)求和
- 计算机vb基础知识,计算机二级VB考试基础知识
- 密立根测油滴实验c语言测试,密立根油滴实验