微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 硬件电路设计 > TI模拟硬件电路设计 > DAC8750输出的问题

DAC8750输出的问题

时间:10-02 整理:3721RD 点击:

原理图RT所示:

应该没啥问题,代码是按照网上成功的朋友写的:

void DAC8750_Write(u8 add,u16 data)
{
	u8 i;
	u8 h_8bit,l_8bit;

	h_8bit = (data>>8)&0x00FF;
	l_8bit = data&0xFF;

	LAT_0;

	for(i=8;i>0;i--)  //写8位地址;
		{
		SCK_0;

		if(add&0x80){DIN_1;}
		else{DIN_0;}
		
		SCK_1;
		add<<=1;
		}

	for(i=8;i>0;i--) //写高8位数据;
		{
		SCK_0;
		
		if(h_8bit&0x80){DIN_1;}
		else {DIN_0;}

		SCK_1;

		h_8bit <<=1;
		}

	for(i=8;i>0;i--) 	//写低8位数据;
		{
		SCK_0;
		
		if(l_8bit&0x80){DIN_1;}
		else{DIN_0;}

		SCK_1;

		l_8bit <<=1;
		}
	
	LAT_1;
	DIN_1;
}


void DAC8750_Config(void)
{
	DAC8750_Write(0x56,0x0001);					//复位所有寄存器;
	DAC8750_Write(0x55,0x100d);					//控制寄存器设置;  0001 0000 0000 1101
	DAC8750_Write(0x57,0x0000);					//配置寄存器设置;
//	DAC8750_Write(0x01,0xfdff);
	DAC8750_Write(0x01,0);						//输出0;
}


void DAC8750_Init(void)
{
	GPIO_InitTypeDef GPIO_InitStructure;
	RCC_APB2PeriphClockCmd(DAC8750_RCC, ENABLE);

	GPIO_InitStructure.GPIO_Pin = DAC8750_DIN | DAC8750_LAT | DAC8750_SCK;
	GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_OD;
	GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
	GPIO_Init(DAC8750_GPIO,&GPIO_InitStructure);

	DAC8750_Config();
}


void DAC8750_Out(u16 data)
{
	DAC8750_Write(0x01,data);
}

但是现在没有电流输出?请问一下哪里有问题么?

REF-OUT引脚输出是5V

现在是有电流值了,但是电流值完全不对?

我发送  DAC8750_Out(0xFFFF)

用电流表测得电流才11.068ma?

然后发送0x7FFF   电流变成了3.129ma,大家帮忙看一下 还是哪里设置的有问题呀?

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top