首页程序设计C51程序TLC5615 串行数模转换IC 驱动程序 C语言

TLC5615 串行数模转换IC 驱动程序 C语言

时间2015-06-09 19:29:21发布caterwang分类C51程序浏览2490

 

/*DA控制输出,二极管明暗闪烁*/
#include<reg51.h>
#include<intrins.h>
#define uint  unsigned int
#define uchar unsigned char
sbit  din  = P2^7;   //数据输入
sbit  sclk = P2^6;   //读定时钟
sbit  cs   = P2^5;   //器件片选
//延时毫秒函数:
void Delayms(unsigned int t)
{
unsigned int x,y;
for(x=t;x>0;x--)
for(y=120;y>0;y--);
} 
//写TLC5615数据函数:
void WriteTLC5615(unsigned int wdata)
{
unsigned char i;
cs=0;//片选使能
wdata<<=2;//将数据左移两位,补两位扩展位,组成12位数据写入
for(i=0;i<12;i++)//写入12位数据
{
sclk=0;
din=(wdata&0x0800)?1:0;//取出最高位(第11位)写入
sclk=1;//上升沿送数据
wdata<<=1;//下一位移到最高位
}
cs=1;//片选禁止
} 
//主函数:
int main(void)
{
unsigned int i;
    WriteTLC5615(512);
    while(1);
       while(1)
{
//因参考电压取自电源电压5V,输入数据达到512时,转换输出电压就已达到参考电压
//输入数据大于512时,输出电压已经无法再上升。
for(i=0;i<512;i++)
{
WriteTLC5615(i);//输入数据从0-512每间隔200ms递增,
Delayms(200);
//用万用表测量输出引脚,会看到电压从0V-4V每间隔200ms以约10mv递增
}
}
return 0;
}

 

凯特网版权声明:以上内容允许转载,但请注明出处,谢谢!

展开全文READ MORE
TLC5615DA单片机
C++builder常用函数 51单片机用定时器0方式2产生两档PWM信号(程序)

游客 回复需填写必要信息