標題:

aa.jpg

 

此文章來自奇摩知識+如有不便請留言告知

微處理 8051

發問:

若石英振盪器的頻率為12MHz,請回答延時副程式的時間為多少?各參考指令執行週期如下,MOV Rn,#DATA=1, DJNZ Rn,rel=2, RET=2, NOP=1某一延時副程式如下:行號 指令 各行指令執行次數1 DELAY: MOV R6,#100 __________2 DEL: MOV R7,#50 ... 顯示更多 若石英振盪器的頻率為12MHz,請回答延時副程式的時間為多少?各參考指令執行週期如下,MOV Rn,#DATA=1, DJNZ Rn,rel=2, RET=2, NOP=1 某一延時副程式如下: 行號 指令 各行指令執行次數 1 DELAY: MOV R6,#100 __________ 2 DEL: MOV R7,#50 ___________ 3 $1: DJNZ R7,$1 __________ 4 DJNZ R6,DEL ___________ 5 RET ____________ 石英振盪器的頻率為12MHz時.機械週期:_________ 請列出延時時間計算式及結果:____________ 更新: 能幫我填出空格媽!! 更新 2: 這兩題原本要打一起怕太長咩....無緣無故被判刑="=

最佳解答:

大約百分之一秒的延時, 但尚有進空間,使之更接近百分之一秒。 2009-11-12 13:03:09 補充: 若石英振盪器的頻率為12MHz,請回答延時副程式的時間為多少? 各參考指令執行週期如下, MOV Rn,#DATA=1, DJNZ Rn,rel=2, RET=2, NOP=1 某一延時副程式如下: 行號 指令 各行指令執行次數 1 DELAY: MOV R6,#100 ___ 1 2 DEL: MOV R7,#50 ___ 1*100 3 $1: DJNZ R7,$1 ___ 50*100 4 DJNZ R6,DEL ___ 1*100 5 RET ___ 1 石英振盪器的頻率為12MHz時.機械週期: 1/12000000*12 = 1/1000000 = 1us 請列出延時時間計算式及結果: 1 + (1 + 50*2 + 2)*100 + 2 = 10303 us = 10.303 ms ====== 改成如下較接近 1/100 秒 (10 ms) DELAY: MOV R6, #102 DEL: MOV R7, #47 NOP $1: DJNZ R7, $1 DJNZ R6, DEL RET 機械週期= 1 + (1 + 1 + 47*2 + 2)*102 + 2 = 9999 us = 9.999 ms 再加上 CALL 的 2個機械週期,變成 10001 us = 10.001 ms。 2009-11-12 13:13:39 補充: 掌握要領後,便可調試出 10.000 ms的延時副程式。 用上述的雙迴圈,無法精確湊出,須另加一單迴圈來湊出總數, 若以 10000 us,總數應為 9998,要保留 2 個機械週期給 CALL。

其他解答:FBEFE3C2E0474026

arrow
arrow
    創作者介紹
    創作者 ceui4w8 的頭像
    ceui4w8

    百科全書

    ceui4w8 發表在 痞客邦 留言(0) 人氣()