亚洲春色中文字幕久久久-三上亚,一吻二脱三床四吻胸,国产真实伦对白视频全集,在线毛片观看,精品成品入口黄网,国产毛aⅴ片久久久,亚洲AV色香蕉一区二区三区老师,萧皇后A级艳片,色情日本视频更新,99久久亚洲精品日本无码

專注電子技術學習與研究
當前位置:單片機教程網 >> MCU設計實例 >> 瀏覽文章

STC12延時函數的探究

作者:佚名   來源:本站原創   點擊數:  更新時間:2014年04月10日   【字體:

這種寫法是C中嵌套了匯編。精確延時時間=2*t*T+5*T,T為一個機器周期。對于8051,



如果t=1,那么這個函數執行應該是7us。如果是STC12,那么這個延時函數的延時應該是:若t=1,精確延時=2*1*1/12+5*1/12=(7/12)us啊。
昨天也查了STC12手冊 手冊上對時鐘寫的很籠統,其中一句話是:與8051指令執行時間對比,一共有12個指令,一個時鐘就可以執行完成,工作在相同頻率下運行速度提高8~12倍
難道這里應該是(7/8)us?而不是(7/12)us?
這個是uint型函數時間是近似的
那么可以用延時時間=8*t*T
應該是8*1*(1/12)=8/12
根據程序分析猜想t=1時這個延時函數應該為1us最為合理。
用示波器測試過 執行一個delay(5000)大約5.8ms。51執行一個delay(5000)大約40064us
嗯,用示波器測得那個IO口的頻率變化為85.47HZ,那么一個delay(5000)就是(1/85.47)/2*1000=5850us
這里的t設的uint型,有誤差,加上 LED=1;LED=0;執行也會消耗時間 結果存在誤差 。
最后總結得出這條延時語句在51上執行一次大約花7us,在12上花1us。示波器測試通過!和我計算符合。

關閉窗口