嵌入式学习(3)ADC、DMA、通信方式

news2024/11/17 15:57:48

对寄存器的理解
寄存器,是连接软件跟硬件的桥梁,软件可对寄存器读写,而每个寄存器下面都连着一根导线,读写寄存器来改变状态,从而控制硬件

ADC(Analog-Digital Converter)模拟-数字转换器

ADC可以将引脚上连续变化的模拟电压转换为内存中存储的数字变量,建立模拟电路到数字电路的桥梁
12位逐次逼近型ADC,1us转换时间
输入电压范围:03.3V,转换结果范围:04095
18个输入通道,可测量16个外部和2个内部信号源
规则组和注入组两个转换单元
模拟看门狗自动监测输入电压范围

STM32F103C8T6 ADC资源:ADC1、ADC2,10个外部输入通道

ADC基本结构
在这里插入图片描述
单次转换、扫描模式
其中参数对应查看代码部分


DMA(Direct Memory Access)直接存储器存取

DMA可以提供外设和存储器或者存储器和存储器之间的高速数据传输,无须CPU干预,节省了CPU的资源
12个独立可配置的通道: DMA1(7个通道), DMA2(5个通道)
每个通道都支持软件触发和特定的硬件触发

STM32F103C8T6 DMA资源:DMA1(7个通道)

DMA基本结构
在这里插入图片描述
用来数据转运


通信接口

通信的目的:将一个设备的数据传送到另一个设备,扩展硬件系统
通信协议:制定通信的规则,通信双方按照协议规则进行数据收发

在这里插入图片描述

串口通信
串口是一种应用十分广泛的通讯接口,串口成本低、容易使用、通信线路简单,可实现两个设备的互相通信
单片机的串口可以使单片机与单片机、单片机与电脑、单片机与各式各样的模块互相通信,极大地扩展了单片机的应用范围,增强了单片机系统的硬件实力

TTL电平:+3.3V或+5V表示1,0V表示0
RS232电平:-3 ~ -15V表示1,+3 ~ +15V表示0
RS485电平:两线压差+2 ~ +6V表示1,-2 ~ -6V表示0(差分信号)

波特率:串口通信的速率
起始位:标志一个数据帧的开始,固定为低电平
数据位:数据帧的有效载荷,1为高电平,0为低电平,低位先行
校验位:用于数据验证,根据数据位计算得来
停止位:用于数据帧间隔,固定为高电平

在这里插入图片描述

USART(Universal Synchronous/Asynchronous Receiver/Transmitter)通用同步/异步收发器
USART是STM32内部集成的硬件外设,可根据数据寄存器的一个字节数据自动生成数据帧时序,从TX引脚发送出去,也可自动接收RX引脚的数据帧时序,拼接为一个字节数据,存放在数据寄存器里
自带波特率发生器,最高达4.5Mbits/s
可配置数据位长度(8/9)、停止位长度(0.5/1/1.5/2)
可选校验位(无校验/奇校验/偶校验)
支持同步模式、硬件流控制、DMA、智能卡、IrDA、LIN

STM32F103C8T6 USART资源: USART1、 USART2、 USART3

USART基本结构
在这里插入图片描述

数据模式
HEX模式/十六进制模式/二进制模式:以原始数据的形式显示
文本模式/字符模式:以原始数据编码后的形式显示
在这里插入图片描述

Hex数据包

在这里插入图片描述
文本数据包

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/72945.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

使用spire.pdf往某个位置处写文本信息

使用开发工具idea2022,java1.8版本,利用spire.pdf往一个现成的pdf中写入文本信息,经过一番研究,实现了,现在贴出代码分享: 首先导入Spire.Pdf.jar到maven汇总,因为我采用他的官网在pom中加依赖…

用DevExpress实现基于HTMLCSS的桌面应用程序的UI(三)

DevExpress WinForm拥有180组件和UI库,能为Windows Forms平台创建具有影响力的业务解决方案。DevExpress WinForm能完美构建流畅、美观且易于使用的应用程序,无论是Office风格的界面,还是分析处理大批量的业务数据,它都能轻松胜任…

Spring Boot超大文件上传,实现秒传

文件上传是一个老生常谈的话题了,在文件相对比较小的情况下,可以直接把文件转化为字节流上传到服务器,但在文件比较大的情况下,用普通的方式进行上传,这可不是一个好的办法,毕竟很少有人会忍受,…

VMware Fusion 13.0 SLIC 2.6 MOD

请访问原文链接:VMware Fusion 13.0 SLIC 2.6 MOD,查看最新版。原创作品,转载请保留出处。 作者主页:www.sysin.org 使用 VMware Fusion 在虚拟机 (VM) 中运行 Windows、Linux、容器、Kubernetes 等而无需重新启动,充…

电信CDMA PDU短信号码字段编码转换的python实现

参考链接:CDMA(3GPP2)SMSPDU全解析-爱码网 CDMA SMS pdu解码_zx249388847的博客-CSDN博客_cdma smscdma pdu解析终极文档_月之海的博客-CSDN博客CDMA PDU 编解码补充解析_zx249388847的博客-CSDN博客 CDMA – lytsings Blog 一、PDU串解析 CDMA的pdu格式与GSM的相…

