msp430f2618写16位双通道 SPI接口DA DAC8552 精确度超高
Posted xxniuren
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了msp430f2618写16位双通道 SPI接口DA DAC8552 精确度超高相关的知识,希望对你有一定的参考价值。
直接上代码,我就不做太多解释了。。
#include "msp430x26x.h"
#include "DAC8552.H"
//===============DELAY=========================
void delay_DA(uint xms)
uint i,j;
for(i = xms; i > 0; i--)
for(j = 220; j > 0; j--);
/*******************************************
函数名称:write_DAC8552
功 能:写8552DA芯片
参 数:data 24位数据
返回值 :无
********************************************/
void write_DAC8552(long int data)
uint i;
DAC8552_DIR;
DAC8552_OUT;
CS_H;
CS_L;
delay_DA(1);
for(i = 0; i < 24; i++)
SCLK_H;
if(data & 0x800000) DATA_H;
else DATA_L;
SCLK_L;
delay_DA(1);
data <<= 1;
SCLK_L;
CS_H;
/*******************************************
函数名称:write_DAC8552_channelAB
功 能:写8552DA芯片
参 数:data 24位数据
返回值 :无
********************************************/
void write_DAC8552_channelAB(long int data1,long int data2)
data1 = data1 | 0x000000;
write_DAC8552(data1);
delay_DA(5);
data2 = 0x340000 | data2;
write_DAC8552(data2);
delay_DA(5);
/*******************************************
函数名称:updata_DAC8552_channelAB
功 能:更新数据
参 数:data 24位数据
返回值 :无
********************************************/
void updata_DAC8552_channelAB(long int data1,long int data2)
data1 = data1 | 0x100000;
write_DAC8552(data1);
delay_DA(5);
data2 = data2 | 0x240000;
write_DAC8552(data2);
delay_DA(5);
以上是关于msp430f2618写16位双通道 SPI接口DA DAC8552 精确度超高的主要内容,如果未能解决你的问题,请参考以下文章