欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: 想問下這段單片機程序的具體意思,adc0832的 [打印本頁]

作者: 異星人    時間: 2019-5-24 14:41
標題: 想問下這段單片機程序的具體意思,adc0832的
前面那個是根據時序圖來寫的吧?但是從for循環開始那邊是什么意思呢?

unsigned int  A_D()            //ADC0832   讀值程序
{
        unsigned char i;
        unsigned char dat;                                         
        ADC0832_CS=1;   //一個轉換周期開始
        ADC0832_CLK=0;  //為第一個脈沖作準備
        ADC0832_CS=0;  //CS0,片選有效
        ADC0832_DIO=1;    //DIO1,規定的起始信號  
        ADC0832_CLK=1;   //第一個脈沖
        ADC0832_CLK=0;   //第一個脈沖的下降沿,此前DIO必須是高電平
        ADC0832_DIO=1;   //DIO1, 通道選擇信號  
        ADC0832_CLK=1;   //第二個脈沖,第2、3個脈沖下沉之前,DI必須跟別輸入兩位數據用于選擇通道,這里選通道RH0
        ADC0832_CLK=0;   //第二個脈沖下降沿
        ADC0832_DIO=0;   //DI0,選擇通道0
        ADC0832_CLK=1;    //第三個脈沖
        ADC0832_CLK=0;    //第三個脈沖下降沿
        ADC0832_DIO=1;    //第三個脈沖下沉之后,輸入端DIO失去作用,應置1
        ADC0832_CLK=1;    //第四個脈沖
        for(i=0;i<8;i++)  //高位在前
        {
                ADC0832_CLK=1;         //第四個脈沖
                ADC0832_CLK=0;
                dat<<=1;       //將下面儲存的低位數據向右移
                dat|=(unsigned char)ADC0832_DIO;          //將輸出數據DIO通過或運算儲存在dat最低位
        }                                 
        ADC0832_CS=1;          //片選無效
        return dat;         //將讀書的數據返回     
}


作者: angmall    時間: 2019-5-24 23:32
但是從for循環開始那邊是什么意思呢?



注釋 解釋很清楚 就是讀出數據
作者: netlmq    時間: 2019-5-25 07:39
從ADC0832的DIO端輸出轉換數據,先最高位DATA7,依次輸出,直到DATA0。
先產生一個CLk脈沖下降沿,同時,(dat<<=1; ),dat左移一位,空出最低位準備接收ADC0832_DIO位。
DIO 端輸出一位數據,并入dat低位,for循環,讀取8次,接收完最低位數據DATA0,一個字節的數據輸出完成。一次A/D 轉換的結束。
最后將CS 置高電平禁用芯片,將轉換后的數據dat返回。
作者: 異星人    時間: 2019-5-25 09:20
netlmq 發表于 2019-5-25 07:39
從ADC0832的DIO端輸出轉換數據,先最高位DATA7,依次輸出,直到DATA0。
先產生一個CLk脈沖下降沿,同時,( ...

adc0832不是需要讀兩次嗎?正的一次反的一次




歡迎光臨 (http://m.raoushi.com/bbs/) Powered by Discuz! X3.1