TI中文支持网
TI专业的中文技术问题搜集分享网站

DAC8750输出的问题

原理图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

kanghui zhao:

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

我发送  DAC8750_Out(0xFFFF)

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

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

hanqian wu:

回复 kanghui zhao:

博主 问下 你之前 没有输出的问题是怎么解决的啊

Fei Yin2:

楼主是怎么解决没有输出的问题的?我这里也没输出

赞(0)
未经允许不得转载:TI中文支持网 » DAC8750输出的问题
分享到: 更多 (0)