kinetics DAC数模转换模块

本文介绍了Kinetis微控制器的数模转换(DAC)模块,包括两个独立的12位DAC0和DAC1,它们能够将数字转换为模拟电压。内容涉及DAC的参考电压选择、数据转换原理、缓冲区设置、触发信号及中断功能,详细解析了相关寄存器的用途,如DAC数据寄存器、状态寄存器和控制寄存器,以及如何利用软件和硬件触发器进行连续转换。
摘要由CSDN通过智能技术生成

DAC数模转换模块

DAC简介

    Kinetis10包含两个独立的12位数模转换模块,DAC0和DAC1,用于将数字转换成对应的模拟电压。转换后的模拟电压可由外部引脚输出,也可以通过芯片内部连接输入到比较器模块、放大器模块、和模数转换模块。

    DAC的参考电压可以二选一,一个来自外部或VREF模块的输出,默认连接到DACREF_1;另一个时VDDA,默认连接到DACREF_2。如果选择VDDA,则DAC的参考电压为3.3V。

    12位二进制的表示范围为0~4095的无符号数。对应数据转换成模拟电压输出范围从VREF/4096~VREF。以VREF为3.3V计算,则是约0.8mV~3.3V,数据每变化1,输出电压变化约0.8mV。

     将数据放入DAC的数据寄存器(DACx_DATL中的DACDATA[11:0]位),即可将数据转换为模拟电压。电压Vout= VREF * (1 + DACDAT0[11:0])/4096。在大量数据转换的应用中,也可以将数据放入DAC的缓冲区,由触发源输入触发信号,在触发信号的触发下,自动挨个将缓冲区中的数据转换为模拟电压。

    缓冲区大小为1~16可设置大小的以word为单位的区域,转换的时候,由读指针指向正在转换的数据,可通过访问读指针获知当前正在转换的缓冲区单元。数据转换的次序为从顶部到底部依次转换,从顶部到底部之间,用户可设置位置标记(watermark)作为预警位置,当读指针指向缓冲区顶部、底部或位置标记处时,都有状态位可供查询,也可以发出中断请求。

    触发信号可来自PDB模块的TRIG输出详细可查看PDB模块设置。

    同时DAC模块也支持DMA操作,可通过DMA的方式向缓冲区中传递数据,大大提高了效率。

相关寄存器

1.        DAC数据低位寄存器(DACx_DATnL)


在没有启用数据缓冲区的情况下,DATA[11:0]控制输出的电压,该寄存器存放的是DATA[7:0]位,此时Vout= Vin *(1 + DACDAT0[11:0])/4096。

2.        DAC数据高位寄存器(DACx_DATnH)


该寄存器存放的是DATA[11:8]位。

注意,数据寄存器共16个word,每个word都由高8位DACx_DATnH和低8位DACx_DATnH组成。16个word组成DAC的缓冲区,如不使用缓冲区,则默认只使用DACx_DAT0H和DACx_DAT0L。

3.        DAC状态寄存器(DACx_SR)


该寄存器中包含DMA缓冲区读指针位置的有关标志。缓冲区大小为1~16可设置大小的以word为单位的区域,转换的时候,由读指针指向正在转换的数据,数据转换的次序为从顶部到底部依次转换,从顶部到底部之间,用户可设置位置标记(watermarkÿ

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值