中国电子技术网

设为首页 网站地图 加入收藏

 
 

基于MSP430F5529单片机的DAC8552

关键词:MSP430F5529 单片机 DAC8552

时间:2021-02-03 14:37:41      来源:网络

DAC8552是TI公司推出的16 位双路电压输出数模转换器,本次来介绍一下这个芯片在MSP430单片机上如何使用。

DAC8552是TI公司推出的16 位双路电压输出数模转换器,本次来介绍一下这个芯片在MSP430单片机上如何使用。

1.芯片的电路图介绍

一共才八个引脚,比较简单,具体介绍我就不说了,如果小伙伴们有疑问或者更具体的资料可以去官网直接去查datasheet,一共就二十来页,一会儿就看完了。

2.程序介绍

先来说一下dac8552库函数怎么写

void DAC8552_Init()
{
    P1DIR|=BIT3+BIT4+BIT5;   //配置MSP430的引脚
    SYNC_H;
    SCLK_H;
}

void DAC8552_Write(unsigned int cmd,unsigned int data)   //往里写命令和数据 
{
    unsigned int temp1=0,temp2=0;
    unsigned char i=0;
    temp2=data;
    temp1=cmd;
    SYNC_L;          //使能拉低 
    
    for(i=0;i<8;i++)    //  高8位写控制命令 
    {
        SCLK_H;
        if(temp1&0x80)
            DIN_H;
        else
            DIN_L;
        SCLK_L;
        temp1=temp1<<1;
    }
    
    
    for(i=0;i<16;i++)   //  低16位写数据 
    {
        SCLK_H;
        if(temp2&0x8000)
            DIN_H;
        else
            DIN_L;
        SCLK_L;
        temp2=temp2<<1;
    }


    SYNC_H;         //使能拉高 
}

OK是不是感觉非常简单

main函数更加简单,就是调用刚刚写过的函数,配置一下你想要的参数而已,还有更多的参数可以去翻阅datasheet

void main(void) {
    WDTCTL = WDTPW + WDTHOLD;   // Stop watchdog timer
    DAC8552_Init();
    while(1)
    {  write2DAC8552( 0x24,0xFFFF);//  0x24 B通道
                   //SYNC_HIGH;  //使能禁止
    }
}

  • 分享到:

 

猜你喜欢

  • 新闻
  • 新品
  • 方案

  • 主 题:安森美数字助听芯片的创新
  • 时 间:2024.05.09
  • 公 司:安森美

  • 主 题:IO-Link 技术介绍及相关设计解决方案
  • 时 间:2024.05.22
  • 公 司:ADI & Arrow