成都网站建设设计

将想法与焦点和您一起共享

记一次DAC转换功能修改的解决

最近的项目捣鼓msp430需要用到dac转换以输出模拟信号,项目代码是接手前同事的 有些地方调试不通,以前没有接触过msp430芯片,更是没搞过这种芯片io口时序驱动层的东西,甚至纯c的都是头一次作为工作正式用。没办法 万事开头难嘛 ,硬着头皮网上到处翻资料 找芯片的手册 找dac外设的寄存器说明,功夫不负有心人 最终还是被我解决了。

达日ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为成都创新互联的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:18982081108(备注:SSL证书合作)期待与您的合作!

记录一下解决的过程

首先对以前的代码浏览了一遍,以及对网上到处抄过去抄过来的文章有了个初步的大概套路了解。首先这是一个12位的dac外设 ,先对他进行初始化就是 设置参考电压源 设置各个寄存器 打开外设,然后12位嘛 自然是0x00~0xfff输出对应电压。就像下面这样,事先我已经确保了硬件连线是正确的,知道了DAC12_0CTL是寄存器控制位,知道了DAC12ENC是使外设工作,DAC12_0DAT是输出模拟量。

1 //不能使用内部参考电压 会影响到温度传感器
2   //ADC12CTL0 = REFON + REF2_5V;// 参考电压为内部2.5v
3   DAC12_0CTL = DAC12AMP_5 + DAC12IR + DAC12LSEL_0;//控制寄存器设置,自动更新数据,内基准为满量程
4   DAC12_0CTL |= DAC12SREF_2;//使用外部参考电压 外部的为3.3v
5   DAC12_0CTL |= DAC12ENC; // 启动DAC模块(DAC12LSEL_0时此句可以省,这里设置为1)
6   DAC12_0DAT = 0x0000;    //DAC初值为0,更新这个寄存器就可以更改DAC输出数据

新闻名称:记一次DAC转换功能修改的解决
标题网址:http://chengdu.cdxwcx.cn/article/dsoiphi.html