当前位置: 首页 > news >正文

C51_DAC数模转换

文章目录

  • 一、DAC
    • 1、分辨率
    • 2、线性度
    • 3、绝对精度
    • 4、建立时间
  • 二、DAC工作原理
  • 三、PWM
  • 四、原理图
  • 五、实例代码

一、DAC

DAC(Digital to analog converter)即数字模拟转换器,它可以将数字信号转换为模拟信号。

1、分辨率

DAC 的分辨率是输入数字量的最低有效位(LSB)发生变化时,所对应的输出模拟量(电压或电流)的变化量。
它反映了输出模拟量的最小变化值。

2、线性度

线性度(也称非线性误差)是实际转换特性曲线与理想直线特性之间的最大偏差。
常以相对于满量程的百分数表示。
如±1%是指实际输出值与理论值之差在满刻度的±1%以内。

3、绝对精度

绝对精度(简称精度)是指在整个刻度范围内,任一输入数码所对应的模拟量实际输出值与理论值之间的最大误差。

4、建立时间

建立时间是指输入的数字量发生满刻度变化时,输出模拟信号达到满刻度值的±1/2LSB 所需的时间。
是描述D/A转换速率的一个动态指标。
根据建立时间的长短,可以将DAC分成超高速(<1μS)、高速(10~1μS)、中速(100~10μS)、低速(≥100μS)几档。

二、DAC工作原理

DAC 输出电压计算公式:V0=Vref*z/256。
z表示单片机给的数字量,vref为参考电压,通常我们是接在系统电源上,即5V,数值256表示DAC精度为8位。
DAC 主要由数字寄存器、模拟电子开关、位权网络、求和运算放大器和基准电压源(或恒流源)组成。
用存于数字寄存器的数字量的各位数码,分别控制对应位的模拟电子开关,使数码为1的位在位权网络上产生与其位权成正比的电流值,再由运算放大器对各电流值求和,并转换成电压值。

三、PWM

PWM 是 Pulse Width Modulation 的缩写,中文意思就是脉冲宽度调制,简称脉宽调制。
参考《C51_PWM》

四、原理图

PWM输出控制管脚接在单片机P2.1管脚上,DAC1为PWM输出信号,将其连接一个LED,这样可以通过指示灯的状态直观的反映出PWM输出电压值变化。
LM358芯片与这些电容电阻构成了一个跟随电路,即输入是多少,输出即为多大电压,输出电压范围是0-5V。

五、实例代码

#include<REGX52.H>#include"Delay.h"#include"Timer0.h"sbit DA=P2^1;unsignedcharCounter,Compare;//计数值和比较值,用于输出PWMunsignedchari;voidmain(){Timer0_Init();while(1){for(i=0;i<100;i++){Compare=i;//设置比较值,改变PWM占空比Delay(10);}for(i=100;i>0;i--){Compare=i;//设置比较值,改变PWM占空比Delay(10);}}}voidTimer0_Routine()interrupt1{TL0=0x9C;//设置定时初值TH0=0xFF;//设置定时初值Counter++;Counter%=100;//计数值变化范围限制在0~99if(Counter<Compare)//计数值小于比较值{DA=1;//输出1}else//计数值大于比较值{DA=0;//输出0}}
http://www.cnnetsun.cn/news/22689.html

相关文章:

  • TikTok 矩阵稳定性实战指南:从环境搭建到风险防控的全链路方案​
  • 聊聊分段斜坡补偿电路在 BOOST 和 BUCK 系统中的应用
  • 搞过电机控制的都知道,调PI参数能让人头秃。今天咱们来拆解一个能自动整定电流环参数的Simulink仿真模型,手把手看它怎么把玄学变成科学
  • springboot基于vue的防诈宣传平台 可视化_ig18pfq1
  • springboot基于vue的阿克苏地区收割机租赁系统 农机销售交易网站_4j60pknt
  • 毕业设计项目 深度学习yolo11水果识别系统(源码+论文)
  • 毕业设计项目 深度学习动物识别系统(源码+论文)
  • PandasAI应用与实战解析
  • 如何在Linux上部署Web项目
  • 57、外设总线概述
  • 60、Linux内核源代码物理布局解析
  • Google Apps Script OAuth2 库完整指南:轻松实现第三方服务集成
  • PySceneDetect完整指南:零基础掌握视频智能分割技术
  • 24、结合psad和fwsnort保障网络安全
  • 32、网络攻击欺骗与 fwsnort 脚本详解
  • 师生交流论坛|基于springboot + vue师生交流论坛系统(源码+数据库+文档)
  • 二手商城|基于springboot + vue二手商城系统(源码+数据库+文档)
  • 20、帧缓冲区接口设计与 STBmenu 简易 UI 开发
  • 24、深入浅出:SNMP 实践指南
  • 高级前端 Input 公共组件设计方案(Vue3 + TypeScript)
  • 前后端HTTPS及证书配置完整流程
  • TIA博途虚拟机终极配置指南:V17+V16+V15.1全版本一键部署
  • 【开题答辩全过程】以 基于Java的人体骨骼健康知识普及系统为例,包含答辩的问题和答案
  • 企业微信开发总卡壳?试试cpolar,回调调试超顺畅
  • ChatPPT:国内综合实力最强的AI PPT工具
  • 测试经验,自动化测试的痛点+发展趋势,一篇带你上高速...
  • NetGuard实战指南:告别流量焦虑,让Android网络管理如此简单
  • 大厂已经不用人干活了?“AI中台+Agent”正在重塑商业规则
  • Qwen2.5-Omni全模态大模型:70亿参数重构人机交互范式
  • Morisawa BIZ UDGothic 字体使用指南:让文字表达更专业优雅