嵌入式(三十一):DACADC
1、DAC:Digital to Analog Convertor:数模转换(DA,D/A)
2、ADC:Analog to Digital Convertor:模数转换(AD,A/D)
3、DAC基本原理:
a、将输入数字量转换成模拟量输出
b、电流型:输出电流与输入数字成正比
c、电压型:输出电压与输入数字成正比
d、公式:
最小电压(电流)增量VLSB
满度输出电压(电流)VOM
DA转换位数(二进制)n
n越大, VLSB越小,转换精度越高
e、DAC转换器(倒T电阻网络,n=4):
f、电阻网络只有R和2R(易于生成控制和集成实现)精度高
g、开关在虚地(地电平)和地之间切换,切换换支路电流不变(不产生过渡过程),速度快
h、电阻网络总等效电阻值R,当:参考电源为Vref时:
i、D/A转换器主要参数:
①、分辨率:最小输出电压与最大输出电压值比,取决于D/A转换器的位数
②、转换精度:输出模拟电压的实际值和理论值之差,即最大静态误差
③、转换时间:完成一次转换需要的时间,是从数字量加到D/A转换器的输出端到输出稳定的模拟量需要的时间。D/A转换器的位数越多,转换时间越长,一般在零点几微妙到数十微秒之内
4、ADC基本原理:
a、将模拟量变换成数字量输出
b、A/D功能:将模拟电压成正比地转换成数字量
c、模拟量:时间、空间连线变化
d、采样:定时时间上、瞬间对信号采样并保持
e、模拟量的数字化表示:一系列定时瞬间采样值
f、常见ADC(根据转换原理分类):
①、并联比较型ADC:速度最快、精度难提高(超高速场合,10nS级)
②、跟踪计数型ADC:速度慢,容易实现
③、逐次比较型ADC:速度快(uS级,MCU中)
④、双积分型ADC : 速度慢,易于实现高精度(mS级,万用表)
⑤、∑-Δ型ADC:(新型)
⑥、V/F变换器:(间接ADC)
g、A/D转换器的主要参数:
①、分辨率:ADC输出数字量的最低位变化一个数码时,对应输入模拟量的变化量,用二进制或十进制表示。如8位或10位ADC能分辨最大模拟电压为1/28或1/210。
②、转换误差(转换精度):实际输出数字量与理论值之差,用相对误差表示。
③、转换速度:完成一次转换所需要的时间为转换速度。
5、DMA,Direct Memory Access为CPU高效减负
a、计算机几种工作方式
①、正常程序方式(基本冯诺依曼工作方式)
②、中断方式(硬件异常事件快速响应)
③、DMA(高效传输数据)
b、不需要CPU进行数据传输,只需要告诉DMA控制器起始位置,传送位置等,而不需要CPU翻译指令,直接可以实现数据传输。DMA控制器可以控制总线。
c、DMA可以(代替CPU)控制总线——用于传输数据
d、DMA与CPU协商总线控制权:
①、可DMA优先(经常,因为DMA的传输效率高)
②、可CPU优先
e、DMA工作方式/状态、控制等管理——类似于一个特殊的IO功能模块
f、可以同时具有多个DMA控制器和通道数
g、STM32F103具有DMA功能
h、DMA只是一种数据传输方式,很多设备(如打印机)可以采用DMA方式进行数据传输。支持DMA的外设需要自己计算传播的具体地址。
嵌入式(三十一):DACADC相关推荐
- 【正点原子FPGA连载】第三十一章基于lwip的echo server实验 摘自【正点原子】DFZU2EG_4EV MPSoC之嵌入式Vitis开发指南
第三十一章基于lwip的echo server实验 随着物联网的兴起,万物互联需要一个强大而又灵活的协议体系,TCP/IP协议得天独厚,而在嵌入式网络设备中,由于硬件资源的限制,需要特殊的实现方式.L ...
- 【正点原子Linux连载】第三十一章 U-Boot顶层Makefile详解 -摘自【正点原子】I.MX6U嵌入式Linux驱动开发指南V1.0
1)实验平台:正点原子阿尔法Linux开发板 2)平台购买地址:https://item.taobao.com/item.htm?id=603672744434 2)全套实验源码+手册+视频下载地址: ...
- 第三十一章 SQL函数 CONVERT
文章目录 第三十一章 SQL函数 CONVERT 参数 描述 CONVERT(datatype,expression,format-code) {fn CONVERT(expression,datat ...
- 【FastDev4Android框架开发】RecyclerView完全解析之下拉刷新与上拉加载SwipeRefreshLayout(三十一)...
转载请标明出处: http://blog.csdn.net/developer_jiangqq/article/details/49992269 本文出自:[江清清的博客] (一).前言: [好消息] ...
- Python编程基础:第三十一节 文件读取Read a File
第三十一节 文件读取Read a File 前言 实践 前言 当我们检测到文件之后就可以读取其中的内容,读取所用到的函数是read(). 实践 我们依然以上一节的lyric.txt为例展示如何读取文件 ...
- OpenCV学习笔记(三十一)——让demo在他人电脑跑起来 OpenCV学习笔记(三十二)——制作静态库的demo,没有dll也能hold住 OpenCV学习笔记(三十三)——用haar特征训练自己
OpenCV学习笔记(三十一)--让demo在他人电脑跑起来 这一节的内容感觉比较土鳖.这从来就是一个老生常谈的问题.学MFC的时候就知道这个事情了,那时候记得老师强调多次,如果写的demo想在人家那 ...
- 三十一、Java多线程编程(下篇)
@Author:Runsen @Date:2019/11/07 作者介绍:Runsen目前大三下学期,专业化学工程与工艺,大学沉迷日语,Python, Java和一系列数据分析软件.导致翘课严重,专业 ...
- FreeSql (三十一)分区分表
分区 分区就是把一个数据表的文件和索引分散存储在不同的物理文件中.把一张表的数据分成N多个区块,这些区块可以在同一个磁盘上,也可以在不同的磁盘上,数据库不同实现方式有所不同. 与分表不同,一张大表进行 ...
- 第三十一章 考试作弊
第三十一章 考试作弊 "对了,还有李淳风,把李淳风也一并记录上,并移送官府." "李丽质,你搞错了没有,把我移送官府干什么?我又没参与考试,并且这些都会,我凭什么作弊,我 ...
- 【零基础学Java】—Java 日期时间(三十一)
[零基础学Java]-Java 日期时间(三十一) java.util.Date:表示日期和时间的类 类Date表示特定的瞬间,精确到毫秒 毫秒:千分之一秒,1000毫秒=1秒 特定的时间:一个时间点 ...
最新文章
- 软件测试数据存储位置,关于数据存储类型的一点分析
- 2019春第一次课程设计实验报告
- 调试JavaScript代码
- 决策树之前要不要处理缺失值_不要使用这样的决策树
- 这是2019年适合Java程序员读的10本书
- 步进电机为什么无法高速启动?
- mysql导出表到新建_用navicat导出mysql的数据库后,再用navicat导入到新建的数据库,报错。...
- 【Laravel】快速查阅手册
- keil4找不到c语言头文件路径,keil4中头文件路径设置的方法汇总
- 使用VNC远程登录百度智能云服务器
- 科学计算机r系数的操作,相关系数,确定系数(R^2)计算公式与在线计算器_三贝计算网_23bei.com...
- 杭州卧兔:全球品牌出海峰会大咖集聚讲述品牌出海关键要素
- ElasticSearch 分片(Shards)的详解
- 霹雳吧啦wz学习笔记1_卷积神经网络
- 一文读懂MES系统生产调度管理功能
- 产品经理进修第四天 产品增长怎么做
- 微信公众平台可以修改微信号了,微信号怎么设置好。
- k8s资源之service
- 大学计算机作业互评评语简短,大学学生互评评语100字
- Ubuntu 7.04 feisty 安装设置笔记