新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > ADμC812應(yīng)用中的若干問(wèn)題

ADμC812應(yīng)用中的若干問(wèn)題

作者: 時(shí)間:2006-05-07 來(lái)源:網(wǎng)絡(luò) 收藏




摘 要: ADμC812作為新一代微控制器,具有強(qiáng)大的功能,比以往的單片機(jī)有著更廣闊的應(yīng)用前景。在實(shí)際應(yīng)用中發(fā)現(xiàn),芯片本身尚存在一些應(yīng)注意的問(wèn)題及使用時(shí)的特殊要求。本文對(duì)這些問(wèn)題進(jìn)行總結(jié),以供讀者參考。

關(guān)鍵詞: 在線調(diào)試數(shù)據(jù)轉(zhuǎn)換SPI

本文引用地址:http://m.butianyuan.cn/article/241616.htm

 引言

  ADμC812是高度集成的高精度12位數(shù)據(jù)采集系統(tǒng),其功能方框圖如圖1所示。從圖中可知,該芯片內(nèi)不僅集成了可重新編程非易失性閃速/電擦除程序存儲(chǔ)器的高性能8位(與8051兼容)MCU,還包含了高性能的自校準(zhǔn)8通道ADC及2通道12位DAC。



  圖1 ADμC812功能方框圖

  如所有與8051兼容的器件一樣,對(duì)于程序和數(shù)據(jù)存儲(chǔ)器,ADμC812具有各自獨(dú)立的地址空間:64KB外部程序地址空間和16MB外部數(shù)據(jù)地址空間。但與其他器件不同的是,它包含了片內(nèi)閃速存儲(chǔ)器技術(shù),向用戶提供8KB的閃速/電擦除程序存儲(chǔ)器、640B的閃速/電擦除數(shù)據(jù)存儲(chǔ)器。

  芯片集成了全部輔助功能塊以充分支持可編程的數(shù)據(jù)采集核心。這些輔助功能塊包括看門(mén)狗定時(shí)器(WDT)、電源監(jiān)視器(PSM)以及ADC DMA功能。另外,為多處理器接口和I/O擴(kuò)展提供了32條可編程的I/O線、I2C兼容的SPI和標(biāo)準(zhǔn)UART串行端口。

  與以往的80C51單片機(jī)不同,ADμC812具有獨(dú)特的在線調(diào)試和下載功能,由支持ADμC812的開(kāi)發(fā)工具包QuickStart開(kāi)發(fā)系統(tǒng)來(lái)提供。也就是說(shuō),在用戶系統(tǒng)保留ADμC812的情況下,通過(guò)開(kāi)發(fā)系統(tǒng)與ADμC812的串口通信,可直接對(duì)用戶系統(tǒng)進(jìn)行調(diào)試,并在調(diào)試完成后將已調(diào)試好的程序下載到ADμC812中。

  雖然ADμC812具有上述各種優(yōu)良性能,但由于它是一種新型微控制器,與以往的單片機(jī)相比,在用法上有許多不同之處。因此,在進(jìn)行ADμC812系統(tǒng)開(kāi)發(fā)應(yīng)用時(shí),仍然有許多問(wèn)題須要注意。下面,將我們?cè)趹?yīng)用ADμC812開(kāi)發(fā)產(chǎn)品時(shí)發(fā)現(xiàn)的一些應(yīng)注意的問(wèn)題及其解決辦法介紹如下。

應(yīng)用中存在的若干問(wèn)題

1 在線調(diào)試注意事項(xiàng)

  ADμC812與其他單片機(jī)突出不同之處在于支持它的開(kāi)發(fā)系統(tǒng)不同。QuickStart開(kāi)發(fā)系統(tǒng)是支持ADμC812的開(kāi)發(fā)工具包,功能完善,包括下載、調(diào)試和模擬等功能。

(1) RS232接口電路

  對(duì)于用戶開(kāi)發(fā)系統(tǒng)來(lái)說(shuō),在線調(diào)試和下載功能最重要,也是最常使用的,但二者都需通過(guò)PC機(jī)上的串行端口與ADμC812的UART串行端口之間連接的串行端口電纜進(jìn)行數(shù)據(jù)通信才能發(fā)揮作用。因此,用戶在開(kāi)發(fā)應(yīng)用系統(tǒng)的同時(shí),應(yīng)設(shè)計(jì)一個(gè)RS232接口電路(如圖2所示)來(lái)實(shí)現(xiàn)PC機(jī)與ADμC812的串口通信。



