新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 51單片機ADC0804模數轉換學習

        51單片機ADC0804模數轉換學習

        作者: 時間:2012-08-02 來源:網絡 收藏

        dula=1;
        P0=table[shi];
        dula=0;
        P0=0xff;
        wela=1;
        P0=0x7d;
        wela=0;
        delayms(5);

        dula=1;
        P0=table[ge];
        dula=0;
        P0=0xff;
        wela=1;
        P0=0x7b;
        wela=0;
        delayms(5);
        }
        程序中所說的時序圖如下:

        點擊瀏覽下一頁

        點擊瀏覽下一頁

        從時序圖可知首先要選定片選,即置CS=0,程序中一直讓cs為0,這樣一直選定其工作。對轉換沒有影響。再看WR的時序圖WR先是高-->低-->高,從低-->高這個過程中至少要延時tw(WR)L(ns),程序中用的的_nop()_函數就是延時一個機器周期,本實驗板得機器周期為1000ns遠大于tw(WR)L(ns)。再看RD

        RD的時序是高-->低-->高,RD為低后延時tACC后就有數據了,adval=P1; //A/D轉換后的數據賦給adval
        于是再把wR拉高這樣就把數據讀走了。因為INTR是自動變化的,所以不需要人為設定。。(以上個人理解不知道是否正確^-^)

        呵呵,不同的轉換器時序圖應該也不一樣,程序代碼也有差別,但本質是一樣的。


        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 措勤县| 长寿区| 泊头市| 天台县| 东海县| 和平区| 孝义市| 盖州市| 友谊县| 阿拉善盟| 邹城市| 龙岩市| 济源市| 涟水县| 买车| 柞水县| 沙洋县| 朝阳市| 罗江县| 彩票| 琼海市| 库尔勒市| 陆丰市| 安泽县| 邵阳市| 怀仁县| 濮阳县| 临澧县| 阿合奇县| 宣化县| 漳浦县| 临湘市| 钟山县| 乌鲁木齐市| 苍南县| 永兴县| 内黄县| 肥东县| 伊春市| 共和县| 辰溪县|