打印

求助MAX1148调试结果不正确

[复制链接]
1687|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
gameboy22|  楼主 | 2011-11-28 16:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
最近在调一个程序,用max1148做程序采集!可是怎么调读出的数据都是不对,程序如下,帮我看看程序有什么问题吗?

  //定义与MAX1148BEUP的接口
sbit  DOUT = P1^4;
sbit  SSTRB  = P1^3;
sbit  DIN     = P1^2;
sbit  nCS   = P1^1;
sbit  CLK  = P1^0;


//MAX1148采样程序
unsigned int MAX1148AD_Sample(unsigned char Ctrl_Cmd)
{
unsigned char i,tmp_data;
unsigned int adc_value = 0;
tmp_data = Ctrl_Cmd;

nCS = 0; //写控制字
for(i=0; i<8; i++)
    {
DIN = tmp_data & 0x80;              
        CLK=1;
        tmp_data <<= 1;
        CLK=0;
    }
// _nop_();
// _nop_();  
while(!SSTRB);    //等待SSTRB为高

for(i=0;i<16;i++)
{
adc_value <<= 1;
CLK = 1;
adc_value |= DOUT;
CLK = 0;
}
nCS = 1;

return(adc_value & 0x3FFF);
}

我用的是ch2通道,采取单通道采样,控制字是0x9E!

相关帖子

沙发
gameboy22|  楼主 | 2011-11-28 16:02 | 只看该作者
读出来的数变化很大,有用过的看一下哈,是不是程序哪里有问题呢?

使用特权

评论回复
板凳
gameboy22|  楼主 | 2011-11-28 20:52 | 只看该作者
有人用过这个吗?

使用特权

评论回复
地板
gameboy22|  楼主 | 2011-12-1 08:48 | 只看该作者
没有人来答?

使用特权

评论回复
5
gameboy22|  楼主 | 2011-12-5 15:54 | 只看该作者
无人回答,结贴

使用特权

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

本版积分规则

14

主题

136

帖子

0

粉丝