圖2 RS232接口電路

   由于RS232接口電路是PC機(jī)和用戶開(kāi)發(fā)系統(tǒng)的唯一通路,因此,它是在線調(diào)試和下載功能實(shí)現(xiàn)的關(guān)鍵。在用戶系統(tǒng)的開(kāi)發(fā)研制過(guò)程中,經(jīng)常會(huì)出現(xiàn)在線通信故障問(wèn)題。導(dǎo)致該現(xiàn)象發(fā)生的原因有很多,但最有可能的是接口電路工作異常所產(chǎn)生。要判斷RS232接口電路工作是否正常,可按以下步驟逐一檢查RS232通信是否正常。

① V+和V-引腳電壓是否足夠高(分別超過(guò)+8V和-8V)。若電壓較低,則可能ADM202芯片已損壞。
② R1IN腳是否存在±12V的脈沖信號(hào)。若存在,則說(shuō)明PC機(jī)方面通信發(fā)送信號(hào)正常。
③ R1OUT腳是否存在+5V信號(hào)。若存在,則說(shuō)明ADM202接收PC機(jī)信號(hào)工作正常。
④ T1IN腳是否存在+5V信號(hào)。若存在,則說(shuō)明ADμC812對(duì)PC機(jī)的通信產(chǎn)生響應(yīng);否則是ADμC812通信存在問(wèn)題,說(shuō)明ADμC812工作不正常。
⑤ T1OUT腳是否存在±12V的脈沖信號(hào)。若存在,但ADμC812還無(wú)法進(jìn)入在線調(diào)試狀態(tài),則說(shuō)明DB9與PC機(jī)之間的串行接口電纜有問(wèn)題。

(2) PSEN引腳

   用戶系統(tǒng)在具備RS232接口電路之后,還需通過(guò)一個(gè)與地相連的1kΩ電阻將ADμC812的PSEN引腳拉至低電平(見(jiàn)參考文獻(xiàn)[1]、[2]),才能進(jìn)入在線調(diào)試和下載狀態(tài)。因此,PSEN引腳拉低是在線調(diào)試和下載功能實(shí)現(xiàn)的另一關(guān)鍵所在。

   值得強(qiáng)調(diào)的是,PSEN引腳與地之間連上1kΩ電阻并不一定就能保證PSEN為低電平。若靜電造成PSEN引腳損傷,則1kΩ電阻不能將PSEN引腳拉低。經(jīng)試驗(yàn)證明,在PSEN引腳損傷不嚴(yán)重時(shí),可通過(guò)把PSEN直接對(duì)地短路將其拉至低電平;但若損傷嚴(yán)重,則即使直接接地,器件仍然不能工作。因此,在使用ADμC812時(shí),應(yīng)特別小心、謹(jǐn)防靜電。如焊接芯片時(shí)應(yīng)將電烙鐵接地,并戴上防靜電手鐲。

   由于ADμC812的調(diào)試器是在用戶系統(tǒng)復(fù)位時(shí)檢測(cè)PSEN引腳狀態(tài)的,因此,為提高通信成功幾率,可在用戶系統(tǒng)復(fù)位瞬間將PSEN引腳直接對(duì)地短路。但在ADμC812芯片進(jìn)入在線調(diào)試或下載狀態(tài)之后,PSEN引腳仍應(yīng)通過(guò)1kΩ電阻接地。當(dāng)然,若需要在下載程序后脫機(jī)運(yùn)行,應(yīng)將PSEN引腳與1kΩ下拉電阻斷開(kāi),否則,ADμC812將一直保持在線調(diào)試狀態(tài)。

