微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > c51模拟SPI读AD问题求教

c51模拟SPI读AD问题求教

时间:10-02 整理:3721RD 点击:
c51单片机用SPI模拟读MAX191这个AD,出来全是0,程序:
uint Max191(void)
{
    char i;
    uint buff=0;
  
        Max191_clk=1;
        Max191_cs=1;
        delay_key(1);
        _nop_();
        _nop_();
        _nop_();
        _nop_();  
    Max191_cs=0;
          delay_key(1);
        Max191_clk=1;
    for(i=0;i<16;i++)
    {         
        buff<<=1;
        Max191_clk=1;
                delay_key(1);
        buff|=Max191_do;               
        Max191_clk=0;
                delay_key(1);                              
    }
    Max191_cs=1;
  //  buff=buff>>3;
        buff&=0x0fff;
return buff;
}
while(1)
{
   aa=Max191();
   b[0]=0xff;
   b[1]=aa/256;
   b[2]=aa%256;
  txdd(b,3);
delay_key(2 );        
}

一、将外部的MOSI 与MISO短接,自已发自己收,看收到的与你发的是不是一样。
二、检查芯片手册,看看协议对不对。
三、检查外部电路连接对不对。

上一篇:关于SPWM的生成
下一篇:单片机usb通信

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top