日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當前位置:首頁 > 單片機 > 單片機
[導讀]計算機反復執(zhí)行一段程序以達到延時的目的稱為軟件延時,單片機應用程序中經(jīng)常需要短時間延時,有時要求很高的精度,網(wǎng)上或書中雖然有現(xiàn)成的公式可以套用,但在部分算法講解中發(fā)現(xiàn)有錯誤之處,而且延時的具體算法講得

計算機反復執(zhí)行一段程序以達到延時的目的稱為軟件延時,單片機應用程序中經(jīng)常需要短時間延時,有時要求很高的精度,網(wǎng)上或書中雖然有現(xiàn)成的公式可以套用,但在部分算法講解中發(fā)現(xiàn)有錯誤之處,而且延時的具體算法講得并不清楚,相當一部分人對此仍很模糊,授人魚,不如授之以漁,本文將以12MHZ晶振為例,詳細講解MCS-51單片機中匯編程序延時的精確算法。擴展閱讀:51單片機定時、中斷練習:用延時程序做閃爍燈

指令周期、機器周期與時鐘周期

指令周期:CPU執(zhí)行一條指令所需要的時間稱為指令周期,它是以機器周期為單位的,指令不同,所需的機器周期也不同。

時鐘周期:也稱為振蕩周期,一個時鐘周期 =晶振的倒數(shù)。

MCS-51單片機的一個機器周期=6個狀態(tài)周期=12個時鐘周期。

MCS-單片機的指令有單字節(jié)、雙字節(jié)和三字節(jié)的,它們的指令周期不盡相同,一個單周期指令包含一個機器周期,即12個時鐘周期,所以一條單周期指令被執(zhí)行所占時間為12*(1/12000000)=1µs。

程序分析

例1 50ms 延時子程序:

DEL:MOV R7,#200 ①

DEL1:MOV R6,#125 ②

DEL2:DJNZ R6,DEL2 ③

DJNZ R7,DEL1 ④

RET ⑤

精確延時時間為:1+(1*200)+(2*125*200)+(2*200)+2

=(2*125+3)*200+3 ⑥

=50603µs

≈50ms

由⑥整理出公式(只限上述寫法)延時時間=(2*內循環(huán)+3)*外循環(huán)+3 ⑦

詳解:DEL這個子程序共有五條指令,現(xiàn)在分別就 每一條指令 被執(zhí)行的次數(shù)和所耗時間進行分析。

第一句:MOV R7,#200 在整個子程序中只被執(zhí)行一次,且為單周期指令,所以耗時1µs

第二句:MOV R6,#125 從②看到④只要R7-1不為0,就會返回到這句,共執(zhí)行了R7次,共耗時200µs

第三句:DJNZ R6,DEL2 只要R6-1不為0,就反復執(zhí)行此句(內循環(huán)R6次),又受外循環(huán)R7控制,所以共執(zhí)行R6*R7次,因是雙周期指令,所以耗時2*R6*R7µs。

例2 1秒延時子程序:

DEL:MOV R7,#10 ①

DEL1:MOV R6,#200 ②

DEL2:MOV R5,#248 ③

DJNZ R5,$ ④

DJNZ R6,DEL2 ⑤

DJNZ R7,DEL1 ⑥

RET ⑦

對每條指令進行計算得出精確延時時間為:

1+(1*10)+(1*200*10)+(2*248*200*10)+(2*200*10)+(2*10)+2

=[(2*248+3)*200+3]*10+3 ⑧

=998033µs≈1s

由⑧整理得:延時時間=[(2*第一層循環(huán)+3)*第二層循環(huán)+3]*第三層循環(huán)+3 ⑨

此式適用三層循環(huán)以內的程序,也驗證了例1中式⑦(第三層循環(huán)相當于1)的成立。

注意,要實現(xiàn)較長時間的延時,一般采用多重循環(huán),有時會在程式序里加入NOP指令,這時公式⑨不再適用,下面舉例分析。

例3仍以1秒延時為例

DEL:MOV R7,#10 1指令周期1

DEL1:MOV R6,#0FFH 1指令周期10

