電子發(fā)燒友App

硬聲App

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

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>嵌入式開發(fā)>單片機(jī)的工作狀態(tài)及其狀態(tài)遷移資料下載

單片機(jī)的工作狀態(tài)及其狀態(tài)遷移資料下載

2021-04-14 | pdf | 139.46KB | 次下載 | 2積分

資料介紹

??本文以經(jīng)典的80C51單片機(jī)為例,利用工作狀態(tài)及其狀態(tài)遷移的新概念、新觀點(diǎn)和新方法,揭示一些單片機(jī)運(yùn)作的內(nèi)在規(guī)律,對(duì)于單片機(jī)學(xué)習(xí)者和應(yīng)用開發(fā)者具有一定的啟迪作用和實(shí)際意義。 ? ??1 單片機(jī)的工作狀態(tài)及其狀態(tài)遷移 ? ??80C51單片機(jī)的各種活動(dòng),可以描述成多個(gè)不同的工作狀態(tài)或工作模式。這里利用筆者構(gòu)思的一個(gè)單片機(jī)工作狀態(tài)遷移圖(如圖1所示)來說明。不過,這里重點(diǎn)關(guān)注的是復(fù)位狀態(tài)。 ? ?? ??圖1 單片機(jī)工作狀態(tài)遷移圖 ? ??經(jīng)過仔細(xì)分析之后,從圖1中可以看出: ??① 把單片機(jī)經(jīng)歷的所有生存狀態(tài)歸納和描繪成5個(gè)狀態(tài)——1個(gè)非工作狀態(tài)(即無電狀態(tài))和4個(gè)工作狀態(tài)。 ??② 只有復(fù)位狀態(tài)是一個(gè)暫態(tài),其他均為穩(wěn)態(tài);并且每次單片機(jī)進(jìn)入正常運(yùn)行狀態(tài)時(shí),都要經(jīng)歷一次復(fù)位狀態(tài)。 ??③ 只有在正常運(yùn)行狀態(tài)(這里記作NORMAL)下,單片機(jī)才按照程序存儲(chǔ)器中固化的用戶程序按部就班地一步一步執(zhí)行,從而完成開發(fā)者設(shè)計(jì)的各項(xiàng)任務(wù)。 ??④ 停機(jī)狀態(tài)(或PD模式)和待機(jī)狀態(tài)(或IDL模式),主要是為節(jié)能降耗而規(guī)劃的節(jié)電狀態(tài)(或稱“睡眠狀態(tài)”)。 ??⑤ 從無電狀態(tài)離開的唯一條件就是上電,并且唯一能夠到達(dá)的是一個(gè)暫態(tài)——復(fù)位狀態(tài)。 ??⑥ 復(fù)位狀態(tài)以外的4個(gè)狀態(tài)都有遷移到復(fù)位狀態(tài)的途徑,只是導(dǎo)致遷移的條件不盡相同。 ??⑦ 無電狀態(tài)之外的4個(gè)工作狀態(tài),都可能因?yàn)殡S時(shí)斷電而導(dǎo)致單片機(jī)進(jìn)入“無電狀態(tài)”。 ??⑧ 從另外3個(gè)工作狀態(tài)遷移到復(fù)位狀態(tài),基本都是依靠外部引腳RST上的復(fù)位信號(hào)。原始復(fù)位源比較單一,這是因?yàn)閭鹘y(tǒng)80C51的復(fù)位邏輯相對(duì)簡(jiǎn)單。如果想增加“電源欠壓復(fù)位”和“看門狗復(fù)位”等其他復(fù)位源,則需要片外擴(kuò)充獨(dú)立電路來實(shí)現(xiàn)。 ??⑨ 標(biāo)準(zhǔn)80C51沒有設(shè)計(jì)“軟件復(fù)位”功能,如果需要該功能,可以通過用戶程序自行實(shí)現(xiàn)。不同的是,軟件復(fù)位不會(huì)令CPU經(jīng)歷一次復(fù)位狀態(tài)。 ? ??2 復(fù)位源、復(fù)位操作和復(fù)位狀態(tài) ? ??像中的時(shí)序邏輯電路器件需要具備復(fù)位功能一樣,各種類型的單片機(jī)也都需要具備復(fù)位功能(RESET)。復(fù)位功能按其英文原意是重新設(shè)置的意思,也就是從頭開始執(zhí)行程序,或者重新從頭執(zhí)行程序(Restart)的意思。復(fù)位是單片機(jī)的一項(xiàng)重要操作內(nèi)容,其目標(biāo)是確保單片機(jī)運(yùn)行過程有一個(gè)良好的開端,確保單片機(jī)運(yùn)行過程中有一個(gè)良好的狀態(tài)。 ??需要強(qiáng)調(diào)的是: 關(guān)于“復(fù)位”一詞,它既包含復(fù)位活動(dòng)的意思,又包含復(fù)位狀態(tài)的意思?;蛘哒f,復(fù)位既是一個(gè)動(dòng)態(tài)的概念(指復(fù)位活動(dòng)、復(fù)位操作、復(fù)位處理或復(fù)位過程等),又是一個(gè)靜態(tài)的概念(指復(fù)位狀態(tài)或復(fù)位模式等)。 ??2.1 常規(guī)復(fù)位源和擴(kuò)充復(fù)位源 ??從現(xiàn)今的技術(shù)高度來看,標(biāo)準(zhǔn)80C51單片機(jī)的復(fù)位功能設(shè)計(jì)得不夠完善,不僅沒有設(shè)置復(fù)位標(biāo)志位寄存器,而且復(fù)位源的種類也很少。 ??所謂“復(fù)位源”,就是導(dǎo)致或者引起單片機(jī)內(nèi)部復(fù)位的源泉。對(duì)于當(dāng)前市場(chǎng)上出現(xiàn)的種類比較齊全的單片機(jī),其典型復(fù)位源大致可以歸納為以下6種: 上電復(fù)位、人工復(fù)位、電源欠壓復(fù)位、看門狗復(fù)位、非法地址復(fù)位和軟件復(fù)位。這些復(fù)位源的特點(diǎn)是: ??① 上電復(fù)位這一種復(fù)位源是必不可少的。因?yàn)槊看谓o單片機(jī)加電時(shí),其電源電壓的穩(wěn)定,以及時(shí)鐘振蕩器的起振和振幅穩(wěn)定,都需要一定的延遲時(shí)間。 ??② 只有上電復(fù)位和人工復(fù)位這兩種復(fù)位源,是講解80C51單片機(jī)的教科書、技術(shù)文章和文獻(xiàn)資料中比較常見的。 ??③ 對(duì)于電源欠壓復(fù)位、看門狗復(fù)位和非法地址復(fù)位3種復(fù)位源,標(biāo)準(zhǔn)80C51是不具備的,不過可以額外擴(kuò)充,可由單片機(jī)用戶根據(jù)實(shí)際需要通過附加一些軟件或硬件的手段來實(shí)現(xiàn)。 ??④ 雖然電源欠壓復(fù)位、看門狗復(fù)位、非法地址復(fù)位3種復(fù)位源可以額外擴(kuò)充,但是都必須借助于復(fù)位引腳RST來實(shí)施復(fù)位操作或復(fù)位鎖定。 ??⑤ 標(biāo)準(zhǔn)80C51本來不具備軟件復(fù)位功能,但是可以通過純軟件方式以及虛擬手段,來實(shí)現(xiàn)或者部分實(shí)現(xiàn)其他單片機(jī)的軟件復(fù)位。這種方法擴(kuò)充的軟件復(fù)位是一種比較特殊的復(fù)位源,一是不通過RST引腳實(shí)現(xiàn)復(fù)位,二是復(fù)位操作的內(nèi)容與眾不同。軟件復(fù)位作為一種新技術(shù),目前有越來越多的新型單片機(jī)配備了該功能。例如 Philips公司的P87LPC700和P89LPC900系列、TIBB公司的MSC1200系列、SunPlus公司的SPMC65系列等,內(nèi)部都設(shè)計(jì)了專門用于實(shí)現(xiàn)軟件復(fù)位的控制寄存器或者控制位。 ??2.2 復(fù)位操作的具體內(nèi)容 ??單片機(jī)復(fù)位功能的實(shí)現(xiàn)過程實(shí)質(zhì)上就是在單片機(jī)內(nèi)部進(jìn)行一系列的復(fù)位操作。在復(fù)位期間,單片機(jī)內(nèi)部的復(fù)位操作究竟完成了哪些內(nèi)容,是程序設(shè)計(jì)人員應(yīng)該搞清的問題,因?yàn)閱纹瑱C(jī)復(fù)位操作完成之后的內(nèi)部狀態(tài),就是運(yùn)行用戶程序和進(jìn)行軟件處理的背景、基礎(chǔ)和起點(diǎn)。 ??對(duì)80C51單片機(jī)來說,只有軟件復(fù)位的具體內(nèi)容和影響范圍,是可以由用戶自由定制的;而凡是直接作用于復(fù)位引腳RST上的復(fù)位源(如上電復(fù)位等),所實(shí)現(xiàn)的復(fù)位操作的具體內(nèi)容和影響范圍都應(yīng)該是一樣的?,F(xiàn)在歸納如下: ??① 程序計(jì)數(shù)器PC返回到原始狀態(tài)0000H; ??② 所有特殊功能寄存器SFR全部還原為復(fù)位值(可以查閱技術(shù)手冊(cè)); ??③ 所有通用并行端口(P0、P1、P2和P3)的引腳全部被設(shè)置為輸入狀態(tài); ??④ 清除各級(jí)中斷優(yōu)先級(jí)的激活觸發(fā)器,以便受理各級(jí)中斷請(qǐng)求(在標(biāo)準(zhǔn)80C51中只設(shè)置了2個(gè)中斷優(yōu)先級(jí)別,而在有些新型兼容產(chǎn)品中設(shè)置了4個(gè)級(jí)別)。 ??2.3 復(fù)位狀態(tài)的具體表現(xiàn) ??單片機(jī)一旦進(jìn)入復(fù)位狀態(tài)并且停留在復(fù)位狀態(tài)下(即外接引腳RST被鎖定在有效的高電平上),就會(huì)表現(xiàn)出如下一些具體特征: ??◇ CPU不再執(zhí)行程序而保持靜止(凍結(jié))狀態(tài); ??◇ 各種片內(nèi)外圍模塊(定時(shí)器、串行口、總線接口、中斷系統(tǒng)等)均停止工作; ??◇ 各個(gè)并口(P0~P3)的所有口線均對(duì)外呈現(xiàn)高阻狀態(tài);
下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評(píng)論

