μPD780208單片機的功能及應(yīng)用 (
在其他單片機系統(tǒng)中,常常是由軟件定時中斷來逐位刷新顯示,如果有健盤,定時中斷還負責(zé)完成刷新鍵盤的任務(wù),這會點用很多CPU資源;μPD780208的 FIP顯示控制/驅(qū)動器則可實現(xiàn)硬件自動顯示刷新功能,在初始設(shè)置完成后,軟件的工作只是將顯示數(shù)據(jù)按要求的模式放入FIP顯示RAM區(qū),同時在顯示時序中提供鍵盤掃描功能,這在很大程度上降低了CPU的資源占用率。
2.7 中斷系統(tǒng)
中斷系統(tǒng)由中斷源和中斷控制部分組成,并具有測試輸入功能。
a.中斷源
μPD780208 的中斷系統(tǒng)提供3種中斷類型、15個中斷源和2個中斷優(yōu)先級。3種中斷類型分別為不同屏蔽中斷、可屏蔽中斷和軟件中斷。中斷源采用向量中斷方式,在存儲器的低端64字節(jié)內(nèi)可存放系統(tǒng)復(fù)位后的起始運行地址(復(fù)位向量)和15個中斷源的中斷處理程序地址(中斷向量),參見圖2。詳細中斷源列表見表2。
表2 中斷源表
中斷類型 | 默認優(yōu)先級 | 中斷源 | 內(nèi)部/外部 | 中斷向量地址 | |
名稱 | 觸發(fā)方式 | ||||
不可屏蔽 | - | INTWDT | 模式1下看門狗定時器溢出 | 內(nèi)部 | 0004H |
可屏蔽 | 0 | INTWDT | 間隔(看門狗)定時器溢出 | 內(nèi)部 | 0004H |
1 | INTP0 | 檢測到外部輸入引腳的沿變化 | 外部 | 0006H | |
2 | INTP1 | 檢測到外部輸入引腳的沿變化 | 外部 | 0008H | |
3 | INTP2 | 檢測到外部輸入引腳的沿變化 | 外部 | 000AH | |
4 | INTP3 | 檢測到外部輸入引腳的沿變化 | 外部 | 000CH | |
5 | INTCSI0 | 串行接口通道0發(fā)送結(jié)束 | 內(nèi)部 | 000EH | |
6 | INTCSI1 | 串行接口通道1發(fā)送結(jié)束 | 內(nèi)部 | 0010H | |
7 | INTTM3 | WATCH定時器間隔 | 內(nèi)部 | 0012H | |
8 | INTTM0 | 16位定時器時間到 | 內(nèi)部 | 0014H | |
9 | INTTM1 | 8位定時器1時間到 | 內(nèi)部 | 0016H | |
10 | INTTM2 | 8位定時器2時間到 | 內(nèi)部 | 0018H | |
11 | INTAD | A/D轉(zhuǎn)換結(jié)束 | 內(nèi)部 | 001AH | |
12 | INTKS | FIP控制器提供的鍵盤時序到 | 內(nèi)部 | 001CH | |
軟件 | - | BRK | 執(zhí)行BRK指令 | - | 003EH |
b.中斷控制
中斷功能由以下6種寄存器來控制:
(1)中斷請求標志寄存器IF0L和IF0H:當(dāng)某中斷請求發(fā)生時,對應(yīng)的位被置1。
(2)中斷屏蔽標志寄存器MK0L和MK0H:用于打開或關(guān)閉指定可屏蔽的中斷響應(yīng)。
(3)優(yōu)先級標志寄存器PR0L和PR0H:用于設(shè)置可屏蔽中斷的優(yōu)先級順序,優(yōu)先級分為高級和低級。
(4)外部中斷模式寄存器INTM0:用于指定外部中斷INTP0、INTP1、INTP2的觸發(fā)有效沿,該有效沿可以是下降沿有效、上升沿有效或上升沿下降沿均有效。而INTP3則被固定為下降沿觸發(fā)。
(5)采樣時鐘選擇寄存器SCS:用于設(shè)定INTP0的采樣時鐘。
(6)程序狀態(tài)字PSW:其中的IE和ISP標志用于打開或關(guān)閉對可屏蔽中斷的響應(yīng)和指示當(dāng)前中斷的優(yōu)先級。
c.測試輸入功能
測試輸入功能也是中斷系統(tǒng)的一部分,測試輸入沒有中斷處理,它由WATCH定時器溢出觸發(fā),并置位測試輸入標志W(wǎng)TIF。
2.8 待機功能
待機功能用于減少系統(tǒng)的功能。μPD780208支持暫停和停止2種待機模式。
執(zhí)行HALT指令將使系統(tǒng)從正常運行模式進入到暫停模式。在這種模式下,CPU操作時鐘被停止,但系統(tǒng)時鐘振蕩器仍工作,因此功耗減小但幅度不大。在發(fā)生中斷請求時,暫停模式將被清除,系統(tǒng)立即轉(zhuǎn)換回正常運行模式,并執(zhí)行中斷程序。
執(zhí)行STOP指令將使系統(tǒng)從正常運行模式進入到停止模式。在這種模式下,系統(tǒng)時鐘振蕩器被請求可以使系統(tǒng)返回正常運行模式,但是,由于系統(tǒng)時鐘振需要啟動并達到穩(wěn)定工作需要一段時間,因此,在這種模式返回時不能立即執(zhí)行操作。
暫停模式可以在主系統(tǒng)和子系統(tǒng)時鐘下工作,而停止模式只能在主系統(tǒng)時鐘下工作。在這2種模式下,CPU在進入待機模式前的所有狀態(tài),包括I/O口狀態(tài)都被保留。
待機模式在清除時,暫停模式可用未被屏蔽的可屏蔽中斷請求、不可屏蔽中斷請求、未被屏蔽的測試輸入、系統(tǒng)RESET復(fù)位等信號清除。暫停模式在被前3種方式消除后,CPU將繼續(xù)執(zhí)行HALT指令的下一條指令;而系統(tǒng)復(fù)位后CPU將轉(zhuǎn)入復(fù)位向量地址。
停止模式可用不可屏蔽中斷請求、未被屏蔽的測試輸入或系統(tǒng)RESET復(fù)位信號清除。清除后的CPU運行情況與暫停模式相同。
3 應(yīng)用
綜上所述,μPD780208是一個功能強大的單機產(chǎn)品,適合于要求速度快、可靠性高、擴展功能強和節(jié)電的應(yīng)用系統(tǒng)。圖3是一個μPD780208 的應(yīng)用實例,該應(yīng)用充分利用了該芯片的性能特點,其包括VFD直接驅(qū)動真空熒光管顯示器VFD,開關(guān)量輸入輸出,A/D轉(zhuǎn)換,鍵盤掃描輸入,串行通訊,接口擴展等模塊,是一個較為完整的應(yīng)用系統(tǒng)
評論