a一级爱做片免费观看欧美,久久国产一区二区,日本一二三区免费,久草视频手机在线观看

新聞中心

EEPW首頁 > 嵌入式系統 > 設計應用 > 基于SST89C58單片機的仿真器設計與電路構成

基于SST89C58單片機的仿真器設計與電路構成

作者: 時間:2016-10-15 來源:網絡 收藏

單片機可實現對單片機程序的單步跟蹤調試,具備斷點或全速等多種調式方式,同時能夠記錄各種變量以及RAM和寄存器的動態數據,對于程序的執行步驟與效果進行實時觀察。此外,其還可實現對硬件電路的動態調試。當前單片機已在工業中得到了廣泛應用,因此加大對其的研究具有重要的現實意義。

本文引用地址:http://www.j9360.com/article/201610/307410.htm

1 基于設計

設計的主要部分是,從其構成來看,內部集成了72 kB大小的SuperFlashEEPROM程序存儲器,涵蓋了64 kB大小的Block0及8 kB大小的Block1的Flash—ROM。該單片機對于傳統使用的SoftICE監控也做出了一定的優化處理,其中監控程序共占據了存儲塊Block0大小為1 kB的FC00H~FFFFH,同時還有Block1中大小為4 kB的0000H~0FF FH。

研究人員在進行仿真器調試過程中,借助IAP的幫助下再應用編程,將用戶的目標程序從電腦機下載至仿真芯片所剩下的Block0空間之中,大小為63 kB,然后利用SoftICE的作用實施仿真調試。但需注意的是,在整個調試過程中,SoftICE和電腦內部的調試器程序之間始終未中斷正常的通信聯系。

文中從仿真器仿真的原理進行分析,其本質就是在程序調試時根據需要動態的對程序存儲區作相應的修改,也唯有如此才能達到斷點運行或單步運行的良好效果。在仿真芯片中研究人員預先燒入了相應的監控程序,其主要功能在于與計算機之間實施良好的通訊。等到調試者利用KeilμVision2集成環境來實施仿真的過程中,后者便會將程序目標代碼利用串口傳輸到仿真器中,然后通過仿真器中監控程序的作用來將代碼燒寫至監控芯片的程序存儲器。當SST89C58單片機程序在調試時,監控程序也會在集成開發環境指令的作用下,對于被調試的程序進行適當的改寫,以便實現設置斷點及單步運行。在這一過程中,一旦程序遇到斷點而只能中斷執行后,則此時監控程序便可獲得CPU的控制權,其不僅需承擔起查看單片機寄存器、RAM以及單片機內部的相關變量的工作任務,同時還需觀察狀態在串行口的幫助下輸送至集成開發環境的過程,判斷其是否可滿足用戶觀察的各種需求。

2 分析

2.1 SSTB9C58單片機

圖中的U1表示的是SST89C58單片機,從其指令來看與8051單片機完全相同,均使用的是雙列直插封裝方式,且其能與標準的8051管腳之間實現有效兼容。在整個電路中,對31引腳采取了接高電平的處理,目的在于確保其僅能訪問內部64 kB大小的程序存儲器;在這一構成條件下,利用對內部特殊功能寄存器的有效操作,可達到IAP在應用可編程的效果;系統本身帶有SPI串行接口以及全雙工增強型UART;若處于常規情況下,運行過程中外部晶振能達到40 MHz。

SST89C58單片機的16引腳可當做普通I/O口來進行使用,研究人員利用按鍵S2接地,與此同時S2和復位按鍵S1兩者在互相作用下,不僅能實現仿真器的脫機運行,還可達到仿真運行功能的切換效果。

2.2 晶振與復位電路

如圖1所示,晶振電路中主要包括晶振Y1、電容C5與C6、跳線器J1與J2等幾個部分。在運行過程中,仿真器利用J1、J2的作用來決定是否需要應用外部電路晶振,否則便需要應用仿真器內部電路晶振。但需注意的是,等到跳線器J1及J2“2、3”端受到各種因素的影響發生短接時,則需采用用戶板晶振;而一旦J1及J2“1、2”端發生短接,此時就需要應用仿真器內部電路晶振。