(3) 資源占用問(wèn)題

   ADμC812具有3個(gè)16位定時(shí)器/計(jì)數(shù)器,即:定時(shí)器0、定時(shí)器1和定時(shí)器2。每一個(gè)定時(shí)器/計(jì)數(shù)器包含2個(gè)8位寄存器THX和TLX(X=0,1和2)。所有3個(gè)定時(shí)器/計(jì)數(shù)器均可配置作為定時(shí)器或計(jì)數(shù)器,此功能和普通單片機(jī)相同。

   由于與其他單片機(jī)不同,ADμC812具備在線調(diào)試功能,因此,芯片處于在線工作狀態(tài)下某些功能將會(huì)受到限制。這是因?yàn)樵诰€調(diào)試時(shí),計(jì)算機(jī)和芯片之間的通信占用一定的資源所導(dǎo)致。經(jīng)實(shí)踐證明,定時(shí)器1就是被占用的資源之一。若用戶在線調(diào)試的程序中使用了定時(shí)器1,則無(wú)論是設(shè)斷點(diǎn)調(diào)試,還是單步或連續(xù)運(yùn)行,都會(huì)有程序無(wú)法執(zhí)行的情況發(fā)生。但若將程序中的定時(shí)器1屏蔽掉,則程序能正常運(yùn)行,實(shí)現(xiàn)用戶預(yù)定的功能。當(dāng)然,在線調(diào)試程序時(shí)可以使用定時(shí)器0和定時(shí)器2,因它們未被占用。

雖然在線調(diào)試時(shí),定時(shí)器1無(wú)法使用,但并不意味著用戶不能在用戶系統(tǒng)中利用該定時(shí)器。用戶可先將預(yù)定功能用定時(shí)器0實(shí)現(xiàn),在調(diào)試通過(guò)之后,再改用定時(shí)器1來(lái)實(shí)現(xiàn);也可直接用定時(shí)器1實(shí)現(xiàn),但只能盲調(diào),因程序必須下載后脫機(jī)運(yùn)行。

2 A/D轉(zhuǎn)換器的使用問(wèn)題

   ADμC812內(nèi)集成的ADC轉(zhuǎn)換模塊,包含了8通道、12位、單電源A/D轉(zhuǎn)換器,這些A/D轉(zhuǎn)換器是由基于電容DAC的常規(guī)逐次逼近轉(zhuǎn)換器組成的,接收的模擬輸入范圍為0至+VREF(+2.5V)。另外,此模塊還為用戶提供片內(nèi)基準(zhǔn)、校準(zhǔn)特性,模塊內(nèi)的所有部件能方便地通過(guò)3個(gè)寄存器SFR接口來(lái)設(shè)置??傊珹DμC812的ADC模塊具有與一般ADC芯片相比擬的性能,并且操作簡(jiǎn)單、可靠性高,采集速率可高達(dá)200kHz。

(1) 基準(zhǔn)電

   A/D轉(zhuǎn)換器的2.5V基準(zhǔn)電壓既可由片內(nèi)提供,也可由外部基準(zhǔn)經(jīng)VREF引腳驅(qū)動(dòng)。若使用內(nèi)部基準(zhǔn),則在VREF和CREF引腳與AGND之間都應(yīng)當(dāng)連接100nF電容以便去耦。這些去耦電容應(yīng)放在緊靠VREF和CREF引腳處。為了達(dá)到規(guī)定的性能,建議在使用外部基準(zhǔn)時(shí),該基準(zhǔn)應(yīng)當(dāng)在2.3V和模擬電源AVDD之間。

   由于片內(nèi)基準(zhǔn)高精度、低漂移且經(jīng)工廠校準(zhǔn),并且當(dāng)ADC或DAC使能時(shí),在VREF引腳會(huì)出現(xiàn)此基準(zhǔn)電壓。因此,在進(jìn)行系統(tǒng)擴(kuò)展時(shí),可將片內(nèi)基準(zhǔn)作為一個(gè)2.5V的參考電源來(lái)使用。若要把片內(nèi)基準(zhǔn)用到微轉(zhuǎn)換器之內(nèi),則應(yīng)在VREF引腳上加以緩沖并應(yīng)在此引腳與AGND之間連接100nF電容。

在實(shí)際應(yīng)用中應(yīng)當(dāng)特別注意,內(nèi)部VREF將保持掉電直到ADC或DAC外圍設(shè)備模塊之一被它們各自的使能位上電為止。

