51单片机的D/A转换 TLC5615的一个程序问题

void input(uint dat)
{
uchar j;

clk=0;
cs=0;
dat<<=6;
for(j=0;j<12;j++)
{
if(dat&0x8000)
din=1;
else
din=0;
clk=1;
dat<<=1; //左移一位,并且使其有时间读入数据
clk=0;

}

cs=1;
}

结果输入256 器件测出来时5*512/1024=2.5v 中间撮了一位。。但是检查几遍程序都没检查出来。。在哪里错位的?

这里的逻辑好像有问题
for(j=0;j<12;j++)
{
if(dat&0x8000)
din=1;
else
{ din=0;
clk=1;
dat<<=1; //左移一位,并且使其有时间读入数据
clk=0;}
你的ELSE 后面的第一条语句算其条件语句,后面2条每次循环都执行了,要在ELSE后面条件满足的几条语句加个大括号。
温馨提示:内容为网友见解,仅供参考
第1个回答  2010-10-09
void input(uint dat)
{
uchar j;

clk=0;
cs=0;
dat<<=6;
for(j=0;j<12;j++)
{
if(dat&0x0800)//是不是这里啊。
din=1;
else
din=0;
clk=1;
dat<<=1; //左移一位,并且使其有时间读入数据
clk=0;

}

cs=1;
}
应该这样吧,你的for循环转换的是12位的啊,如果12位,那你输入256的结果应该是5*256/4096啊,你仔细检查一下你的位数,包括for循环、还有if(dat&0x0800)里面的常数。

编写单片机通过IO端口模拟总线时序控制TLC5615进行D\/A变换,产生方波,三...
编写单片机通过IO端口模拟总线时序控制TLC5615进行D\/A变换,产生方波,三角波,锯齿波,梯形波和正弦波的程序 展开  我来答 分享 微信扫一扫 网络繁忙请稍后重试 新浪微博 QQ空间 举报 浏览83 次 可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。 单片机 tlc5615 锯齿波 io 端...

C语言 52单片机,求一份TLC5615的源码,要带详细注释的,基础不太好,自己...
include <reg52.h>#include <math.h>#include <intrins.h>#define uint unsigned int#define uchar unsigned char#define INBUF_LEN 6 \/\/数据长度unsigned char inbuf1[INBUF_LEN]={'0','0','0','0','0','0'};\/\/发送缓冲区unsigned char code table[] = {0xc0,0xf9,0xa4,0xb0...

51单片机做信号发生器,怎样才能提高频率?
罗辑混乱,定时器只定时0.1us,而向DAC传送数据要花时间远大于0.1us.应该定时时间大于DAC(sin[i])的时间。理论上可产生几百HZ的正弦波。一次转换需12.5us,假设20US更新一次,把一个正弦波分成256份。那么产生的正弦波频率可达195HZ。

AVR单片机原理及应用图书目录
第7章 AVR单片机通信接口 7.1 AVR单片机串行接口 7.1.1 同步串行接口 7.1.2 通用串行接口 第8章 AVR单片机A\/D转换及模拟比较器 8.1 A\/D转换 8.1.1 A\/D转换概述 8.1.2 ADC噪声抑制器 8.1.3 ADC有关的寄存器 第9章 系统扩展技术 9.1 串行接口8位LED显示...

...例如运放之类的,我想买几片TLC5615,或5618芯片,D\/A转换用的...
太平洋电脑城,海印电器城,中山六路淘街

单片机实验箱的实验项目
(一)软件实验(1)清零程序;(2)拆字程序;(3)拼字程序;(4)数据区传送子程序;(5)数据排序实验;(6)查找相同数据个数;(7)无符号双字节快速乘法子程序;(8)多分支程序;(9)脉冲计数实验;(10)电脑时钟实验。(二)硬件实验(1)P1口亮灯实验;(2)P1口转弯灯实验;(3)P3....

基于Proteus的51系列单片机设计与仿真的内容简介
全书共9章,主要介绍51单片机系统的设计及相关软件的使用,在Proteus中原理图的绘制与仿真及PCB的制作、Proteus在单片机软件程序设计中的应用,Proteus在单片机硬件系统设计中的应用。书中选择的实例都具有很强的实用性,通过阅读这些实例,读者可以在不花费硬件成本的前提下,学习和开发单片机软、硬件系统。~...

单片机原理与应用技术的目录
1.1 中央处理器2.1.2 存储器2.1.3 接口电路2.1.4 时钟振荡电路2.2 MCS-51的外部引脚及功能2.2.1 I\/O端口2.2.2 控制引脚2.2.3 电源与晶振引脚2.3 MCS-51的存储器配置2.3.1 程序存储器配置2.3.2 数据存储器配置2.3.3 特殊功能寄存器(SFR)2.4 时钟电路与复位电路2.4.1 ...

相似回答