基于SST89C58單片機的仿真器設計與電路構成

復位電路的主要功能在于仿真器的上電復位以及強制復位。從構成上講,復位電路中涵蓋了大小為0.1μF的電容C7、按鍵S1以及10 kΩ的R1。一旦系統上電,就會自動選擇電容C7充電,單片機的復位引腳RST就能獲得一個高電平脈沖,而等到C7充電結束后,復位引腳轉變成低電平,就可完成上電復位作用;在SST89C58工作時,若根據實際情況必須對系統采取強制復位,工作人員可選擇S1,復位腳電平便會從原先的低電平轉變成高電平,而電容C7則會被瞬間放電,等到S1鍵被松開后,VCC就會開始對電容C7進行充電,以確保復位腳的高電平可持續一定的時間,因此最終完成強制復位功能。

2.3 電平轉換電路

研究選擇RS-232標準作為仿真器和計算機之間的串行通信。其中SST89C58單片機的邏輯電平常與TTL電平之間是兼容的,不過在RS-232標準中要求的邏輯電平和TTL電平之間,無論在極性還是幅度上均存在著一定的差異性,故需要采取電平轉換。

文中選擇的集成芯片是MAX232D,即圖中的U2,其電平轉換電路主要包括內部的電源電壓變換器及外部電容等,主要目的在于實現電腦的232電平及SST89C58單片機的TTL電平之間的順利轉換。為達到這一目的,應當將輸入的+5 V大小電源電壓轉變到±9 V。SST89C58單片機的串行通信傳輸信號是TXD,具體運行時需由U2的10引腳T2IN中開始進行輸入,然后當其已經轉變為232電平后,便可通過7引腳T2OUT來進行輸出,在此基礎上就可實現與電腦串行口接收端之間的連接;電腦的串口發送信號則需通過U2的8引腳R2IN才可進行輸入,等到已轉變為TTL電平后就可通過9引腳R2OUT來進行輸出,然后與SST89C58單片機的接收引腳RXD之間實現互相連接。其具體情況如圖2所示。

基于SST89C58單片機的仿真器設計與電路構成

2.4 邏輯電平測試電路

設計時還可在仿真器上增加相應的集成邏輯筆功能,目的在于對電路中電平狀態實現動態的測量,給SST89C58單片機實驗實訓及技術開發過程中工作人員及時的進行電路調試和硬件故障排除等創造了良好條件。邏輯電平測試電路除了有SN74HC00D(U3)之外,還包括發光二極管指示燈L1與L5,以及電阻R5~R9等幾個部分。運行過程中只需通過測試線將測試端J4(V-IN)和相應的被測點之間進行有效連接。若發現被測電平處于高電平狀態,則U3A和非門便會開始輸出低電平,此時紅燈L1亮起,而若U3C和非門開始輸出高電平,則此時綠燈L2不亮,所代表的含義就是此時處于高電平狀態;若輸入端已與低電平之間實現有效連接時,則此時綠燈L2亮,而紅燈L1則處于不亮狀態;等到測試輸入端空載,則無論是紅燈或是綠燈均處于不亮狀態;若系統中連接的測試信號為脈沖,則會發生一種紅燈和綠燈一起閃爍的現象,工作人員只需利用對閃爍的速率及明暗程度進行觀察,就可較為準確地估測出被測信號的頻率大小及占空比情況。

3 結束語

SST89C58單片機與KeilμVision2集成開發軟件間的有機結合,提供了一種功能過硬的單片機仿真器,其可實現仿真器的脫機運行以及仿真運行功能的切換,從而完成對電路中電平狀態的動態測量,且具有較高的應用價值。



評論


相關推薦

技術專區

關閉