tlv5618.c

来自「本程序是一个人机接口程序」· C语言 代码 · 共 46 行

C
46
字号
#include "common.h"

//设置DAC电压
//channel=1:A通道
//channel=2:B通道
//value:0-4095
//输出电压=2.5*2*value/4096
//注意:因为VCC=5V,故输出接近5V的电压可能会有因供电电压限制产生的误差

void Set_DAC(unsigned char channel,unsigned int value)
{
	unsigned char i;
 	
	if(value>4095) return;

	if(channel==1) 
	{
		if(value==0) Set_Relay(2,1);
		else Set_Relay(2,0);
	}
	if(channel==1) value+=0xc000;
	else value+=0x4000;
	DAC_DIN=1;
	DAC_SCLK=1;
	DAC_CS=0;
	_nop_();
    ACC = value/256;
    for(i=8; i>0; i--)
    {
        DAC_DIN = A7; 
		DAC_SCLK = 1;
		DAC_SCLK = 0;
		ACC = ACC << 1; 
	} 
    ACC = value%256;
    for(i=8; i>0; i--)
    {
        DAC_DIN = A7; 
		DAC_SCLK = 1;
		DAC_SCLK = 0;
		ACC = ACC << 1; 
	} 
	_nop_();
	DAC_CS=1;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?