色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

電子發(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ā)>80C51的三種復(fù)位技術(shù)講解資料下載

80C51的三種復(fù)位技術(shù)講解資料下載

2021-04-08 | pdf | 154.27KB | 次下載 | 2積分

資料介紹

??標(biāo)準(zhǔn)80C51片內(nèi)現(xiàn)有的復(fù)位邏輯比較簡(jiǎn)單,只有通過一條復(fù)位引腳RST進(jìn)行外部擴(kuò)展。技術(shù)手冊(cè)中給出了上電復(fù)位(POR,power on reset)和人工復(fù)位(MRST,manual reset)電路的接線方法;借助于一只專用外圍芯片,如MAX813L或DS1323等,來擴(kuò)充欠壓復(fù)位(LVR,low voltage reset)和看門狗復(fù)位(WDR,watch dog timer reset)也有文章介紹。 ??本文將介紹三種非常規(guī)擴(kuò)展復(fù)位方式:軟件復(fù)位(SWR,software reset)、軟硬件復(fù)位(SHR,software and hardware reset)和非法地址復(fù)位(IAR,illegal address reset)。 ? ??軟件陷阱技術(shù)及其改良方法 ? ??軟件陷阱(software trap)是一種捕捉程序“跑飛”的編程方法。通常可以在程序中設(shè)置軟件陷阱,引導(dǎo)程序失控的單片機(jī)跳轉(zhuǎn)到一個(gè)指定的地址去執(zhí)行,最終回復(fù)到正常軌道上來。軟件陷阱可以設(shè)置在用戶程序的空隙處或者轉(zhuǎn)移指令之后,還可以利用一系列的陷阱指令來填充程序存儲(chǔ)器的空白區(qū)。實(shí)現(xiàn)軟件陷阱功能的指令是一個(gè)“5字節(jié)指令串”,通常包含2條單字節(jié)NOP指令和1條3字節(jié)跳轉(zhuǎn)指令。 ??NOP ;利用空操作指令 ??NOP ;來增加捕捉有效性 ??LJMP SWRST;無(wú)條件跳轉(zhuǎn)到指定地址去 ??其中“SWRST”可以是一段“軟件復(fù)位程序”的入口地址標(biāo)號(hào),也可以是復(fù)位矢量“0000H”,即主程序入口地址。 ??如果SWRST等于復(fù)位矢量0000H,則會(huì)把捕捉到的跑飛程序引導(dǎo)到初始化程序入口地址去執(zhí)行,從而達(dá)到回復(fù)到正常軌道的目的。這種處理方法只適合中斷功能沒有被啟用的場(chǎng)合。可以設(shè)想,假如是在(低級(jí)或高級(jí))中斷服務(wù)程序中跑飛的,這時(shí)即使把程序拉回到起點(diǎn),而中斷激活觸發(fā)器不能夠被清除,會(huì)影響以后的中斷請(qǐng)求無(wú)法被 CPU響應(yīng)。 ??如果SWRST等于“軟件復(fù)位程序”的入口地址,則會(huì)引發(fā)一次“軟件復(fù)位”。關(guān)于軟件復(fù)位程序的設(shè)計(jì)方法,隨后介紹。 ??總之,這種方法的指導(dǎo)思想是指,把未使用的ROM空間用跳轉(zhuǎn)引導(dǎo)指令填滿,作為軟件“陷阱”,以捕獲“飛掉”的程序,并強(qiáng)行將捕獲到的跑飛程序引向一個(gè)特定的地址,在那里由一段專門處理錯(cuò)誤的程序進(jìn)行處理,以恢復(fù)系統(tǒng)的正常運(yùn)行。為提高跑飛程序的捕獲率,通常還要在引導(dǎo)指令之前放置上幾條空操作指令 NOP。理由是,8051的指令編碼采用的是不等長(zhǎng)方式,長(zhǎng)度分別為1~3字節(jié),而程序跑飛又是通過非法隨機(jī)改變PC值形成的。假若跑飛后的PC值落到3 字節(jié)指令LJMP的中間,就會(huì)把操作數(shù)當(dāng)作操作碼來執(zhí)行,將會(huì)產(chǎn)生不可預(yù)知的結(jié)果。為了提高捕捉的有效性,就在LJMP指令之前至少填充2條單字節(jié)的 NOP指令。 ??如果把“5字節(jié)指令串”改換成如下作者新設(shè)計(jì)的“4字節(jié)指令串”,陷阱指令將會(huì)更加有效。理由是,該指令對(duì)應(yīng)的目標(biāo)碼為“00 20 00 20H”,這段碼無(wú)論重復(fù)多少次都是等同的。另外,應(yīng)該在程序存儲(chǔ)器0020H開始的3字節(jié)中再放置一條跳轉(zhuǎn)到“軟件復(fù)位程序”真正入口的中轉(zhuǎn)指令 LJMP SWRST。經(jīng)過核查,0020H~0022H字節(jié)恰好位于定時(shí)器T1中斷矢量區(qū)尾部和串口中斷矢量之前。 ??SWRST0 EQU 0020H;定義“軟件復(fù)位程序”的間接入口地址為“0020H” ??NOP ;填充一條單字節(jié)的空操作指令,機(jī)器碼是“00H” ??LJMP SWRST0 ;無(wú)條件跳轉(zhuǎn)到指定地址去。對(duì)應(yīng)的機(jī)器碼是“20 00 20H” ? ??軟件復(fù)位技術(shù) ? ??軟件復(fù)位是一種新技術(shù),目前有越來越多的新型單片機(jī)配備了該功能。例如Philips公司的P87LPC700和P89LPC900系列、TI- BB公司的MSC1200系列和SunPlus公司的SPMC65系列等,內(nèi)部都設(shè)計(jì)了專門用于實(shí)現(xiàn)軟件復(fù)位的控制寄存器或者控制位。 ??軟件復(fù)位是在利用軟件陷阱技術(shù)或軟件看門狗技術(shù)時(shí),必需配套實(shí)施的一項(xiàng)后續(xù)處理工作。所謂“軟件復(fù)位”是一種由用戶軟件控制的復(fù)位活動(dòng),就是利用一系列指令來模擬硬件復(fù)位所實(shí)現(xiàn)的各種操作內(nèi)容,并且重新從頭開始執(zhí)行用戶程序。 ??其中的操作內(nèi)容應(yīng)該包含:(1)對(duì)于標(biāo)準(zhǔn)80C51的21個(gè)特殊功能寄存器SFR的復(fù)位操作,利用MOV指令很容易實(shí)現(xiàn)。全部復(fù)位可能不是必需的,只管那些在用戶程序中用到的SFR即可,可以由用戶自己定制。 ??2)對(duì)于無(wú)統(tǒng)一編址的程序計(jì)時(shí)器PC的復(fù)位,利用一條跳轉(zhuǎn)指令即可。(3)中斷激活觸發(fā)器的復(fù)位既容易被人們忽略,也不容易實(shí)現(xiàn)。理由是它們對(duì)于用戶程序是不可見的,無(wú)法直接讀寫其內(nèi)容。有的編程人員采用LJMP 0000H(機(jī)器碼為20 00 00H)作為軟件陷阱,認(rèn)為直接跳轉(zhuǎn)到復(fù)位矢量就完成了軟件復(fù)位,就是這類失誤案例的典型代表。 ??清除中斷激活觸發(fā)器有何必要呢?程序的跑飛是隨機(jī)發(fā)生的,其起飛點(diǎn)完全可能發(fā)生在低級(jí)或高級(jí)中斷服務(wù)子程序中,這時(shí)的中斷激活觸發(fā)器已經(jīng)被置位。如果在程序回復(fù)之后沒有及時(shí)清除它們,將阻止以后出現(xiàn)的所有的同級(jí)或低級(jí)中斷請(qǐng)求。 ? ?? ??圖1 中斷激活觸發(fā)器示意圖 ? ??中斷激活觸發(fā)器包含高權(quán)組和低權(quán)組兩個(gè)觸發(fā)器,電路組成如圖1所示,該圖是根據(jù)作者的理解和經(jīng)驗(yàn)繪制的。電路中包括1個(gè)邏輯或門G1、兩個(gè)S-R觸發(fā)器FF1和FF2。當(dāng)CPU響應(yīng)低級(jí)中斷請(qǐng)求之后,F(xiàn)F1被置位,其Q = 0,封鎖“低權(quán)組”不再受理新的低級(jí)中斷請(qǐng)求;當(dāng)CPU響應(yīng)高級(jí)中斷請(qǐng)求之后,因?yàn)镚1的作用而使FF1和FF2同時(shí)被置位,F(xiàn)F1的Q = 0封鎖“低權(quán)組”,F(xiàn)F2的Q = 0封鎖“高權(quán)組”,不再受理新的高級(jí)和低級(jí)中斷請(qǐng)求。 ??如何設(shè)計(jì)“軟件復(fù)位程序”呢?其編寫方法如下。 ??SWRST: ;定義軟件復(fù)位程序的實(shí)際入口地址 ??CLR EA ;首先關(guān)閉中斷源總使能位 ??SETB F0 ;設(shè)置一個(gè)軟件復(fù)位標(biāo)志位 ??MOV P0,#0FFH ;設(shè)定通用端口P0為高阻輸入狀態(tài) ??MOV P1,#0FFH ;設(shè)定通用端口P1為高阻輸入狀態(tài) ??MOV P2,#0FFH ;設(shè)定通用端口P2為高阻輸入狀態(tài) ??MOV P3,#0FFH ;設(shè)定通用端口P3為高阻輸入狀態(tài) ??MOV PSW,#00H ;設(shè)定程序狀態(tài)字寄存器為原始值 ??…… ;(據(jù)實(shí)際需要還可初始化其他SFR) ??MOV DPTR,#SWR0 ;為RETI準(zhǔn)備彈出地址,而又不想改變執(zhí)行順序 ??PUSH DPL ;壓棧低字節(jié),在先 ??PUSH DPH ;壓棧高字節(jié),在后 ??RETI ;中斷返回指令,清除高級(jí)中斷激活觸發(fā)器 ??SWR0: CLR A ;準(zhǔn)備復(fù)位地址 ??PUSH ACC ;壓棧低字節(jié)00H ??PUSH ACC ;壓棧高字節(jié)00H ??RETI ;清除低級(jí)中斷激活觸發(fā)器,并跳到0000H
下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評(píng)論

