打印

初学者遇到一个关于DA转换 TLC5615问题,请高手解释一下.

[复制链接]
2124|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
P0.0|  楼主 | 2010-5-8 10:43 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 P0.0 于 2010-5-8 10:46 编辑

//DA转换TLC5615

#include<reg51.h>
#define uint unsigned int
#define uchar unsigned char
uchar i;
uint da,shu;
sbit  din=P1^0;//数据输入
sbit  sclk=P1^1;//时钟
sbit  cs=P1^2;//片选
void main()
{
TMOD=0X01;
TH0=(65535-50000)/256;
TL0=(65535-50000)%256;
EA=1;
ET0=1;
TR0=1;
sclk=0;
while(1)
{
}
}
void timeint() interrupt 1
{
cs=0;
TH0=(65535-50000)/256;
TL0=(65535-50000)%256;
shu++;
da=shu;
da <<= 6;
for(i=0;i<12;i++)
  {
   din =(bit)(da & 0x8000);
     sclk=1;
   da<<=1;
     sclk=0;
  }
  cs = 1;
    sclk = 0;
  
}

在TLC5615第7引脚端能得到0-5.5V之间变化的电压.但我不明白的是,TLC5615是10位D/A转换,按理应该i=10才对,每次运算得到1位,10次就是10位。为何此处要i=12

原理图.jpg (38.28 KB )

原理图.jpg

相关帖子

沙发
znmcu| | 2010-5-8 11:14 | 只看该作者
可以去看我的《单片机基础外设9日通》 视频教程 TLC5615 一集 https://bbs.21ic.com/viewthread.php?tid=159589&page=7#pid1126024



也可以到 http://v.znmcu.cn  下载 ,有更多的视频

使用特权

评论回复
板凳
ayb_ice| | 2010-5-8 11:16 | 只看该作者
看手册吧

使用特权

评论回复
地板
P0.0|  楼主 | 2010-5-8 14:03 | 只看该作者
2# znmcu
原来是振南大哥,你的教程我看了一些,不过很可惜画面不是很清楚.如: 并且还有好多节没得下载的.真郁闷。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

5

主题

65

帖子

1

粉丝