DEL2:MOV R5,#80H 1指令周期255*10=2550

KONG:NOP 1指令周期128*255*10=326400

DJNZ R5,$ 2指令周期2*128*255*10=652800

DJNZ R6,DEL2 2指令周期2*255*10=5110

DJNZ R7,DEL1 2指令周期2*10=20

RET 2

延時時間=1+10+2550+326400+652800+5110+20+2 =986893µs約為1s

整理得:延時時間=[(3*第一層循環(huán)+3)*第二層循環(huán)+3]*第三層循環(huán)+3 ⑩

結論:論文針對初學者的困惑,對匯編程序的延時算法進行了分步講解,并就幾種不同寫法分別總結出相應的計算公式,只要仔細閱讀例1中的詳解,并用例2、例3來加深理解,一定會掌握各種類型程序的算法并加以運用。

【更多資源】

本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內容真實性等。需要轉載請聯(lián)系該專欄作者,如若文章內容侵犯您的權益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

馬塞諸塞州劍橋2025年8月6日 /美通社/ -- 8 月 5 日,晶泰科技(2228.HK)宣布與 DoveTree 完成總訂單規(guī)模約 470 億港元(59.9 億美元)的...

關鍵字: 泰科 AI OV VERDI

深圳 2025年6月11日 /美通社/ --?6月11日,火山引擎Force原動力大會正式開幕。廣和通發(fā)布新一代AI語音智能體FiboVista,并已率先應用于車聯(lián)網(wǎng),成為...

關鍵字: VISTA 車聯(lián)網(wǎng) 智能體 OV

-ENNOVI集成先進功能與創(chuàng)新的母線密封技術,賦能電動汽車和混合動力傳動系統(tǒng) ENNOVI-SealTech:與傳統(tǒng)方法相比,正在申請專利的母線密封可防止冷卻液泄漏,提升制造效率和設計靈活性。 新加坡 202...

關鍵字: 集成 VI OV SE

上海 2025年4月29日 /美通社/ -- 由生成式人工智能驅動的生物醫(yī)藥科技公司英矽智能(Insilico Medicine)宣布,任命劉栩昕(Leah Liu)為資本市場與投資者關系副總裁。劉女士將直接向英矽智能...

關鍵字: 創(chuàng)始人 OV 智能驅動 人工智能技術

DXC AI Workbench融合行業(yè)與人工智能專長,助力全球客戶實現(xiàn)規(guī)?;晒? 弗吉尼亞州阿什本2025年4月22日 /美通社/ -- 全球領先的財富500強技術服務提供商DXC Technology(紐約證交所股...

關鍵字: VIA WORKBENCH OV AI

廣州2025年2月6日 /美通社/ -- 2025年2月6日,全球領先的自動駕駛科技公司文遠知行WeRide(Nasdaq: WRD)正式發(fā)布新一代無人物流車——Robovan W5(下稱"W5無人物...

關鍵字: OV AN 自動駕駛 BSP

-Microland被評為ISG Providers Lens Study 2024智能自動化服務領導者 印度班加羅爾2025年1月18日 /美通社/ -- 領先的全球數(shù)字...

關鍵字: LAN MICRO 智能自動化 OV

如果讀者朋友已經(jīng)有過匯編相關基礎,能夠夠好理解本文內容。匯編語言是比C語言更接近機器底層的編程語言,能讓我們更好的理解和操縱硬件底層。

關鍵字: 匯編 C語言

印度班加羅爾2024年12月22日 /美通社/ -- 全球數(shù)字化轉型領導者Microland欣然宣布,在2024年ISG Provider Lens?研究 - 美國多公共云服...

關鍵字: LAN MICRO 云服務 OV

2023 年 9 月,英矽智能與 Exelixis 就 XL309/ISM3091 的后續(xù)開發(fā)簽訂全球獨家許可協(xié)議 上海2024年12月13日 /美通社/ -- 12月13日,由生成式人工智能(AI)驅動臨床階段生物醫(yī)...

關鍵字: AI ISM 許可協(xié)議 OV
關閉