MSP430程序库(八)DAC12的使用

MSP430程序库(八)DAC12的使用

ID:36854232

大小:371.31 KB

页数:5页

时间:2019-05-16

MSP430程序库(八)DAC12的使用_第1页
MSP430程序库(八)DAC12的使用_第2页
MSP430程序库(八)DAC12的使用_第3页
MSP430程序库(八)DAC12的使用_第4页
MSP430程序库(八)DAC12的使用_第5页
资源描述:

《MSP430程序库(八)DAC12的使用》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、MSP430程序库<八>DAC12的使用MSP430带有的DAC12模块,可以将运算处理的结果转换为模拟量,以便操作被控制对象的工作过程。DA是在控制操作过程中常用的器件之一;MSP430有些系列中含有DAC12模块,给需要使用DA的方案提供了许多方便。这里实现较为简单的DAC的驱动,方便以后使用。1.硬件介绍:MSP430x14x系列不含DAC12模块,所以本文的实现只能用于16系列等含有DAC12模块的单片机中。MSP430F169单片机的DAC12模块有2个DAC通道,这两个通道在操作上是完全平等的。并且可以用DAC12GRP控制位将多个DAC12通道组合起来,实现同步更新,硬件还

2、能确保同步更新独立于任何中断或者NMI事件。这个DAC12模块有以下特点:8位或12位分辨率可调、可编程时间对能量的损耗、可选内部或外部参考源、支持二进制原码和补码输入、具有自校验功能、可以多路DAC同步更新、还可以用DMA等。这里实现的是较为简化的版本,需要可以自己添加或改写功能,如:初始化函数内部调用自校验的函数,可以在每一次初始化时候均自校验。DAC12每个模块只有两个寄存器:控制寄存和数据寄存器,控制寄存器用来初始化和设置模块的使用,数据寄存器用来存放要输出的电压数字量。169的DAC的寄存器如下:DAC12_0控制寄存器DAC12_0CTLDAC12_0数据寄存器DAC12_0

3、DATDAC12_1控制寄存器DAC12_1CTLDAC12_1数据寄存器DAC12_1DAT控制寄存器每一位的功能如下:DAC12REFx:选择DAC12的参考源0,1Vref+2,3Veref+DAC12RES:选择DAC12分辨率012位分辨率18分辨率DAC12LSELx:锁存器触发源选择当DAC12锁存器得到触发之后,能够将锁存器中的数据传送到DAC12的内核。当DAC12LSELx=0的时候,DAC数据更新不受DAC12ENC的影响。0DAC12_XDAT执行写操作将触发(不考虑DAC12ENC的状态)1DAC12_XDAT执行写操作将触发(考虑DAC12ENC的状态)2Ti

4、mer_A3.OUT1的上升沿3Timer_B7.OUT2的上升沿DAC12CALON:DAC12校验操作控制置位后启动校验操作,校验完成后自动被复位。校验操作可以校正偏移误差。0没有启动校验操作1启动校验操作DAC12IR:DAC12输入范围设定输入参考电压和输出的关系0DAC12的满量程为参考电压的3倍(不操作AVcc)1DAC12的满量程为参考电压DAC12AMPx:DAC12运算放大器设置0输入缓冲器关闭,输出缓冲器关闭,高阻1输入缓冲器关闭,输出缓冲器关闭,0V2输入缓冲器低速低电流,输出缓冲器低速低电流3输入缓冲器低速低电流,输出缓冲器中速中电流4输入缓冲器低速低电流,输出缓

5、冲器高速高电流5输入缓冲器中速中电流,输出缓冲器中速中电流6输入缓冲器中速中电流,输出缓冲器高速高电流7输入缓冲器高速高电流,输出缓冲器高速高电流DAC12DF:DAC12的数据格式0二进制1二进制补码DAC12IE:DAC12的中断允许0禁止中断1允许中断DAC12IFG:DAC12的中断标志位0没有中断请求1有中断请求DAC12ENC:DAC12转换控制位DAC12LSEL>0的时候,DAC12ENC才有效。0DAC12停止1DAC12转换DAC12GRP:DAC12组合控制位0没有组合1组合详细的有关DAC12的资料可以参考TI提供的用户指南。2.程序实现:DAC12模块的程序比较

6、简单,因为每组只有一个寄存器用来控制;本程序实现的功能如下:DAC模块初始化,完成两个DAC模块的初始化,可以根据参数判断要是、初始化的是哪个模块或两个都初始化,或是两个一组同时更新;用参数传递DAC12AMPx的值,方便设置,程序中注释很详细,如果不理解,可以直接设AMPx为5或0x05;校准函数,完成DAC12模块的自校准,也是通过参数传递要校准的模块;电压输出函数,同样这个也是用参数传递要输出的模块。初始化:/*********************************************************函数名称:DAC12Init*功能:DAC12用到的相关资源

7、初始化*参数:*module模块0:使用模块DAC12_0*1:使用模块DAC12_1*2:使用模块DAC12_0/1*3:使用模块DAC12_0/1共同更新*DAC12AMPx:DAC运算放大器设置:*0输入缓冲器关闭,输出缓冲器关闭,高阻*1输入缓冲器关闭,输出缓冲器关闭,0V*2输入缓冲器低速/电流,输出缓冲器低速/电流*3输入缓冲器低速/电流,输出缓冲器中速/电流*4输入缓冲器低速/电流,输出缓冲器高速/电流*5输入缓冲器中

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。