圖1 ADuC812功能方框圖
如所有與8051兼容的器件一樣,對于程序和數(shù)據(jù)存儲器,ADuC812具有各自獨立的地址空間:64KB外部程序地址空間和16MB外部數(shù)據(jù)地址空間。但與其他器件不同的是,它包含了片內(nèi)閃速存儲器技術,向用戶提供8KB的閃速/電擦除程序存儲器、640B的閃速/電擦除數(shù)據(jù)存儲器。
芯片集成了全部輔助功能塊以充分支持可編程的數(shù)據(jù)采集核心。這些輔助功能塊包括看門狗定時器(WDT)、電源監(jiān)視器(PSM)以及ADC DMA功能。另外,為多處理器接口和I/O擴展提供了32條可編程的I/O線、I2C兼容的SPI和標準UART串行端口。
與以往的80C51單片機不同,ADuC812具有獨特的在線調(diào)試和下載功能,由支持ADuC812的開發(fā)工具包QuickStart開發(fā)系統(tǒng)來提供。也就是說,在用戶系統(tǒng)保留ADuC812的情況下,通過開發(fā)系統(tǒng)與ADuC812的串口通信,可直接對用戶系統(tǒng)進行調(diào)試,并在調(diào)試完成后將已調(diào)試好的程序下載到ADuC812中。
雖然ADuC812具有上述各種優(yōu)良性能,但由于它是一種新型微控制器,與以往的單片機相比,在用法上有許多不同之處。因此,在進行ADuC812系統(tǒng)開發(fā)應用時,仍然有許多問題須要注意。下面,將我們在應用ADuC812開發(fā)產(chǎn)品時發(fā)現(xiàn)的一些應注意的問題及其解決辦法介紹如下。
圖2 RS232接口電路
由于RS232接口電路是PC機和用戶開發(fā)系統(tǒng)的唯一通路,因此,它是在線調(diào)試和下載功能實現(xiàn)的關鍵。在用戶系統(tǒng)的開發(fā)研制過程中,經(jīng)常會出現(xiàn)在線通信故障問題。導致該現(xiàn)象發(fā)生的原因有很多,但最有可能的是接口電路工作異常所產(chǎn)生。要判斷RS232接口電路工作是否正常,可按以下步驟逐一檢查RS232通信是否正常。
① V+和V-引腳電壓是否足夠高(分別超過+8V和-8V)。若電壓較低,則可能ADM202芯片已損壞。
② R1IN腳是否存在±12V的脈沖信號。若存在,則說明PC機方面通信發(fā)送信號正常。
③ R1OUT腳是否存在+5V信號。若存在,則說明ADM202接收PC機信號工作正常。
④ T1IN腳是否存在+5V信號。若存在,則說明ADμC812對PC機的通信產(chǎn)生響應;否則是ADμC812通信存在問題,說明ADμC812工作不正常。
⑤ T1OUT腳是否存在±12V的脈沖信號。若存在,但ADμC812還無法進入在線調(diào)試狀態(tài),則說明DB9與PC機之間的串行接口電纜有問題。
(2) PSEN引腳
用戶系統(tǒng)在具備RS232接口電路之后,還需通過一個與地相連的1kΩ電阻將ADμC812的PSEN引腳拉至低電平(見參考文獻[1]、[2]),才能進入在線調(diào)試和下載狀態(tài)。因此,PSEN引腳拉低是在線調(diào)試和下載功能實現(xiàn)的另一關鍵所在。
值得強調(diào)的是,PSEN引腳與地之間連上1kΩ電阻并不一定就能保證PSEN為低電平。若靜電造成PSEN引腳損傷,則1kΩ電阻不能將PSEN引腳拉低。經(jīng)試驗證明,在PSEN引腳損傷不嚴重時,可通過把PSEN直接對地短路將其拉至低電平;但若損傷嚴重,則即使直接接地,器件仍然不能工作。因此,在使用ADμC812時,應特別小心、謹防靜電。如焊接芯片時應將電烙鐵接地,并戴上防靜電手鐲。
由于ADμC812的調(diào)試器是在用戶系統(tǒng)復位時檢測PSEN引腳狀態(tài)的,因此,為提高通信成功幾率,可在用戶系統(tǒng)復位瞬間將PSEN引腳直接對地短路。但在ADμC812芯片進入在線調(diào)試或下載狀態(tài)之后,PSEN引腳仍應通過1kΩ電阻接地。當然,若需要在下載程序后脫機運行,應將PSEN引腳與1kΩ下拉電阻斷開,否則,ADμC812將一直保持在線調(diào)試狀態(tài)。
(3) 資源占用問題
ADμC812具有3個16位定時器/計數(shù)器,即:定時器0、定時器1和定時器2。每一個定時器/計數(shù)器包含2個8位寄存器THX和TLX(X=0,1和2)。所有3個定時器/計數(shù)器均可配置作為定時器或計數(shù)器,此功能和普通單片機相同。
由于與其他單片機不同,ADμC812具備在線調(diào)試功能,因此,芯片處于在線工作狀態(tài)下某些功能將會受到限制。這是因為在線調(diào)試時,計算機和芯片之間的通信占用一定的資源所導致。經(jīng)實踐證明,定時器1就是被占用的資源之一。若用戶在線調(diào)試的程序中使用了定時器1,則無論是設斷點調(diào)試,還是單步或連續(xù)運行,都會有程序無法執(zhí)行的情況發(fā)生。但若將程序中的定時器1屏蔽掉,則程序能正常運行,實現(xiàn)用戶預定的功能。當然,在線調(diào)試程序時可以使用定時器0和定時器2,因它們未被占用。
雖然在線調(diào)試時,定時器1無法使用,但并不意味著用戶不能在用戶系統(tǒng)中利用該定時器。用戶可先將預定功能用定時器0實現(xiàn),在調(diào)試通過之后,再改用定時器1來實現(xiàn);也可直接用定時器1實現(xiàn),但只能盲調(diào),因程序必須下載后脫機運行。
評論
查看更多