查看更多

下載排行

本周

  1. 1TC358743XBG評(píng)估板參考手冊(cè)
  2. 1.36 MB  |  330次下載  |  免費(fèi)
  3. 2開關(guān)電源基礎(chǔ)知識(shí)
  4. 5.73 MB  |  6次下載  |  免費(fèi)
  5. 3100W短波放大電路圖
  6. 0.05 MB  |  4次下載  |  3 積分
  7. 4嵌入式linux-聊天程序設(shè)計(jì)
  8. 0.60 MB  |  3次下載  |  免費(fèi)
  9. 5基于FPGA的光纖通信系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
  10. 0.61 MB  |  2次下載  |  免費(fèi)
  11. 6基于FPGA的C8051F單片機(jī)開發(fā)板設(shè)計(jì)
  12. 0.70 MB  |  2次下載  |  免費(fèi)
  13. 751單片機(jī)窗簾控制器仿真程序
  14. 1.93 MB  |  2次下載  |  免費(fèi)
  15. 8基于51單片機(jī)的RGB調(diào)色燈程序仿真
  16. 0.86 MB  |  2次下載  |  免費(fèi)

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費(fèi)
  3. 2555集成電路應(yīng)用800例(新編版)
  4. 0.00 MB  |  33564次下載  |  免費(fèi)
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費(fèi)
  7. 4開關(guān)電源設(shè)計(jì)實(shí)例指南
  8. 未知  |  21548次下載  |  免費(fèi)
  9. 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費(fèi)
  11. 6數(shù)字電路基礎(chǔ)pdf(下載)
  12. 未知  |  13750次下載  |  免費(fèi)
  13. 7電子制作實(shí)例集錦 下載
  14. 未知  |  8113次下載  |  免費(fèi)
  15. 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德爾著
  16. 0.00 MB  |  6653次下載  |  免費(fèi)

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費(fèi)
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537796次下載  |  免費(fèi)
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420026次下載  |  免費(fèi)
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費(fèi)
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費(fèi)
  11. 6電路仿真軟件multisim 10.0免費(fèi)下載
  12. 340992  |  191185次下載  |  免費(fèi)
  13. 7十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
  14. 158M  |  183278次下載  |  免費(fèi)
  15. 8proe5.0野火版下載(中文版免費(fèi)下載)
  16. 未知  |  138040次下載  |  免費(fèi)