(2) 模擬輸入

   與其他ADC芯片相比,ADμC812的ADC模塊有一個(gè)缺點(diǎn),就是ADC正常工作的模擬輸入范圍為0~+2.5V;而允許輸入的電壓范圍只能為正電壓(0~+5V)。經(jīng)實(shí)驗(yàn)證明,若輸入的模擬電壓超過(guò)+2.5V(最大值為+5V),ADC的采樣結(jié)果為最大值(0FFFH),雖然結(jié)果不對(duì),但并沒(méi)有影響ADμC812正常工作;但是,一旦輸入負(fù)的模擬電壓,則會(huì)影響ADμC812正常工作,表現(xiàn)為ADC的基準(zhǔn)電壓(VREF=+2.5V)消失和采樣結(jié)果不正確,且若長(zhǎng)時(shí)間輸入負(fù)電壓,將有可能損壞芯片。因此,在實(shí)際應(yīng)用中,若發(fā)現(xiàn)啟動(dòng)ADC之后VREF端無(wú)電壓,則應(yīng)立即將芯片復(fù)位,并檢查模擬輸入信號(hào)的采集放大部分。在確保進(jìn)入ADμC812的模擬信號(hào)在0~+2.5V范圍內(nèi)之后,才能再次啟動(dòng)ADC。實(shí)際應(yīng)用時(shí),應(yīng)保證輸入的模擬電壓為正電平。

3并行I/O端口的使用問(wèn)題

與其他單片機(jī)一樣,ADμC812也有4個(gè)通用數(shù)據(jù)端口(P0~P3)與外部器件交換數(shù)據(jù),且除了用作通用I/O之外,某些端口還能實(shí)現(xiàn)外部存儲(chǔ)器操作。另有一些端口則與器件上外圍設(shè)備其他功能多路復(fù)用。

(1) P1口

   值得注意的是,在ADμC812中端口0、2和3是雙向端口,而端口1是只輸入端口。在圖3中可以看到在P1口的電路中包括了位鎖存器和輸入緩沖器,但沒(méi)有輸出驅(qū)動(dòng)器,因而P1口只能被配置為數(shù)字輸入或模擬輸入,不能用于輸出。

  當(dāng)P1口用作模擬輸入時(shí),它對(duì)應(yīng)于ADμC812內(nèi)8通道模數(shù)轉(zhuǎn)換的輸入端口ADC0~ADC7。若在實(shí)際使用中,不須將8個(gè)通道ADC都用上,可將剩余的P1口引腳設(shè)置為數(shù)字輸入,但此時(shí)須注意,它與標(biāo)準(zhǔn)的8051單片機(jī)用作數(shù)字輸入的通用I/O口不同,認(rèn)為高電平有效。因此,P1口用作數(shù)字輸入時(shí),在檢測(cè)是否有輸入信號(hào)之前,須將0寫(xiě)至對(duì)應(yīng)端口,然后再判斷。這就要求系統(tǒng)在設(shè)計(jì)時(shí),應(yīng)將用作數(shù)字輸入的P1口外加1個(gè)下拉電阻,一般為幾kΩ。



圖3 P1口位鎖存器與輸入緩沖

(2) P2口

  如前所述,ADμC812的P2口也是雙向端口,包含輸入緩沖器、輸出鎖存器和輸出驅(qū)動(dòng)器。通過(guò)與P2口相應(yīng)的端口SFR,可將P2口的各端口引腳獨(dú)立地配置為數(shù)字輸入或數(shù)字輸出,以及對(duì)它們進(jìn)行讀、寫(xiě)訪問(wèn)。這些與一般單片機(jī)P2口作通用I/O口的用法相同。

  但當(dāng)ADμC812接有外部數(shù)據(jù)存儲(chǔ)器時(shí),P2口不僅要用于輸出中8位地址(A8~A15),還要用于輸出高8位地址(A16~A23),此用法類似于P0口。不同的是,P0口是數(shù)據(jù)和地址總線復(fù)用,而P2口是中位、高位字節(jié)地址總線復(fù)用。因此,P2口在用于外擴(kuò)大容量數(shù)據(jù)存儲(chǔ)器時(shí),也應(yīng)通過(guò)一個(gè)鎖存器將高位字節(jié)地址鎖存,如圖4所示。



圖4 P2口地址鎖存


