導航:首頁 > 源碼編譯 > 義隆編譯器延時怎麼寫

義隆編譯器延時怎麼寫

發布時間:2023-06-05 07:30:07

Ⅰ 義隆的單片機EM78P163N SOP14程序怎麼寫~

;這樣分配I/O是很不合理。如果SA-SD外部上拉電阻,按鍵低電平有效,KA-KD低電平亮,則:
;匯編如下,需要C語言請繼續追問:
P5==5
P6==6
ORG 0
MAIN: MOV A,@0CH ;配置P52、P53為輸入其餘為輸出
IOW P5
MOV A,@06H ;配置P61、P62為輸入其餘為輸出
LOOP:
JBS P6,2;測試按鍵SA
CALL SA;調用到SA按鍵處理模塊
JBS P6,1;測試按鍵SB
CALL SB;調用到SB按鍵處理模塊
JBS P5,3;測試按鍵SC
CALL SC;調用到SC按鍵處理模塊
JBS P5,2;測試按鍵SD
CALL SD;調用到SD按鍵處理模塊
JMP LOOP
;--------------------SA按鍵處理模塊---------------------
SA: CALL DELAY;按鍵去抖動延時
JBC P6.2;按鍵動作確認
RET;按鍵抖動返回
JBC P6,5;測試當前KA狀態,如果KA滅跳轉到令KA亮程序行
JMP SA1
BS P6,5;KA滅
JMP SA2
SA1: BC P6.5 ;KA亮
SA2: JBS P6,2;等待按鍵松開
JMP SA2
RET
;其餘3個模塊照葫蘆畫瓢
;--------------------SB按鍵處理模塊---------------------
;--------------------SC按鍵處理模塊---------------------
;--------------------SD按鍵處理模塊---------------------
DELAY: MOV A,@040H
MOV 18,A
DELAY1:MOV A,@0FAH
MOV 17,A
DELAY2: DJZ 17
JMP DELAY2
DJZ 18
JMP DELAY1
RET

Ⅱ 如何用單片機的delay實現延時

單片機中的delay()的單位時間不是系統提供的,而是用戶自己編制的。

如果用循環語句實現的循環,沒法計算,但是可以通過軟體模擬看到具體時間,但是一般精精確延時是沒法用循環語句實現的。

如果想精確延時,一般需要用到定時器,延時時間與晶振有關系,單片機系統一般常選用11.059 2 MHz、12 MHz或6 MHz晶振。第一種更容易產生各種標準的波特率,後兩種的一個機器周期分別為1 μs和2 μs,便於精確延時。本程序中假設使用頻率為12 MHz的晶振。

最長的延時時間可達216=65 536 μs。若定時器工作在方式2,則可實現極短時間的精確延時;如使用其他定時方式,則要考慮重裝定時初值的時間(重裝定時器初值佔用2個機器周期)。

(2)義隆編譯器延時怎麼寫擴展閱讀

單片機C語言程序中延時函數delay的原理是:僅僅執行一些,沒有實質性影響的所謂「無意義指令」,比如做比大小啊,做某個int的自加運算啊之類的。

單片機的有些程序需要調用延時程序,合理的安排循環次數以及空操作的個數方法:用匯編的話就根據你的當前晶振頻率去推算你的指令周期,然後結合需要延遲的時間。

編寫延遲程序,用C的話還是要看最後生成的匯編碼是什麼樣的了。最簡單的方法就是寫好程序以後再編譯器里軟模擬看時間。

單片機C語言延時需注意的問題:

標準的C語言中沒有空語句。但在單片機的C語言編程中,經常需要用幾個空指令產生短延時的效果。這在匯編語言中很容易實現,寫幾個nop就行了。

在keil C51中,直接調用庫函數:

#include // 聲明了void _nop_(void);

_nop_(); // 產生一條NOP指令

作用:對於延時很短的,要求在us級的,採用「_nop_」函數,這個函數相當匯編NOP指令,延時幾微秒。NOP指令為單周期指令,可由晶振頻率算出延時時間,對於12M晶振,延時1uS。對於延時比較長的,要求在大於10us,採用C51中的循環語句來實現。

閱讀全文

與義隆編譯器延時怎麼寫相關的資料

熱點內容
兩台阿里雲伺服器如何拷貝 瀏覽:170
阿里媽媽淘寶聯盟需要什麼app 瀏覽:368
什麼人可以做編程員 瀏覽:358
網盤會員加速是在線解壓嘛 瀏覽:109
單片機按鍵匯編程序 瀏覽:728
傳播學綱要pdf第二版 瀏覽:385
樂友進銷存有什麼app 瀏覽:554
顯示器維修pdf 瀏覽:618
qq支付時怎麼雙層加密 瀏覽:943
2008伺服器如何做安全 瀏覽:310
戴爾系統加密怎麼解密 瀏覽:469
手機app企業辦稅子賬戶是什麼 瀏覽:660
wps如何快速解壓 瀏覽:562
漢王pdf轉換 瀏覽:117
linux學習步驟 瀏覽:502
達內杭州java培訓 瀏覽:163
建垃圾壓縮站應符合的規定 瀏覽:973
安卓怎麼測量開機電壓 瀏覽:775
程序員素質大全 瀏覽:953
激戰伺服器不見了怎麼辦 瀏覽:983