STM32单片机仿真开发实例 课件 5.5 串行DAC MCP4921的使用_第1页
STM32单片机仿真开发实例 课件 5.5 串行DAC MCP4921的使用_第2页
STM32单片机仿真开发实例 课件 5.5 串行DAC MCP4921的使用_第3页
STM32单片机仿真开发实例 课件 5.5 串行DAC MCP4921的使用_第4页
STM32单片机仿真开发实例 课件 5.5 串行DAC MCP4921的使用_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

5.5串行DACMCP4921的使用能力目标:

掌握控制DAC芯片MCP4921输出电压的方法,并能编写相应的STM32程序。任务要求:仿真电路如下图所示,单片机控制MCP4921以1秒周期输出正弦波,正弦波波动范围0~3.3V。5.5.1MCP4921简介单片机控制系统中,有时会涉及到一些需要通过模拟量信号控制的执行器(比如变频器、电动阀门等),这就需要用到数模转换器(DigitaltoAnalogConverter,简称DAC),单片机将计算得到的数字量控制信号通过DAC转换成模拟量信号后控制执行器做出相应的动作。本次任务选择了独立的DAC芯片,其型号是MCP4921,如下图所示。MCP4921是美国MicroChip公司出品的串行12位DAC芯片,兼容SPI接口,最大通信频率20MHz,一次转换时间4.5μs,工作电压2.7~5.5V,能适应目前市面上主流的3.3V和5.0V工作电压的单片机。8个引脚的功能分别如下表所示。MCP4921只有数据输入,没有数据输出,单片机仅需将12位数字量连同4位配置信息一共16位数据一起打包发送给DAC,DAC随即开始数模转换过程,通信数据格式如表所示。

(表格往后翻页→)引脚序号名称功能引脚序号名称功能1VDD电源正极2片选线(低电平有效)7VSS电源负极3SCK时钟输入线6VREF参考电压4SDI数据输入线5同步输入控制8VOUT模拟量电压输出正极每一个配置位的含义如下:●,该位只能选0,因为MCP49xx系列DAC中有些型号具有两个DAC通道,通过0或1选择通道A或B,但MCP4921仅有A通道;●BUF,VREF输入缓冲器控制位,设1时缓冲,设0时未缓冲;●,输出增益选择位,设1时无增益,设0时两倍增益;●,待机模式设置位,设1时不进入待机模式,设0时进入待机模式。高字节MSB低字节LSB配置位数据位BUFB11B10B9B8B7B6B5B4B3B2B1B05.5.2任务程序的编制MCP4921是一个12位DAC,因此输入数字量的范围是0x000~0x3FF,输出模拟量电压范围从0~VREF,即无法输出负电压。为了输出完整的正弦曲线,不妨将正弦波曲线沿纵轴(电压/数字量)正向移动,确保波谷也位于横轴(时间)上方。

正弦波计算公式:

为了提高单片机CPU的执行效率,此处使用查表法,在1秒内,每隔0.02秒计算一次采样值,可以利用excel进行计算,如图。

计算结果如图。与任务5.4相同,分别将单片机的PA4、PA5、PA7设为片选线、时钟线、MOSI线,引脚设定参数可参照任务5.4,由于MCP4921没有SDO引脚,因此不需要使用单片机的PA6引脚

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论