这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 综合技术 » 基础知识 » 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 跳转至

回复

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