標(biāo)題: 關(guān)于STC98C52控制AT24C02存儲(chǔ)器的問題 [打印本頁]

作者: yanxiaodong    時(shí)間: 2018-11-18 22:15
標(biāo)題: 關(guān)于STC98C52控制AT24C02存儲(chǔ)器的問題
        存儲(chǔ)器停止工作程序、、、、、、、
        sda=0;
        delay1();
        scl=1;
        delay1();
        sda=1;
        delay1();  存儲(chǔ)器能正常工作。

             scl=1;
        delay1();
        sda=1;
       delay1();
        sda=1;
        delay1(); 存儲(chǔ)器無法正常工作。

       存儲(chǔ)器開始工作程序、、、、、、、、
              scl=1;
        delay1();
        sda=1;
        delay1();
        sda=0;
        delay1();可以正常工作


        sda=1;
        delay1();
        scl=1;
        delay1();
        sda=0;
        delay1();也可以正常工作
  我想問為啥啊停止程序調(diào)換scl和sda的啟動(dòng)順序,其中一個(gè)程序就不能正常工作。但是開始程序調(diào)換scl和sda的啟動(dòng)次序兩個(gè)程序都可以正常工作?

]BM]8CHVMVP{1RJ0((NW6O1.png (18.45 KB, 下載次數(shù): 40)

停止程序時(shí)序圖

停止程序時(shí)序圖

H28U9N8[U8AYB{0[45YIL8T.png (18.65 KB, 下載次數(shù): 31)

開始程序時(shí)序圖

開始程序時(shí)序圖

作者: HC6800-ES-V2.0    時(shí)間: 2018-11-19 08:20
時(shí)序說得很清楚。
你在開始工作時(shí),雖然調(diào)換了SDA、SCL的順序,但不違背時(shí)序中的關(guān)鍵——雙高時(shí)間大于4,7us。
在停止工作時(shí)序中,你就沒能保證一高一低大于4us,你直接雙高了——如果你的延時(shí)delay1的時(shí)間夠長的話,也是可以的嘛。
通常我們都是先讓雙低出現(xiàn),再按需要,設(shè)置一高一低,或雙高。如果你先設(shè)置了雙低,可能也是行得通的。
你試試看。
作者: yanxiaodong    時(shí)間: 2018-11-19 17:17
HC6800-ES-V2.0 發(fā)表于 2018-11-19 08:20
時(shí)序說得很清楚。
你在開始工作時(shí),雖然調(diào)換了SDA、SCL的順序,但不違背時(shí)序中的關(guān)鍵——雙高時(shí)間大于4,7u ...

謝謝 學(xué)習(xí)了!




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