999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

單片機(jī)軟件延時(shí)程序的設(shè)計(jì)

2012-04-29 00:00:00呂寧
職業(yè)·中旬 2012年7期

在單片機(jī)的控制應(yīng)用中,控制過(guò)程常有延時(shí)的需要,例如交通燈的控制程序,控制紅燈亮的時(shí)間持續(xù)30秒,就可以通過(guò)延時(shí)功能來(lái)實(shí)現(xiàn)。延時(shí)功能除了可以使用定時(shí)器/計(jì)數(shù)器之外,還可以使用軟件程序來(lái)完成。軟件延時(shí)程序是典型的循環(huán)程序,它是通過(guò)執(zhí)行一個(gè)具有固定延時(shí)時(shí)間的循環(huán)體來(lái)實(shí)現(xiàn)延時(shí)的。本文從機(jī)器周期和指令周期的區(qū)別和聯(lián)系、編寫(xiě)軟件延時(shí)程序所需相關(guān)指令的用法等方面,介紹軟件延時(shí)程序的設(shè)計(jì)。

一、機(jī)器周期和指令周期

1.機(jī)器周期

機(jī)器周期是指單片機(jī)完成一個(gè)基本操作所花費(fèi)的時(shí)間,一般使用μs來(lái)計(jì)量單片機(jī)的運(yùn)行速度。MCS-51單片機(jī)的一個(gè)機(jī)器周期包括12個(gè)振蕩脈沖周期,因此,一個(gè)機(jī)器周期就是振蕩脈沖的十二分頻。如果MCS-51單片機(jī)的振蕩脈沖頻率為12MHz時(shí),那么執(zhí)行一個(gè)機(jī)器周期就只需要1μs;如果采用的是6MHz的晶振,那么執(zhí)行一個(gè)機(jī)器周期就需要2μs。

2.指令周期

指令周期是指單片機(jī)執(zhí)行一條指令所需要的時(shí)間,一般以單片機(jī)的機(jī)器周期來(lái)計(jì)量指令周期。MCS-51單片機(jī)的指令周期根據(jù)指令的不同,分成單周期指令(執(zhí)行這條指令只需一個(gè)機(jī)器周期)、雙周期指令和四周期指令。除了乘、除兩條指令是四周期指令之外,其余MCS-51單片機(jī)指令均為單周期或雙周期指令。如果MCS-51單片機(jī)采用的是12MHz晶振,那么它執(zhí)行一條指令一般只需1~2μs的時(shí)間;如果采用的是6MHz晶振,執(zhí)行一條指令一般就需2~4μs的時(shí)間。

現(xiàn)在的單片機(jī)有很多種型號(hào),但每個(gè)型號(hào)的單片機(jī)器件手冊(cè)中都會(huì)詳細(xì)說(shuō)明執(zhí)行各種指令所需的機(jī)器周期。我們可以依據(jù)單片機(jī)器件手冊(cè)中的指令執(zhí)行周期和單片機(jī)所使用晶振頻率,來(lái)完成需要用軟件的方法進(jìn)行的延時(shí)的程序設(shè)計(jì)。

二、延時(shí)指令

在MCS-51單片機(jī)指令中并沒(méi)有真正的延時(shí)指令,從以上的概念我們知道單片機(jī)每執(zhí)行一條指令都需要一定的時(shí)間。所以可以讓單片機(jī)不斷地執(zhí)行沒(méi)有具體實(shí)際意義的指令(通常把這些指令稱(chēng)為啞指令),就可以達(dá)到軟件延時(shí)的效果。

1.數(shù)據(jù)傳送指令MOV

數(shù)據(jù)傳送指令功能是將數(shù)據(jù)從一個(gè)地方復(fù)制、拷貝到另一個(gè)地方。如:MOV R7,#80H,執(zhí)行這條指令的功能是將立即數(shù)80H送到寄存器R7。就單這條指令而言并沒(méi)有任何實(shí)際意義,而執(zhí)行該指令則需要一個(gè)機(jī)器周期。

2.空操作指令NOP

空操作指令功能只是讓單片機(jī)執(zhí)行沒(méi)有意義的操作,消耗一個(gè)機(jī)器周期。

3.減1條件轉(zhuǎn)移指令DJNZ

減1條件轉(zhuǎn)移指令功能是將第一個(gè)操作數(shù)的內(nèi)容減1,判斷所得結(jié)果是否為0,不為0則轉(zhuǎn)移到指定地點(diǎn),為0則順序往下執(zhí)行。

利用以上三條指令的組合就可以比較精確地用軟件的方法設(shè)計(jì)出所需要的延時(shí)程序。