JavaMail 网易邮件发送demo-发送带附件的邮件

本文为joshua317原创文章,转载请注明:转载自joshua317博客 JavaMail 网易邮件发送demo-发送带附件的邮件 - joshua317的博客 使用Java应用程序发送 E-mail,需要在机子上安装 JavaMail API 和Java Activation Framework (JAF) 。 可以从 Java 网站下载最…

装饰器(Decorator)模式Recap

设计模式是一套积累并融合了大量经验与成熟思考的设计心法,每一个程序员在成长道路上都应该始终保持对最佳设计方案的不断追求。设计模式也会常用常新,值得反复研究和应用。本文简单Recap一下装饰器(Decorator)模式。 说句体外话…

【Paper】2020_离散多智能体系统的事件触发二分一致性研究_刘雨欣

文章目录第 4 章 有向符号图下离散多智能体系统的事件触发二分一致性4.3.1 示例一4.3.2 示例二系统 动态方程、控制输入及事件触发条件分别如式(2.1)、(3.1)及式(3.6)所示。 本文考虑一阶离散多智能体系统,第 iii 个智能体的动态方程如下: xi(k1)xi(k)ui(k)(2.1)\b…

千字长文!C++每日一练——Day3

🐑本文作者:C橙羊🐑 🎮🔊本文代码适合编译环境:DEV-C💻 ✨🧨温馨提示:此文乃作者心血,如要转载请标注版权,否则视为抄袭!&#x1f389…

多线程——线程同步器CountDownLatch

多线程——线程同步器CountDownLatch(一)CountDownLatch案例入门【1】CountDownLatch和join的区别【2】CountDownLatch案例一:等待线程等待工作线程【3】CountDownLatch案例二:主线程main等待子线程【4】CountDownLatch案例三&…

.NET Conf China 2022 精彩回顾 | IOT专场

12月充满惊喜 各种美好的节日纷至沓来 奖励一年辛苦劳作的我们 本月程序员第一场节日 就是精彩的 .NET Conf China 2022 .NET Conf China 2022是面向开发人员的社区峰会,延续 .NET Conf 2022的活动,庆祝 .NET7的发布和回顾过去一年来 .NET在中国的发…

举个栗子~Alteryx 技巧(4):教你设置 Alteryx Server 用户权限

分析用户在用 Alteryx Designer 创建好工作流之后,如何在企业内部实现共享和管理分析工作流程、模型及数据呢?方法很简单:发布到 Alteryx Server ! Alteryx Server 通过内置的数据治理、集中管理的安全性和高可用性,可…

svn:E720005 move .svn/tmp拒绝访问

cleanup也clean不了 此时要用sqlite3.exe来解决了到有.svn的目录地下,把sqllite3.exe拷贝到这个下面 在目录里面打开cmd窗口,执行 sqlite3 .svn/wc.db "select * from work_queue" 如果查出内容,那么执行 sqlite3 .svn/wc.db …

【Dubbo3高级特性】「性能优化技术」Dubbo3完成扩展使用高效的Kryo和FST序列化开发实战

系列文章目录 如果你看到了这里,那么接下来你将会认识Dubbo3的诞生将如何引领微服务领域更进一步,从而迈入云原生的领域,这当然不仅仅是Dubbo3,之前也介绍了Java生态另外一个云原生领域的技术Quarkus等技术,而本文内容…

Spring Boot 实现微信点餐系统

架构 前后端分离: 部署架构: 补充: setting.xml 文件的作用:settings.xml是maven的全局配置文件。而pom.xml文件是所在项目的局部配置。Settings.xml中包含类似本地仓储位置、修改远程仓储服务器、认证信息等配置。 maven的作用…

校招求职经验分享——我是如何本科进入大厂的

写在开头 最近签完了三方,大学前三年的生涯规划和努力最终还是得到了兑现,脑子里不断涌现这几年来的经历,一直想着写点什么东西记录一下,刚好大四空闲时间真的太多,心血来潮,不如还是写写吧,记录…

mysql cdc 整库迁移 (mysql to mysql)

技术思想 利用 mysql catalog,mysql cdc,flink jdbc 等技术实现 mysql 整库迁移至下游数据库,这里是示范 mysql to mysql ,其他 sink 组件可自行扩展实现。 通过 flink ParameterTool,可以选择是整库同步还是多表亦或…

2023年天津天狮学院专升本报名考试的安排

天津天狮学院2023年高职升本科考试报名时间安排的通知 一、报名条件 报名条件和具体要求按照天津市招生委员会的文件规定执行。考生必须完成文化课报名环节,且填报天津天狮学院志愿,且具备我校提出的线上考试条件,方可报考我校专业课考试。考…

Java作业

这里写自定义目录标题java16次作业新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是…

python-网络编程

python-网络编程 网络编程的理论概述: 现在的生活离不开网络,例如手机,电脑,平板,都是网络的代名词,通过一些APP,浏览器,获取大量的信息如 文字、声音、视频,这都是从网…