日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

關于AT89C51系統(tǒng)時鐘中斷的應用

電子工程師 ? 來源:網(wǎng)絡整理 ? 作者:工程師姚遠香 ? 2018-07-21 11:08 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

功能強大的時鐘中斷

單片機程序設計中,設置一個好的時鐘中斷,將能使一個CPU發(fā)揮兩個CPU的功效,大大方便和簡化程序的編制,提高系統(tǒng)的效率與可操作性。我們可以把一些例行的及需要定時執(zhí)行的程序放在時鐘中斷中,還可以利用時鐘中斷協(xié)助主程序完成定時、延時等操作。

下面以6MHz時鐘的AT89C51系統(tǒng)為例,說明時鐘中斷的應用。

定時器初值與中斷周期時鐘中斷無需過于頻繁,一般取20mS(50Hz)即可。如需要百分之一秒的時基信號,可取10mS(100Hz)。這里取20mS,用定時器T0工作于16位定時器方式(方式1)。T0的工作方式為:每過一個機器周期自動加1,當計滿0FFFFh,要溢出時,便會產(chǎn)生中斷,并由硬件設置相應的標志位供軟件查詢。即中斷時比啟動時經(jīng)過了N+1個機器周期。所以,我們只要在T0中預先存入一個比滿值0FFFFh小N的數(shù),然后啟動定時器,便會在N個機器周期后產(chǎn)生中斷。這個值便是所謂的“初值”。下面計算我們需要的初值:時鐘為6MHz,12個時鐘周期為一個機器周期,20mS中有10000個機器周期。(10000)10=(2710)16,則0FFFFh-2710h+1=0D8F0h。由于響應中斷、保護現(xiàn)場及重裝初值還需要7~8個機器周期,把這個值再加上7,即T0應裝入的初值是0D8F7h。每次中斷進入后,先把A及PSW的值壓入堆棧,然后即把0D8F7h裝入T0。

設置一個單元,每次中斷加1我們可以取內部RAM中一個單元,取名為INCPI(Increase Per Interrupt),在中斷中,裝完T0初值后,用INCINCPI指令將其加一。從這個單元中,無論中斷程序還是主程序,都可以從中獲得20mS的1~256之間任意整數(shù)倍的信號。例如:有一段向數(shù)碼管送顯的程序,需要每0.5秒執(zhí)行一次以便刷新顯示器,便可以設一單元(稱為等待單元)W_DISP,用/MOV A,INCPI/ADD A,#25/MOV W_DISP,A/語句讓其比當前的INCPI值大25,然后在每次中斷中檢查是否于INCPI值相等。若相等,說明已過了25個中斷周期,便執(zhí)行送顯程序,并且讓W_DISP再加上25,等待下個0.5秒。我們可以設置多個等待單元,以便取出多個不同的時基信號。讓中斷程序在每次中斷時依次查詢各個等待單元是否與INCPI相等,若相等,則執(zhí)行相應的處理,并重新設置該等待單元的值,否則跳過。例如:用0.5秒信號刷新或閃爍顯示器,用1秒信號產(chǎn)生實時時鐘,或輸出一定頻率的方波,以一定間隔查詢輸入設備等。

在中斷中讀鍵通常,我們在主程序中讀鍵盤,步驟為:掃描鍵盤,若有鍵按下,則延時幾十毫秒去抖動,再次確認此鍵確實按下,然后處理該鍵對應的工作,完成后再次重上述步驟。但這有兩點不足:1.處理相應工作時無法鎖存按鍵的輸入,即可能漏鍵。2.延時去抖時CPU無法做其它事情,效率不高。如果把讀鍵放入時鐘中斷中,則可避免上述不足。方法為:如果兩次相鄰的中斷中都讀到同一個鍵按下,則這個鍵是有效的(達到了去抖目的),并將其鎖存到先入先出(隊列)的鍵盤緩沖區(qū),等主程序來處理。這樣,主程序處理按鍵的同時,仍可響應鍵盤的輸入。緩沖區(qū)深度通??稍O為8級,若鎖存的鍵數(shù)多于8個,則忽略新的按鍵,并報警提示用戶新的按鍵將無效。若鍵盤緩沖隊列停滯的時間大大長于主程序處理按鍵所需要的最大時間,說明主程序已出錯或跑飛,可以在中斷用指令將系統(tǒng)復位,起到了看門狗的目的。