查看更多

下載排行

本周

  1. 1感應(yīng)筆電路圖
  2. 0.06 MB   |  7次下載  |  免費(fèi)
  3. 2美的電磁爐維修手冊(cè)大全
  4. 1.56 MB   |  5次下載  |  5 積分
  5. 3Cortex-M3/M4F指令集技術(shù)用戶手冊(cè)
  6. 2.28MB   |  3次下載  |  免費(fèi)
  7. 4SMD LED選型手冊(cè) 貼片燈珠
  8. 5.47 MB   |  3次下載  |  免費(fèi)
  9. 5基于PLC的拉絲機(jī)張力控制系統(tǒng)研究
  10. 0.14 MB   |  2次下載  |  5 積分
  11. 6LZC3106G高性能諧振控制器中文手冊(cè)
  12. 1.29 MB   |  1次下載  |  1 積分
  13. 7JL2233B集成電平轉(zhuǎn)換功能的LDO中文手冊(cè)
  14. 0.50 MB   |  1次下載  |  免費(fèi)
  15. 8加密芯片的一種破解方法和對(duì)應(yīng)加密方案改進(jìn)設(shè)計(jì)
  16. 0.29 MB   |  1次下載  |  免費(fèi)

本月

  1. 1使用單片機(jī)實(shí)現(xiàn)七人表決器的程序和仿真資料免費(fèi)下載
  2. 2.96 MB   |  44次下載  |  免費(fèi)
  3. 2UC3842/3/4/5電源管理芯片中文手冊(cè)
  4. 1.75 MB   |  19次下載  |  免費(fèi)
  5. 3華瑞昇CR216芯片數(shù)字萬(wàn)用表規(guī)格書附原理圖及校正流程方法
  6. 0.74 MB   |  14次下載  |  3 積分
  7. 4DMT0660數(shù)字萬(wàn)用表產(chǎn)品說明書
  8. 0.70 MB   |  13次下載  |  免費(fèi)
  9. 53314A函數(shù)發(fā)生器維修手冊(cè)
  10. 16.30 MB   |  13次下載  |  免費(fèi)
  11. 6TPS54202H降壓轉(zhuǎn)換器評(píng)估模塊用戶指南
  12. 1.02MB   |  8次下載  |  免費(fèi)
  13. 7STM32F101x8/STM32F101xB手冊(cè)
  14. 1.69 MB   |  8次下載  |  1 積分
  15. 8感應(yīng)筆電路圖
  16. 0.06 MB   |  7次下載  |  免費(fèi)

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935119次下載  |  10 積分
  3. 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計(jì)
  4. 1.48MB  |  420062次下載  |  10 積分
  5. 3Altium DXP2002下載入口
  6. 未知  |  233084次下載  |  10 積分
  7. 4電路仿真軟件multisim 10.0免費(fèi)下載
  8. 340992  |  191367次下載  |  10 積分
  9. 5十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
  10. 158M  |  183335次下載  |  10 積分
  11. 6labview8.5下載
  12. 未知  |  81581次下載  |  10 積分
  13. 7Keil工具M(jìn)DK-Arm免費(fèi)下載
  14. 0.02 MB  |  73807次下載  |  10 積分
  15. 8LabVIEW 8.6下載
  16. 未知  |  65987次下載  |  10 積分
