这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界» 论坛首页» 综合技术» 基础知识» TLC5615 `求救TLC5615的C语言程序!!!

共2条 1/1 1 跳转至

TLC5615 `求救TLC5615的C语言程序!!!

院士
2006-09-17 18:14:16 打赏
TLC5615 `求救TLC5615的C语言程序!!!



关键词: TLC5615 求救 语言程序

院士
2006-12-22 22:43:00 打赏
2楼
问 各位老师你好!
我这几天调试 TLC5615,DA转换的程序,为什么输出总是没有呢?请赐教!下面是我编的程序,你看看错误出现在哪里?
/******************************************************
TLC5615的位定义
/******************************************************/
sbit TLV5616_SCLK=P3^1 ;
sbit TLV5616_DIN=P3^0 ;
sbit TLV5616_CS=P2^7 ;
/******************************************************/
#define HIGH 1

#define LOW 0

void TLV5616ExportVol(uint da)

{
//uint idata da;
uchar idata i;
TLV5616_CS = HIGH;
TLV5616_SCLK = LOW;
TLV5616_DIN = LOW;
//da = (vol / 5000) * 4096; /* 计算输出电压的DA值,公式: vol = 2*REF*DA/0x1000(v) */

TLV5616_CS = LOW;
delay7(20);
for(i=0; i<12; i++)
{
TLV5616_SCLK = LOW;

if(da & 0x0800)
TLV5616_DIN = 1;
else
TLV5616_DIN = 0;
delay7(20);
TLV5616_SCLK = HIGH;
da = da << 1;
}
TLV5616_SCLK = LOW;

TLV5616_CS = HIGH;

}
/*--------刷新延时程序----------------*/

void delay7(uchar j)
{do
{}
while(j--);}
void main()
{while(1)
TLV5616ExportVol(2000);
}
结果5615的输出一直为0,不知道什么原因,真是急人啊,我都调了一个星期
了。有没有调试好了的程序,给我发一份,不胜感激,谢谢啊!


1: 应该先写入两个"0"吧!数据不是12位,应该是10位.sub-LSB 两位应该是0

共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册]