4 外部尋址問(wèn)題

  與其他單片機(jī)不同,ADμC812具有24根地址線。它可尋址的外部數(shù)據(jù)存儲(chǔ)器空間為16MB,此超大容量的存儲(chǔ)空間可滿足眾多應(yīng)用領(lǐng)域的需求。由于外部數(shù)據(jù)存儲(chǔ)器空間高達(dá)16MB,只用DPTR作間址寄存器是不夠的。因此,ADμC812的數(shù)據(jù)指針是由3個(gè)8位寄存器來(lái)組成,分別是DPP(頁(yè)字節(jié)寄存器)、DPH(高位字節(jié)寄存器)和DPL(低位字節(jié)寄存器),在進(jìn)行內(nèi)部和外部代碼訪問(wèn)或外部數(shù)據(jù)訪問(wèn)時(shí),由它們來(lái)提供存儲(chǔ)器地址。與其他單片機(jī)一樣,DPTR仍然是由DPH和DPL兩個(gè)寄存器來(lái)構(gòu)成,且用法相同;而DPP是用于傳送A23~A16最高8位地址的寄存器,這相當(dāng)于若將外部數(shù)據(jù)寄存器每64KB劃分為1頁(yè),則不同的DPP值將對(duì)應(yīng)于不同的頁(yè),因此取名為頁(yè)寄存器。

5 SPI串口對(duì)P3口的影響

  為便于MCU與各種外圍設(shè)備進(jìn)行通信,ADμC812提供了三種串行I/O端口:UART接口、I2C兼容的串行接口和串行外設(shè)接口(SPI)。其中,SPI接口是工業(yè)標(biāo)準(zhǔn)的同步串行接口,它允許MCU與各種外圍設(shè)備以串行方式(8位數(shù)據(jù)同時(shí)同步地被發(fā)送和接收)進(jìn)行通信。由于只須使用4條線就可與多種標(biāo)準(zhǔn)外圍器件直接接口,因此,SPI接口在串口通信方面有著廣泛的應(yīng)用。

然而,我們?cè)谑褂肁DμC812的SPI串口進(jìn)行通信時(shí),發(fā)現(xiàn)它與其他芯片(具有SPI串口功能)不同,此SPI串口的使能會(huì)對(duì)P3口產(chǎn)生影響,其現(xiàn)象表現(xiàn)為:無(wú)論P(yáng)3口實(shí)際輸入電平為何值,P3口的內(nèi)部鎖存器都認(rèn)定為高電平,從而程序中的JB或JNB等判斷轉(zhuǎn)移指令將失去作用。這說(shuō)明,SPI串口使能將使P3口只能作為輸出口來(lái)使用。因此,在同時(shí)使用SPI串口和P3口作輸入口時(shí),為避免錯(cuò)誤發(fā)生,必須在每次P3口檢測(cè)輸入信號(hào)之前都將SPI串口禁止。

結(jié)束語(yǔ)

  ADμC812作為一種新型的微控制器,具有一般單片機(jī)所不能比擬的強(qiáng)大功能。它內(nèi)部集成的8通道高精度ADC和雙12位DAC,使其能極有效地簡(jiǎn)化儀器中數(shù)據(jù)采集系統(tǒng)部分,同時(shí)它所提供的三種串口通信方式,可滿足各種串行器件的接口問(wèn)題。它的在線調(diào)試和下載功能可極大地方便用戶系統(tǒng)的開(kāi)發(fā)研制。經(jīng)過(guò)一段時(shí)間探索和應(yīng)用,我們已基本掌握ADμC812的各種功能,總結(jié)出一些經(jīng)驗(yàn)和教訓(xùn),本文旨在為用戶提供借鑒參考。MES

參考文獻(xiàn)
1 Analog Devices Inc. MicroConverterTM, Multichannel 12-Bit ADC with Embedded FLASH MCU ADμC812,Ver 2.0 September 1999
2 Analog Devices Inc. ADμC812 User’s Manual,2000
3 Analog Devices Inc. MicroConverterTM,SPI Serial Port,1999
4 孫涵芳,徐愛(ài)卿.單片機(jī)原理及應(yīng)用.北京:北京航空航天大學(xué)出版社,1988

 



關(guān)鍵詞:

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