DAC芯片CBM128S085

一、硬件介绍

             1.1 芯片内部框架图

              1.2 CBM12S085引脚定义

                      引脚介绍             

!(DAC SYNC)电平触发控制输入(低电平有效)
SCLK时钟输入
DAC DIN串行数据输入

                      VOUTA-H则是对应的8个电压模拟输出通道。

 

二、软件实现

        2.1连续写操作时序图 

         2.2 cbm128s085.h头文件

#define     DAC_SCLK_PIN	GPIO_Pin_4          
#define     DAC_DIN_PIN     GPIO_Pin_5         
#define     DAC_SYNC_PIN    GPIO_Pin_6         
#define     DAC_PORT        GPIOF  

#define     DAC_CBM128_CS    PFout(6)
#define     DAC_CBM128_CLK   PFout(4)
#define     DAC_CBM128_DATA  PFout(5)
/*
	8个通道,VREF参考电压由外部输入
	Vout = Vref * (D/N)
	D:输入数字信号 由串行接口写入内部DAC寄存器
	N:12位 4096.
*/ 
//ABCD通道采用VREF1参考电压
#define     Channel_A           0
#define     Channel_B           1
#define     Channel_C           2
#define     Channel_D           3
//EFGH通道采用VREF2参考电压
#define     Channel_E           4
#define     Channel_F           5
#define     Channel_G           6
#define     Channel_H           7

        2.3 cbm128s085 初始化

void DAC_CBM128S085_Init(void)
{
	GPIO_InitTypeDef  GPIO_InitStructure;
	
	GPIO_InitStructure.GPIO_Pin = DAC_SYNC_PIN | DAC_SCLK_PIN | DAC_DIN_PIN;
	GPIO_InitStructure.GPIO_Mode=GPIO_Mode_OUT;                                      
	GPIO_InitStructure.GPIO_OType=GPIO_OType_PP;                                     
	GPIO_InitStructure.GPIO_PuPd=GPIO_PuPd_NOPULL;  
	GPIO_InitStructure.GPIO_Speed=GPIO_Speed_100MHz;                              
	GPIO_Init(DAC_PORT,&GPIO_InitStructure);
	
	
	/*CBM128S085/CBM108S085 内部同时含有上电复位和断电复位电路*/
    /*模式选择*/
	CBM_WriteControlModeSelect(WTM);
	
}

  2.4 DAC 写字节

/********************************************************************************************
函数名:CBM_WriteByte
功能  :写入一个字节数据
参数  :一个字节数据
返回值:无
*********************************************************************************************/ 
void CBM_WriteByte(u8 txd)
{
	  u8 t;
	  u16 d;
    for(t=0;t<8;t++)
    { 
			//CLK下降沿发送数据
			DAC_CBM128_CLK = 1;		
			DAC_CBM128_DATA = (txd&0x80)>>7; //先发送数据最高位  
      txd<<=1; 	    //txd = txd<<1;
			DAC_CBM128_CLK = 0;	
			for(d=1;d>0;d--);    //延迟
    }	 
}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值