打印

tlc2543的问题

[复制链接]
1530|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
chen3bing|  楼主 | 2010-10-23 08:55 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我写了个TLC2543的程序,不过采样值跳跃的特别厉害。
硬件EOC腿没接。
程序如下:
#include<reg51.h>
#include<intrins.h>
#include<absacc.h>
#define uint unsigned int
#define uchar unsigned char
sbit AD_EOC= P3^1;
sbit AD_CLOCK= P3^3;
sbit AD_IN= P3^4;
sbit AD_OUT= P3^5;
sbit AD_CS= P3^2;
union ccb
{uint y;
uchar x[2];
}a;
static const uchar ad_chunnel_select[]={0x00,
0x10,0x20,0x30,0x40,
0x50,0x60,0x70,0x80,
0x90,0xa0};
uint ad2543(uchar chunnel_select)
{uint din;
uchar dout,i;
din=0;
dout=ad_chunnel_select[chunnel_select];
//while(AD_EOC==0);
AD_CLOCK=0;
AD_CS=0;
for(i=0;i<12;i++)
{if(dout&0x80)AD_IN=1;
  else AD_IN=0;
  AD_CLOCK=1;
  dout<<=1;
  din<<=1;
  if(AD_OUT==1) din|=0x0001;
  AD_CLOCK=0;
}
AD_CS=1;
return(din);
}
void main(void)
{   while(1)
     { a.y=ad2543(0);
       a.y>>=4;
      P1=a.x[1];
     }
}
请高手指点,谢谢!

相关帖子

沙发
chen3bing|  楼主 | 2010-10-23 10:37 | 只看该作者
高手支招啊!

使用特权

评论回复
板凳
chen3bing|  楼主 | 2010-10-23 11:30 | 只看该作者
没人知道吗?

使用特权

评论回复
地板
一级菜鸟| | 2010-10-23 11:38 | 只看该作者
1、PCB布局优化,电路滤波调整
2、多次过采样取平均数

使用特权

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

本版积分规则

439

主题

2540

帖子

2

粉丝