F407_07_UART概述
思考:
天才樱木,想用这个电路表白, 要怎么表达出I Love you?
@/"
- 1> UART概述
- 2> UART通讯协议
- 2.1> 工作时序
- 2.2> 数据格式
- 2.3> 奇偶校验
- 3> UART 硬件模型
- 3.1> 硬件方框图
- 3.2> UART硬件抽象图
- 4> 硬件电路
- 5> 过采样
1> UART概述
通用异步收发器:
( Universal Asynchronous Receiver/Transmitter )
属于器的一种,类似于热水器,灭火器,充电器… 了解他,玩他,造他…
USART(Universal Synchronous Asynchronous Receiver Transmitter)
通用同步/异步收发器
STM32F407:
数量 | 串口 | 总线 |
---|---|---|
2 | USART1, USART2 | APB2 |
4 | USART2, USART3,USART4,USART5 | APB1 |
硬件模型:
特性描述:
条目 | 内容 |
---|---|
传输方式 | 串行 |
传输方向 | 全双工 |
同步方式 | 异步 |
传输速率 | 常用波特率: 9600bit/s,115200bit/s |
2> UART通讯协议
2.1> 工作时序
2.2> 数据格式
位段 | 内容 |
---|---|
空闲位 | TX保持高电平 |
起始位 | TX由高变低,保持=1bit位宽 |
数据为 | 5~8位ASCII的编码数据 |
校验位 | 校验方式:奇校验 / 偶校验 |
停止位 | TX由低变高,保持>=0.5bit位宽 |
2.3> 奇偶校验
奇校验:发送方,根据数据位中1个数,在校验位,填1/0,使1个数为【奇】数;
偶校验:发送方,根据数据位中1个数,在校验位,填1/0,使1个数为【偶】数;
接收方根据校验位,判断数据,防止错数据;
数据格式,8N1: 8位数据位,无校验位,1位停止位
思考,如果数据错>=2位时,奇偶检验,就会校验无效,所以应用中很少使用;
CRC(Cyclic Redundancy Check):循环冗余检验,应用较多
3> UART 硬件模型
3.1> 硬件方框图
拓展参考:《Verilog HDL 高级数字设计 第二版》 7.4节
3.2> UART硬件抽象图
思考 ,你如何安排7个32位寄存器的功能,能更加灵活运用USART?
4> 硬件电路
CH340G:USB转串口芯片;
5> 过采样
采样频率是数据传输波特率的8倍,或16倍;判读中间3个值,使接收到的数据更准确
F407_07_UART概述相关推荐
- Java 多线程概述
多线程技术概述 1.线程与进程 进程:内存中运行的应用程序,每个进程都拥有一个独立的内存空间. 线程:是进程中的一个执行路径,共享一个内存空间,线程之间可以自由切换.并发执行,一个进程最少有一个线程, ...
- 【SpringMVC】概述
概述: SpringMVC:是基于spring的一个框架, 实际上就是spring的一个模块, 专门是做web开发的. 理解是servlet的一个升级 Sp ...
- 梯度下降优化算法概述
本文原文是 An overview of gradient descent optimization algorithms,同时作者也在 arXiv 上发了一篇同样内容的 论文. 本文结合了两者来翻译 ...
- Redis概述和基础
Redis 1.NoSQL NoSQL = Not Only SQL(不仅仅是SQL) 泛指非关系型数据库的,随着web2.0互联网的诞生!传统的关系型数据库很难对付web2.0时代!尤其是超大规模的 ...
- OpenCL™(开放计算语言)概述
OpenCL™(开放计算语言)概述 异构系统并行编程的开准 OpenCL™(开放计算语言)是一种开放的.免版税的标准,用于对超级计算机.云服务器.个人计算机.移动设备和嵌入式平台中的,各种加速器进行跨 ...
- 自动驾驶QNX,Linux,Autosar概述
自动驾驶QNX,Linux,Autosar概述 QNX是一个分布式.嵌入式.可规模扩展的实时操作系统.遵循POSIX.1 (程序接口)和POSIX.2 (Shell和工具).部分遵循POSIX.1b( ...
- Tengine MLOps概述
Tengine MLOps概述 大幅提高产业应用从云向边缘迁移的效率 MLOps Cloud Native 聚焦于提升云端的运营过程效率 MLOps Edge Native 聚焦于解决边缘应用开发及异 ...
- Tengine Web服务器概述
Tengine Web服务器概述 Tengine是由淘宝网发起的Web服务器项目.在Nginx的基础上,针对大访问量网站的需求,添加了很多高级功能和特性.目的是打造一个高效.安全的Web平台. 发展 ...
- Docker基本原理概述
Docker基本原理概述 Docker是一个用于开发,交付和运行应用程序的开放平台.Docker能够将应用程序与基础架构分开,从而可以快速交付软件.借助Docker,可以以与管理应用程序相同的方式来管 ...
最新文章
- pandas_getdummies()
- 对话AI大师Bengio:AI不应变成军备竞赛
- flink 自定义 窗口_【Flink 精选】阐述 Watermark 机制,剖析 Watermark 的产生和传递流程...
- 忘记redhat linux root密码怎么办
- 指令系统——数据存放、指令寻址(详解)
- scratch数学编程100例_《scratch编程+数学》课程:编程实现数字黑洞冰雹猜想
- 巧用CHKDSK命令修复U盘文件或目录损坏问题
- 陶哲轩实分析 习题5.5.2
- 小米路由器连电信路由器,dhcp服务无响应
- mdf文件和ldf文件ndf是什么,怎么用?如何给SQL server添加数据文件?分离和附加数据库的操作
- 索尼 a7 IV 和佳能 EOS R6 哪个好
- 单点登录cas-4.0.0 只是简单的同时登入,同时登出功能
- python调用包的路径_Python3 模块、包调用路径详解
- 100V降压电源芯片 电瓶72V降压DC-DC芯片
- 如何让手机网站自适应
- note、remark、memo 这三次表示备注有什么区别?
- 自动发送寄件通知教程
- codevs2924 数独挑战
- 植物大战僵尸电脑版95版
- 4.5 自行车模型的横向动力学(第四章 车辆的动态建模)
热门文章
- MIS/MRP/ERP/OA/BPM/CMS等概念解析
- 2021-05-26 吾日三省吾身
- Excel生成条形码
- 爬取学校新闻网站文章
- [转载验证]NTLDR is missing 解决方法
- h3c s5500 ssh v5 配置_H3C 交换机基本设置(telnet、SSH、链路聚合)
- 破解红蜘蛛 (破解红蜘蛛多媒体网络教室) 解除老师控制
- 【十三】景区人流量统计:python日志生成+logstash+kafka+storm+mysql+springBoot+高德地图
- lua中面向对象(class)实现探索(一)
- std::accumulate