您的位置:極速下載站 → 電腦軟件 → 行業(yè)軟件 → 其他行業(yè) → 通用延時(shí)子程序
使用方法如下:
1、如果用循環(huán)語句實(shí)現(xiàn)的循環(huán),沒法計(jì)算,但是可以通過軟件仿真看到具體時(shí)間,但是一般精精確延時(shí)是沒法用循環(huán)語句實(shí)現(xiàn)的。
2、如果想精確延時(shí),一般需要用到定時(shí)器,延時(shí)時(shí)間與晶振有關(guān)系,單片機(jī)系統(tǒng)一般常選用11.059 2 MHz、12 MHz或6 MHz晶振。第一種更容易產(chǎn)生各種標(biāo)準(zhǔn)的波特率,后兩種的一個(gè)機(jī)器周期分別為1 μs和2 μs,便于精確延時(shí)。本程序中假設(shè)使用頻率為12 MHz的晶振。最長的延時(shí)時(shí)間可達(dá)216=65 536 μs。若定時(shí)器工作在方式2,則可實(shí)現(xiàn)極短時(shí)間的精確延時(shí);如使用其他定時(shí)方式,則要考慮重裝定時(shí)初值的時(shí)間(重裝定時(shí)器初值占用2個(gè)機(jī)器周期)。
通用延時(shí)子程序 [地址]
7FEBH - FFEBH [功能]:延時(shí) [入口]:延時(shí)常數(shù)放在 R2 寄存器中。時(shí)間常數(shù) N(十六進(jìn)制)所對(duì)應(yīng)的延時(shí)時(shí)間(6MZH 晶振時(shí))見下表: [出口]:R2=0 [占用寄存器]:R2 [調(diào)用]:無 例:延時(shí)1 秒子程序 MOV R2,#18H LCALL 7FEBH RET ORG 7FEBH ;通用延時(shí)子程序(07EBH & 0FEBH & ...) L7FEB: PUSH 02H ;R2(復(fù)位后R2即為 02H)存放時(shí)間常數(shù),進(jìn)棧保護(hù) L7FED: PUSH 02H ; R2 進(jìn)棧保護(hù) L7FEF:
相關(guān)搜索:單片機(jī) 通用延時(shí)子程序
注:您的評(píng)論需要經(jīng)過審核才能顯示,請文明發(fā)言!