主站蜘蛛池模板: 中字幕视频在线永久在线| 99久久久A片无码国产精| 美女搜查官被高难度黑人在线播放| 国产免费怕怕免费视频观看| 超碰在线线公开免费视频| china18一19 第一次| 99re8在线视频精品| 曰韩一本道高清无码av| 亚洲日韩乱码人人爽人人澡人| 亚洲 日韩 在线 国产 视频| 小小水蜜桃视频高清在线播放| 我与恶魔的h生活ova| 小莹的性荡生活45章| 午夜神器18以下不能进免费| 乡村教师电影完整版在线观看| 午夜伦伦电影理论片费看| 香蕉59tv视频| 亚洲精品嫩草AV在线观看| 亚洲视频免费在线观看| 一边亲着一面膜下的免费过程| 亚洲欧美中文字幕高清在线| 亚洲一区电影在线观看| 在线亚洲视频无码天堂| 99国产精品白浆在线观看免费| A级毛片无码久久精品免费| 草莓视频免费在线观看| 国产精品爽黄69天堂A片| 国产亚洲精品成人AV久久| 九九热这里只有精品视频免费| 久久无码AV亚洲精品色午夜| 内射白嫩少妇超碰| 天美传媒麻豆精品| 一边亲着一面膜下奶韩剧免费 | 97草碰在线视频免费| 99在线观看视频| 国产精品九九九久久九九| 精品国产mmd在线观看| 男人天堂黄色| 无码免费视频AAAAAA片草莓| 亚洲精品免费在线视频| 97在线视频免费观看97|