标题: 没有spi功能的单片机用程序模拟spi和ad通信的程序问题 [打印本页]

作者: Stretch    时间: 2019-5-14 11:45
标题: 没有spi功能的单片机用程序模拟spi和ad通信的程序问题
老师跟我说是程序没有对上时序,未能模拟spi通讯,,程序是直接在论坛下载的例程,作用是在lcd上显示ad7705输入电压。

void ad_write(unsigned char command_byte)
{
        unsigned char i;
//        AD_CS=0;        
        AD_SCLK=1;
        AD_DIN=1;
        for (i=0;i<8;i++)
        {
                AD_SCLK=0;
                _nop_();_nop_();_nop_();
                if (command_byte&0x80)
                {
                        AD_DIN=1;
                }
                else
                {
                        AD_DIN=0;
                }
                _nop_();_nop_();_nop_();
                _nop_();_nop_();_nop_();
                AD_SCLK=1;
                command_byte=command_byte*2;
                _nop_();_nop_();_nop_();
                _nop_();_nop_();_nop_();
        }
        AD_SCLK=1;
        AD_DIN=1;

}

unsigned int ad_read(unsigned char num)   //¶áè¡êy¾Y
{
        unsigned char i;
        unsigned int ad_data;
        ad_data=0;
       

        AD_SCLK=1;
        AD_DIN=1;
        for (i=0;i<num;i++)
        {        _nop_();_nop_();_nop_();                 
                AD_SCLK=0;
                ad_data*=2;                                  
                _nop_();_nop_();_nop_();
                AD_SCLK=1;
                _nop_();_nop_();_nop_();                  
                if (AD_OUT==1)
                {
                        ad_data=ad_data|0x0001;
                }
        }
//        AD_CS=1;
        AD_SCLK=1;
        AD_DIN=1;
        return ad_data;
}


TIM图片20190514114406.png (24.88 KB, 下载次数: 57)

TIM图片20190514114406.png

作者: allen_123    时间: 2019-5-15 16:46
SPI相对比较复杂,注意相位和极性




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1