家電維修班,手機(jī)維修班,電腦維修班,電工班,焊工班,液晶電視維修班,電動(dòng)工具維修班、電動(dòng)車摩托車維修班、網(wǎng)絡(luò)營(yíng)銷培訓(xùn)、網(wǎng)站設(shè)計(jì)培訓(xùn)、淘寶培訓(xùn)---全國(guó)招生 家電維修班,手機(jī)維修班,電腦維修班,電工班,焊工班,液晶電視維修班,電動(dòng)工具維修班、電動(dòng)車摩托車維修班、網(wǎng)絡(luò)營(yíng)銷培訓(xùn)、網(wǎng)站設(shè)計(jì)培訓(xùn)、淘寶培訓(xùn)---全國(guó)招生

中日欧洲精品视频在线-中日韩在线观看-中日韩一区二区三区-中日韩精品视频在线观看-狂野欧美老黑粗又硬-狂野猛交xxxx吃奶

您的位置:網(wǎng)站首頁(yè) > 電器維修資料網(wǎng) > 正文 >

C語(yǔ)言中斷處理過程

★★★★★【文章導(dǎo)讀】:C語(yǔ)言中斷處理過程具體內(nèi)容是:在單片機(jī)程序設(shè)計(jì)中,設(shè)置一個(gè)好的時(shí)鐘中斷,將能使一個(gè)cpu發(fā)揮兩個(gè)cpu的功效,大大方便和簡(jiǎn)化程序的編制,提高系統(tǒng)的效率與可操作性。我們可以把一些例行的及需要定時(shí)執(zhí)行的程序放在時(shí)鐘中斷中,還可以利用時(shí)鐘中斷…

來(lái)源: 日期:2013-12-18 14:00:45 人氣:標(biāo)簽:

C語(yǔ)言中斷處理過程

  在單片機(jī)程序設(shè)計(jì)中,設(shè)置一個(gè)好的時(shí)鐘中斷,將能使一個(gè)cpu發(fā)揮兩個(gè)cpu的功效,大大方便和簡(jiǎn)化程序的編制,提高系統(tǒng)的效率與可操作性。
  
  我們可以把一些例行的及需要定時(shí)執(zhí)行的程序放在時(shí)鐘中斷中,還可以利用時(shí)鐘中斷協(xié)助主程序完成定時(shí)、延時(shí)等操作。
  
  下面以6mhz時(shí)鐘的at89c51系統(tǒng)為例,說(shuō)明時(shí)鐘中斷的應(yīng)用。
  
  定時(shí)器初值與中斷周期:時(shí)鐘中斷無(wú)需過于頻繁,一般取20ms(50hz)即可。如需要百分之一秒的時(shí)基信號(hào),可取10ms(100hz)。這里取20ms,用定時(shí)器t0工作于16位定時(shí)器方式(方式1)。t0的工作方式為:每過一個(gè)機(jī)器周期自動(dòng)加1,當(dāng)計(jì)滿0ffffh,要溢出時(shí),便會(huì)產(chǎn)生中斷,并由硬件設(shè)置相應(yīng)的標(biāo)志位供軟件查詢。即中斷時(shí)比啟動(dòng)時(shí)經(jīng)過了n+1個(gè)機(jī)器周期。所以,我們只要在t0中預(yù)先存入一個(gè)比滿值0ffffh小n的數(shù),然后啟動(dòng)定時(shí)器,便會(huì)在n個(gè)機(jī)器周期后產(chǎn)生中斷。這個(gè)值便是所謂的"初值"。下面計(jì)算我們需要的初值:時(shí)鐘為6mhz,12個(gè)時(shí)鐘周期為一個(gè)機(jī)器周期,20ms中有10000個(gè)機(jī)器周期。(10000)10=(2710)16,則 0ffffh-2710h+1=0d8f0h。由于響應(yīng)中斷、保護(hù)現(xiàn)場(chǎng)及重裝初值還需要7~8個(gè)機(jī)器周期,把這個(gè)值再加上7,即t0應(yīng)裝入的初值是0d8f7h。每次中斷進(jìn)入后,先把a(bǔ)及psw的值壓入堆棧,然后即把0d8f7h裝入t0。
  
  設(shè)置一個(gè)單元,每次中斷加1,我們可以取內(nèi)部ram中一個(gè)單元,取名為incpi(increase per interrupt),在中斷中,裝完to初值后,用inc incpi指令將其加一。從這個(gè)單元中,無(wú)論中斷程序還是主程序,都可以從中獲得20ms的1~256之間任意整數(shù)倍的信號(hào)。例如:有一段向數(shù)碼管送顯的程序,需要每0.5秒執(zhí)行一次以便刷新顯示器,便可以設(shè)一單元(稱為等待單元)w_disp,用/mov a,incpi/add a,#25/mov w_disp,a/語(yǔ)句讓其比當(dāng)前的incpi值大25,然后在每次中斷中檢查是否于incpi值相等。若相等,說(shuō)明已過了25個(gè)中斷周期,便執(zhí)行送顯程序,并且讓w_disp再加上25,等待下個(gè)0.5秒。我們可以設(shè)置多個(gè)等待單元,以便取出多個(gè)不同的時(shí)基信號(hào)。讓中斷程序在每次中斷時(shí)依次查詢各個(gè)等待單元是否與incpi相等,若相等,則執(zhí)行相應(yīng)的處理,并重新設(shè)置該等待單元的值,否則跳過。例如:用0.5秒信號(hào)刷新或閃爍顯示器,用1秒信號(hào)產(chǎn)生實(shí)時(shí)時(shí)鐘,或輸出一定頻率的方波,以一定間隔查詢輸入設(shè)備等。
  
  在中斷中讀鍵:通常,我們?cè)谥鞒绦蛑凶x鍵盤,步驟為:掃描鍵盤,若有鍵按下,則延時(shí)幾十毫秒去抖動(dòng),再次確認(rèn)此鍵確實(shí)按下,然后處理該鍵對(duì)應(yīng)的工作,完成后再次重上述步驟。但這有兩點(diǎn)不足:1.處理相應(yīng)工作時(shí)無(wú)法鎖存按鍵的輸入,即可能漏鍵。2.延時(shí)去抖時(shí)cpu無(wú)法做其它事情,效率不高。如果把讀鍵放入時(shí)鐘中斷中,則可避免上述不足。方法為:如果兩次相鄰的中斷中都讀到同一個(gè)鍵按下,則這個(gè)鍵是有效的(達(dá)到了去抖目的),并將其鎖存到先入先出(隊(duì)列)的鍵盤緩沖區(qū),等主程序來(lái)處理。這樣,主程序處理按鍵的同時(shí),仍可響應(yīng)鍵盤的輸入。緩沖區(qū)深度通?稍O(shè)為8級(jí),若鎖存的鍵數(shù)多于8個(gè),則忽略新的按鍵,并報(bào)警提示用戶新的按鍵將無(wú)效。若鍵盤緩沖隊(duì)列停滯的時(shí)間大大長(zhǎng)于主程序處理按鍵所需要的 大時(shí)間,說(shuō)明主程序已出錯(cuò)或跑飛,可以在中斷用指令將系統(tǒng)復(fù)位,起到了看門狗的目的。
  
  主程序中的延時(shí):由于有常開的時(shí)鐘中斷,所以當(dāng)主程序中有需要時(shí)間較短、精度較高的延時(shí)時(shí),應(yīng)暫時(shí)把時(shí)鐘中斷關(guān)閉。而程序中需要時(shí)間較長(zhǎng)、精度不高的延時(shí)時(shí),便可仿照下需的寫法,避免多層嵌套的循環(huán)延時(shí)。
  
  c51編譯器支持在c源程序中直接開發(fā)中斷過程,因此減輕了使用匯編語(yǔ)言的繁瑣工作,提高了開發(fā)效率。中、斷服務(wù)函數(shù)的完整語(yǔ)法如下:

  其中n(o~31)代表中斷號(hào)。c51編譯器允許32個(gè)中斷,具體使用哪個(gè)中斷由80c51系列的芯片決定。r(o~3)代表第r組寄存器。在調(diào)用中斷函數(shù)時(shí),要求中斷過程調(diào)用的函數(shù)所使用的寄存器組必須與其相同。"再入"用于說(shuō)明中斷處理函數(shù)有無(wú)”再入“能力。
  
  c51編譯器及其對(duì)c語(yǔ)言的擴(kuò)充允許編程者對(duì)中斷所有方面的控制和寄存器組的使用。這種支持能使編程者創(chuàng)建高效的中斷服務(wù)程序,用戶只須在c語(yǔ)言下關(guān)心中斷和必要的寄存器組切換操作。下面通過舉一個(gè)簡(jiǎn)單的例子,讓大家了解一下c51編中斷程序的方法。
  
  例:設(shè)單片機(jī)的fosc=12mhz,要求用t0的方式1編程,在p1.o腳輸出周期為2ms的方波。

  從上看出,要靈活地應(yīng)用時(shí)鐘中斷,將任務(wù)合理分配給中斷和主程序,并且二者要分工明確,接口簡(jiǎn)單。這其中的技巧還需要大家在實(shí)踐中多多摸索與體會(huì)。另外要注意:應(yīng)盡量縮短中斷處理程序的執(zhí)行時(shí)間,更不要長(zhǎng)于20ms。另外需要注意的一點(diǎn)就是在編寫中斷服務(wù)程序時(shí)必須注意不能進(jìn)行參數(shù)傳遞,不能有返回值。