主程序中的延時由于有常開的時鐘中斷,所以當主程序中有需要時間較短、精度較高的延時時,應暫時把時鐘中斷關閉。而程序中需要時間較長、精度不高的延時時,便可仿照下需的寫法,避免多層嵌套的循環(huán)延時。

例:在P1.1輸出1秒的高電平脈沖

MOV A,INCPI

INC A

CJNE A,INCPI$ ;等待一次中斷處理完成

SETB P1.1 ;設P1.1為H,脈沖開始

ADD A,#50 ;50個20mS為1秒

CJNE A,INCPI,$ ;等中斷將INCPI加一50次

CLR P1.1 ;設P1.1為L,脈沖結束

結束語:從上看出,要靈活地應用時鐘中斷,將任務合理分配給中斷和主程序,并且二者要分工明確,接口簡單。這其中的技巧還需要大家在實踐中多多摸索與體會。另外要注意:應盡量縮短中斷處理程序的執(zhí)行時間,更不要長于20mS。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 時鐘
    +關注

    關注

    11

    文章

    2000

    瀏覽量

    135308
  • 中斷
    +關注

    關注

    5

    文章

    920

    瀏覽量

    43889
  • AT89C51
    +關注

    關注

    27

    文章

    544

    瀏覽量

    83290
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    T89C51CC02微控制器:設計與應用全解析

    T89C51CC02微控制器:設計與應用全解析 在電子設計領域,一款性能卓越且功能豐富的微控制器能為項目帶來無限可能。T89C51CC02作為一款低引腳數(shù)的8位Flash微控制器,屬于
    的頭像 發(fā)表于 04-28 16:50 ?110次閱讀

    T89C51CC02微控制器:功能特性與應用解析

    T89C51CC02微控制器:功能特性與應用解析 在電子工程領域,微控制器是眾多項目的核心組件。今天,我們要深入探討的是T89C51CC02這款8位微控制器,它屬于CANaryTM家族,專為CAN
    的頭像 發(fā)表于 04-08 15:00 ?258次閱讀

    T89C51RD2微控制器:高性能8位解決方案

    T89C51RD2微控制器:高性能8位解決方案 在電子設計領域,選擇一款合適的微控制器對于項目的成功至關重要。T89C51RD2作為一款高性能的8位CMOS Flash微控制器,繼承了80C51
    的頭像 發(fā)表于 04-08 14:55 ?242次閱讀

    T89C51CC01微控制器:特性、應用與技術細節(jié)深度解析

    T89C51CC01微控制器:特性、應用與技術細節(jié)深度解析 在嵌入式系統(tǒng)開發(fā)領域,微控制器是核心組件之一,它的性能和功能直接影響著整個系統(tǒng)的表現(xiàn)。T89C51CC01作為一款增強型8位
    的頭像 發(fā)表于 04-08 14:40 ?192次閱讀

    A/T89C51AC2微控制器:功能特性與應用解析

    A/T89C51AC2微控制器:功能特性與應用解析 在電子設計領域,微控制器如同大腦一般,指揮著各種電子設備的運行。A/T89C51AC2作為一款高性能的8位微控制器,以其豐富的功能和出色的性能,在
    的頭像 發(fā)表于 04-08 14:40 ?216次閱讀

    深入剖析AT89C51RC:8位微控制器的卓越之選

    深入剖析AT89C51RC:8位微控制器的卓越之選 引言 在嵌入式系統(tǒng)的廣闊領域中,微控制器扮演著至關重要的角色。AT89C51RC作為一款經(jīng)典的8位微控制器,以其高性能、低功耗和豐富的功能特性,在
    的頭像 發(fā)表于 04-07 09:40 ?275次閱讀

    AT89C51RB2/RC2:高性能8位微控制器的卓越之選

    AT89C51RB2/RC2:高性能8位微控制器的卓越之選 在電子工程師的設計工具箱中,微控制器是至關重要的組件。今天,我們將深入探討AT89C51RB2/RC2這款高性能的8位微控制器,看看它有
    的頭像 發(fā)表于 04-07 09:40 ?333次閱讀

    深入解析AT89C51:一款經(jīng)典8位微控制器

    深入解析AT89C51:一款經(jīng)典8位微控制器 在嵌入式控制領域,AT89C51這款8位微控制器可謂是經(jīng)典之作。盡管它已不推薦用于新設計(建議使用AT89S51),但它的技術特點和工作原理仍值得我們
    的頭像 發(fā)表于 04-06 09:05 ?665次閱讀

    AT89C51RE2:高性能8位微控制器的全面解析

    AT89C51RE2:高性能8位微控制器的全面解析 在電子工程領域,一款性能卓越的微控制器往往能為項目帶來質的飛躍。AT89C51RE2作為一款高性能的8位微控制器,具有眾多強大的功能和特性,值得
    的頭像 發(fā)表于 04-05 16:55 ?1262次閱讀

    AT89C51RB2/RC2微控制器:高性能8位芯片的全面解析

    AT89C51RB2/RC2微控制器:高性能8位芯片的全面解析 在電子設計領域,選擇一款合適的微控制器至關重要。AT89C51RB2/RC2作為一款高性能的8位微控制器,憑借其豐富的功能和出色的性能
    的頭像 發(fā)表于 04-05 16:55 ?1326次閱讀

    AT89C51IC2:高性能8位Flash微控制器的深度解析

    AT89C51IC2:高性能8位Flash微控制器的深度解析 在電子設計領域,微控制器扮演著至關重要的角色。今天,我們就來深入探討一款高性能的8位Flash微控制器——AT89C51IC2,了解它
    的頭像 發(fā)表于 04-05 16:55 ?1197次閱讀

    AT89C51ID2:高性能8位微控制器的全面解析

    AT89C51ID2:高性能8位微控制器的全面解析 在電子設計領域,一款性能卓越、功能豐富的微控制器往往能為項目帶來更多的可能性和優(yōu)勢。AT89C51ID2就是這樣一款值得深入研究的高性能CMOS
    的頭像 發(fā)表于 04-05 16:45 ?1286次閱讀

    AT89C51RD2/ED2微控制器:特性、功能與應用詳解

    AT89C51RD2/ED2微控制器:特性、功能與應用詳解 在現(xiàn)代電子設備的設計中,微控制器扮演著至關重要的角色。AT89C51RD2/ED2是Atmel公司推出的一款高性能CMOS Flash 8
    的頭像 發(fā)表于 04-05 16:40 ?1120次閱讀

    深度解析 AT89C51CC03 微控制器:全方位性能與應用攻略

    深度解析 AT89C51CC03 微控制器:全方位性能與應用攻略 在電子工程領域,微控制器猶如大腦一般,掌控著各種電子設備的運行。AT89C51CC03 作為一款功能強大的 8 位微控制器,專為
    的頭像 發(fā)表于 04-05 16:40 ?1026次閱讀

    AT89C51 單片機中文資料

    電子發(fā)燒友網(wǎng)站提供《AT89C51 單片機中文資料.pdf》資料免費下載
    發(fā)表于 06-24 15:29 ?1次下載
    沂水县| 诏安县| 庆阳市| 烟台市| 滨州市| 广安市| 台中市| 巴马| 锡林郭勒盟| 噶尔县| 丰宁| 龙里县| 涪陵区| 长宁区| 彩票| 承德市| 循化| 乐亭县| 永和县| 个旧市| 宁波市| 稻城县| 常山县| 浦北县| 馆陶县| 苍山县| 江油市| 叶城县| 斗六市| 河北省| 阿拉善盟| 周口市| 孟州市| 桑植县| 西林县| 广丰县| 南平市| 板桥市| 将乐县| 玛曲县| 铜山县|