问题描述
解决方案
解决方案二:
拿去:
/*单片机与TLC5615接口位定义 */
#define TLC5615_CS
#define TLC5615_CLK
#define TLC5615_DIN
/***********************************************************
名 称: DAOutPut()
*功 能: 控制DAC的输出电压值
*入口参数: (Value/1024):将输出的电压值
*出口参数:无
*格 式:对于单片的TLC5615来说:10位有效位+低2位填充位
**********************************************************/
void TLC5615_Output(unsigned int Value)
{
char count;
/*TLC5615_CS 的上升沿与下降沿都必须发生在
TLC5615_CLK的低电平期间
*/
TLC5615_CLK = 0;
__nop();
__nop();
__nop();
__nop();
TLC5615_CS = 0; //使能通信
Value <<= 2; //左移两位,拓展成12位数据
for(count = 0 ;count<12 ;count++)
{
if(Value & 0x0800)//并-串转换,数据先高后低
{
TLC5615_DIN = 1;
}
else
{
TLC5615_DIN = 0;
}
TLC5615_CLK = 1;//上升沿送出数据
Value <<= 1; //数据往高位移位
__nop();
__nop();
__nop();
__nop();
__nop();
TLC5615_CLK = 0;
__nop();
__nop();
}
TLC5615_CS = 1; //输出数据
}