三、50ms延時(shí)程序的設(shè)計(jì)

50ms延時(shí)程序的設(shè)計(jì)(設(shè)晶振頻率f=12MHz,則機(jī)器周期為1μs)(見(jiàn)下表)。

①M(fèi)OV R6,#100在整個(gè)程序中只被執(zhí)行一次,且為單周期指令,所以耗時(shí)1×1μs。

②MOV R7,#250從②看到④只要R6-1不為0,就會(huì)返回到這句,共執(zhí)行了R6次,共耗時(shí)1×100μs。

③DJNZ R7,I2只要R7-1不為0,就反復(fù)執(zhí)行此句(內(nèi)循環(huán)R7次),又受外循環(huán)R6控制,所以共執(zhí)行R7*R6次,因是雙周期指令,所以耗時(shí)2×R7×R6=2×250×100μs。

④DJNZ R6,I1從④看到②只要R6-1不為0,就會(huì)R6次執(zhí)行這句,因是雙周期指令,所以耗時(shí)2×100μs。

⑤RET是一條子程序返回指令。在整個(gè)程序中只被執(zhí)行一次,且為雙周期指令,所以耗時(shí)2×1μs。

所以總延時(shí)時(shí)間計(jì)算為:

t=(1×1+1×100+2×250×100+2×100+2×1)×機(jī)器周期=50303μs=50.3ms

最后說(shuō)明一點(diǎn),編寫(xiě)程序時(shí),一般將延時(shí)程序編寫(xiě)成獨(dú)立的子程序,而所謂子程序也就是一個(gè)實(shí)現(xiàn)某個(gè)功能的小模塊。這樣在主程序中就可以方便地反復(fù)調(diào)用編寫(xiě)好的延時(shí)子程序。

(作者單位:江蘇省常州技師學(xué)院)

主站蜘蛛池模板: 女人av社区男人的天堂| 欧美日韩资源| 日韩在线中文| 最新日本中文字幕| 久久99热这里只有精品免费看| 97视频在线精品国自产拍| 666精品国产精品亚洲| 国产精品v欧美| 国产剧情国内精品原创| 日本一区中文字幕最新在线| 精品无码一区二区三区电影| 中文字幕丝袜一区二区| 91蜜芽尤物福利在线观看| 久久久久亚洲Av片无码观看| 国产门事件在线| 好吊日免费视频| 国产日韩欧美视频| 国产在线一区视频| 99视频精品在线观看| 国产自在线播放| 欧美亚洲国产精品第一页| 亚洲第一黄片大全| 91精品啪在线观看国产60岁| 国产一级毛片网站| 91精品国产一区自在线拍| 国产精品入口麻豆| 在线播放国产一区| 日韩毛片视频| 欧美一级高清视频在线播放| 国产区在线观看视频| 久久国产乱子| 免费午夜无码18禁无码影院| 2022国产无码在线| 十八禁美女裸体网站| 狠狠色狠狠综合久久| 亚洲欧美日本国产综合在线| 19国产精品麻豆免费观看| 欧美精品色视频| 欧美日韩精品一区二区在线线| 999精品色在线观看| 亚洲国产精品久久久久秋霞影院| 91po国产在线精品免费观看| 国产高清又黄又嫩的免费视频网站| 夜夜爽免费视频| 亚洲最猛黑人xxxx黑人猛交| 免费在线看黄网址| 制服丝袜国产精品| 欧美无专区| 热99re99首页精品亚洲五月天| 亚洲日韩精品无码专区97| 伊人久久婷婷五月综合97色| 91探花在线观看国产最新| 欧美成人精品一级在线观看| 欧美亚洲另类在线观看| 97色伦色在线综合视频| 狼友av永久网站免费观看| 欧洲精品视频在线观看| 97精品国产高清久久久久蜜芽| 黄色网址手机国内免费在线观看| 无套av在线| 国产玖玖玖精品视频| 无码网站免费观看| 国内精品91| 国产精品无码一区二区桃花视频| 精品国产一区二区三区在线观看| 国产福利微拍精品一区二区| 免费无遮挡AV| 免费a在线观看播放| 中文字幕在线永久在线视频2020| 99福利视频导航| 亚洲香蕉在线| 欧美日韩高清在线| 一级成人a做片免费| 四虎永久免费地址在线网站| 欧美成人看片一区二区三区| 中国一级特黄视频| 韩日无码在线不卡| 一级毛片视频免费| www.亚洲一区| 午夜三级在线| 久久国产成人精品国产成人亚洲| 伊人精品视频免费在线|