新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 單片機的擴展RAM讀寫時序實驗

        單片機的擴展RAM讀寫時序實驗

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

        書上看到的畢竟是理論的東西,實際應用中總會碰上意外的或者說是不可預測的情況,與其在那瞎推理,還不如動手做點實際的工作。

        本文引用地址:http://www.104case.com/article/171526.htm

           特權同學用的是11.0592MHz的STC89C52做測試,C代碼也很簡單:

          #include

          #define uchar unsigned char

          #define uint unsigned int

          uchar xdata LD _at_ 0x7fff;

          void delay(uint cnt)

          {

          uint i;

          for(i=0;i

          }

          void main(void)

          {

          uchar i;

          delay(1000);

          while(1)

          {

          LD = 0x00;

          LD = 0xf0;

          LD = 0x73;

          // i = LD;

          delay(1000);

          LD = 0xff;

          delay(1000);

          }

          }

          LD就是的外部變量,地址是0x7fff,也就是說P2的最高位就是CS信號。示波器測試了P0口任意一個數據的變化、CS的變化、WRRD信號的變化。大體整理了一下,波形基本如下:

          

        點擊看大圖

          另外,除了第一次LD讀操作需要5個指令周期外(1.085us*5),以后每次LD讀操作都只要3個指令周期(1.085*3)。這也是從匯編的代碼里仿真后得出來的結論。而從上圖也可以知道CS有效時間其實是一個指令周期(1.085us)。平均3個指令周期完成一次數據傳輸(所謂的方式數據),這應該是和外部通信的最快速度了。



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 临海市| 旅游| 三穗县| 江西省| 响水县| 镇坪县| 盐城市| 临沂市| 伊宁县| 佳木斯市| 会理县| 和田市| 武功县| 略阳县| 澄城县| 榕江县| 衡东县| 长汀县| 大同县| 叶城县| 罗定市| 无棣县| 牡丹江市| 亳州市| 五家渠市| 商丘市| 固阳县| 涪陵区| 娱乐| 兴业县| 汉中市| 岱山县| 禄丰县| 金秀| 大冶市| 武宣县| 武胜县| 永靖县| 台中县| 大港区| 嘉荫县|