【看看這篇文章在百度的收錄情況】

聯(lián)系方式

  • 0731-85579057 , 13308461099
  • 點(diǎn)擊這里給我發(fā)消息點(diǎn)擊這里給我發(fā)消息點(diǎn)擊這里給我發(fā)消息
網(wǎng)站欄目導(dǎo)航: 培訓(xùn)課程 手機(jī)硬件 手機(jī)軟件 綜合維修 學(xué)校資訊 考證指南 就業(yè)導(dǎo)航 招生指南 教學(xué)管理 入學(xué)須知 學(xué)校圖片 教學(xué)大綱 師資力量 學(xué)生感言 學(xué)校概況 教學(xué)實(shí)景 手機(jī)維修培訓(xùn)資訊 電腦維修培訓(xùn) 維修間故事 手機(jī)維修培訓(xùn) 液晶電視維修培訓(xùn) 家電維修資料網(wǎng) 電器維修資料網(wǎng) 招生地區(qū) 刷機(jī)教程 家電維修 手機(jī)技巧 老版網(wǎng)站 招生平臺(tái)網(wǎng)絡(luò)工程
友情鏈接: 監(jiān)控安裝培訓(xùn) 電動(dòng)工具維修 家電維修學(xué)校 電工培訓(xùn)學(xué)校 液晶電視維修 焊工培訓(xùn)學(xué)校 電工焊工學(xué)校 電腦維修學(xué)校 家電維修培訓(xùn) 電腦維修培訓(xùn) 家裝電工培訓(xùn)網(wǎng)絡(luò)安裝維護(hù) 主板維修 液晶顯示器 筆記本電腦維修 電腦組裝維護(hù) 電腦硬件維修 電腦維修 電工考證 電工證 裝修電工 水電工 維修電工 電工 焊接技術(shù) 電焊工 焊工 電動(dòng)設(shè)備維修 電動(dòng)工具維修 制冷維修 空調(diào)維修 冰箱維修  更多>>
陽(yáng)光-手機(jī)維修教育品牌學(xué)校
點(diǎn)擊這里給我發(fā)消息 點(diǎn)擊這里給我發(fā)消息 點(diǎn)擊這里給我發(fā)消息
電工培訓(xùn)學(xué)校 電動(dòng)車維修學(xué)校 摩托車維修學(xué)校 摩托車維修培訓(xùn) 手機(jī)維修培訓(xùn) 家電維修培訓(xùn) 電腦維修培訓(xùn) 電動(dòng)工具維修培訓(xùn) 液晶電視維修培訓(xùn) 安防監(jiān)控培訓(xùn) 空調(diào)維修培訓(xùn) 網(wǎng)絡(luò)營(yíng)銷培訓(xùn) 網(wǎng)站設(shè)計(jì)培訓(xùn) 淘寶網(wǎng)店培訓(xùn) 電器維修培訓(xùn) 家電維修學(xué)校 電工培訓(xùn) 焊工培訓(xùn) 電工學(xué)校 電工培訓(xùn)學(xué)校 電動(dòng)車維修學(xué)校 摩托車維修學(xué)校 摩托車維修培訓(xùn) 手機(jī)維修培訓(xùn) 家電維修培訓(xùn) 電腦維修培訓(xùn) 電動(dòng)工具維修培訓(xùn) 液晶電視維修培訓(xùn) 安防監(jiān)控培訓(xùn) 空調(diào)維修培訓(xùn) 網(wǎng)絡(luò)營(yíng)銷培訓(xùn) 網(wǎng)站設(shè)計(jì)培訓(xùn) 淘寶網(wǎng)店培訓(xùn) 電器維修培訓(xùn) 家電維修學(xué)校 電工培訓(xùn) 焊工培訓(xùn) 電工學(xué)校 電工培訓(xùn)學(xué)校 電動(dòng)車維修學(xué)校 摩托車維修學(xué)校 摩托車維修培訓(xùn) 手機(jī)維修培訓(xùn) 家電維修培訓(xùn) 電腦維修培訓(xùn) 電動(dòng)工具維修培訓(xùn) 液晶電視維修培訓(xùn) 安防監(jiān)控培訓(xùn) 空調(diào)維修培訓(xùn) 網(wǎng)絡(luò)營(yíng)銷培訓(xùn) 網(wǎng)站設(shè)計(jì)培訓(xùn) 淘寶網(wǎng)店培訓(xùn) 電器維修培訓(xùn) 家電維修學(xué)校 電工培訓(xùn) 焊工培訓(xùn) 電工學(xué)校 電工培訓(xùn)學(xué)校 電動(dòng)車維修學(xué)校 摩托車維修學(xué)校 摩托車維修培訓(xùn) 手機(jī)維修培訓(xùn) 家電維修培訓(xùn) 電腦維修培訓(xùn) 電動(dòng)工具維修培訓(xùn) 液晶電視維修培訓(xùn) 安防監(jiān)控培訓(xùn) 空調(diào)維修培訓(xùn) 網(wǎng)絡(luò)營(yíng)銷培訓(xùn) 網(wǎng)站設(shè)計(jì)培訓(xùn) 淘寶網(wǎng)店培訓(xùn) 電器維修培訓(xùn) 家電維修學(xué)校 電工培訓(xùn) 焊工培訓(xùn) 電工學(xué)校
中山市,固原市,銀川市,玉樹,海東,隴南市,酒泉市,張掖市,天水市,金昌市,蘭州市,榆林市,延安市,渭南市,銅川市,阿里,山南,拉薩市,怒江,文山州,楚雄州,普洱市,昭通市,玉溪市,昆明市,畢節(jié),銅仁,遵義市,貴陽(yáng)市,甘孜州,資陽(yáng)市,達(dá)州市,宜賓市,南充市,遂寧市,綿陽(yáng)市,瀘州市,自貢市,三亞市,崇左市,河池市,玉林市,欽州市,梧州市,柳州市,梅州市,肇慶市,湛江市,佛山市,珠海市,韶關(guān)市,湘西州,懷化市,郴州市,張家界市,邵陽(yáng)市,株洲市,仙桃市,隨州市,荊州市,荊門市,襄樊市,黃石市,駐馬店市,信陽(yáng)市,南陽(yáng)市,漯河市,中衛(wèi)市,石嘴山市,海西,海南藏州,黃南州,海北,甘南,慶陽(yáng)市,平?jīng)鍪?武威市,白銀市,嘉峪關(guān)市,安康市,漢中市,咸陽(yáng)市,寶雞市,林芝,日喀則,昌都,迪慶,德宏,大理,西雙版納,紅河州,臨滄市,麗江市,保山市,曲靖市,黔東州,黔西州,安順市,六盤水市,涼山州,阿壩州,雅安市,廣安市,眉山市,內(nèi)江市,廣元市,德陽(yáng)市,攀枝花市,成都市,?谑,來(lái)賓市,百色市,貴港市,北海市,桂林市,南寧市,云浮市,揭陽(yáng)市,潮州市,清遠(yuǎn)市,陽(yáng)江市,汕尾市,惠州市,茂名市,江門市,汕頭市,深圳市,廣州市,婁底市,永州市,益陽(yáng)市,岳陽(yáng)市,湘潭市,長(zhǎng)沙市,恩施州,黃岡市,孝感市,鄂州市,十堰市,武漢市,周口市,商丘市,三門峽市,許昌市,焦作市,安陽(yáng)市,鶴壁市,平頂山市,開封市,鄭州市,聊城市,濱州市,德州市,萊蕪市,日照市,泰安市,煙臺(tái)市,濰坊市,東營(yíng)市,淄博市,上饒市,濟(jì)南市,撫州市,宜春市,贛州市,新余市,九江市,景德鎮(zhèn)市,寧德市,南平市,泉州市,莆田市,廈門市,宣城市,亳州市,六安市,宿州市,黃山市,滁州市,安慶市,淮北市,馬鞍山市,蚌埠市,蕪湖市,合肥市,麗水市,舟山市,衢州市,金華市,湖州市,嘉興市,寧波市,宿遷市,鎮(zhèn)江市,鹽城市,連云港市,蘇州市,徐州市,南京市,綏化市,牡丹江市,佳木斯市,大慶市,鶴崗市,哈爾濱市,白城市,白山市,遼源市,吉林市,葫蘆島市,鐵嶺市,盤錦市,阜新市,錦州市,本溪市,鞍山市,沈陽(yáng)市,錫林郭勒盟,通遼市,烏海市,呂梁市,忻州市,晉中市,晉城市,陽(yáng)泉市,太原市,廊坊市,承德市,保定市,邯鄲市,唐山市,寧夏,甘肅省,西藏,貴州省,重慶市,廣西,湖南省,河南省,江西省,安徽省,江蘇省,黑龍江省,遼寧省,山西省,天津市,四平市,內(nèi)蒙古,吳忠市,果洛,西寧市,定西市,商洛市,西安市,那曲,黔南州,巴中市,樂山市,賀州市,防城港市,東莞市,河源市,常德市,衡陽(yáng)市,咸寧市,宜昌市,濮陽(yáng)市,新鄉(xiāng)市,洛陽(yáng)市,菏澤市,臨沂市,威海市,濟(jì)寧市,棗莊市,青島市,吉安市,鷹潭市,萍鄉(xiāng)市,南昌市,龍巖市,漳州市,三明市,福州市,池州市,巢湖市,阜陽(yáng)市,銅陵市,淮南市,臺(tái)州市,紹興市,溫州市,杭州市,泰州市,揚(yáng)州市,淮安市,南通市,常州市,無(wú)錫市,大興安嶺,黑河市,七臺(tái)河市,伊春市,雙鴨山市,雞西市,齊齊哈爾市,延邊,松原市,通化市,長(zhǎng)春市,朝陽(yáng)市,遼陽(yáng)市,營(yíng)口市,丹東市,撫順市,大連市,阿拉善盟,興安盟,烏蘭察布市,巴彥淖爾市,呼倫貝爾市,鄂爾多斯市,赤峰市,包頭市,呼和浩特市,臨汾市,運(yùn)城市,朔州市,長(zhǎng)治市,大同市,衡水市,滄州市,張家口市,邢臺(tái)市,秦皇島市,石家莊市,青海省,陜西省,云南省,四川省,海南省,廣東省,湖北省,山東省,福建省,浙江省,上海市,吉林省,河北省,北京市 主站蜘蛛池模板: 碰超成人在线公开免费视频 | 野花社区视频WWW高清 | 日韩一卡二卡三卡四卡免费观在线 | 97人人看碰人免费公开视频 | 欧美一区二区三区不卡免费 | 久久99国产精品蜜臀AV | freevideoshd| 99视频在线观看免费视频 | 久久两性视频 | 麻豆一区二区三区蜜桃免费 | 蜜臀AV久久国产午夜福利软件 | 欧美5g影院天天爽天天看 | 在线观看国产小视频 | 国产叼嘿久久精品久久 | ai换脸女明星被躁在线观看免费 | 拔萝卜电视剧高清免费 | 暖暖日本大全免费观看 | 伊人在线高清视频 | 无码一卡二卡三卡四卡 | 亚州精品永久观看视频 | 99re5久久热在线 | 成人网络电视破解版 | 国产亚洲精品欧洲在线视频 | 精品国产在线国语视频 | 中文字幕永久在线 | 中文字幕成人在线观看 | 日本无码色哟哟婷婷最新网站 | 精品日韩欧美一区二区三区 | 大胸美女被吊起来解开胸罩 | 高挑人妻无奈张开腿 | 成年人免费在线视频观看 | 国产精品人妻一区免费看8C0M | 欧美人成人亚洲专区中文字幕 | 久草大| 欧美91精品久久久久网免费 | 歪歪爽蜜臀AV久久精品人人槡 | 欧美亚洲另类丝袜自拍动漫 | 黄色三级网络 | 日本高清加勒比 | 国产亚洲精品久久久久小 | 青草久久精品亚洲综合专区 |