




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
大學(xué)畢業(yè)設(shè)計說明書大學(xué)畢業(yè)設(shè)計說明書第頁前言ADμC834是一種真正意義上的完整的數(shù)據(jù)采集系統(tǒng)芯片。這種嶄新的微處理轉(zhuǎn)換器和先進的混合信號處理工藝顯著提高了數(shù)據(jù)采集系統(tǒng)的性能,并大幅度減少了應(yīng)用系統(tǒng)的開發(fā)時間和成本。ADμC834是美國模擬器件(AD)公司最新(2003年前)投入市場的一款微處理轉(zhuǎn)換器產(chǎn)品,它集成了雙路∑—△型ADC、溫度傳感器、增益可程控放大器(PGA)、8位51MCU、62k的可編程程序EEPROM、4k的數(shù)據(jù)FlashMemory、2304字節(jié)的片內(nèi)RAM、12位DAC以及定時器、I2C兼容的SPI和標(biāo)準(zhǔn)的串行I/O等。由此可見,ADμADμC834內(nèi)部集成了兩路獨立的∑—△ADC,其中主通道ADC為24位,輔助通道ADC為16位。兩個獨立的ADC通道由于使用了數(shù)字濾波,因而可以實現(xiàn)寬動態(tài)范圍的低頻信號測量,非常適用于稱重儀、張力應(yīng)變儀、壓力轉(zhuǎn)換器和溫度測量等方面的應(yīng)用。其中主通道的AD輸入范圍在±20mV~±2.56V之間分為8檔,使用時可任選一檔。由于使用了∑—△轉(zhuǎn)換技術(shù),因此可以實現(xiàn)高達24位無丟失碼性能,且輔助通道還可以作為溫度傳感器使用。ADμC834利用32kHz晶振來驅(qū)動片內(nèi)鎖相環(huán)(PLL)以產(chǎn)生內(nèi)部所需要的工作頻率,它的微控制器內(nèi)核與8051兼容。片內(nèi)外圍設(shè)備包括一個與SPI和I2C兼容的串行端口、多路數(shù)字輸入/輸出端口、看門狗定時器、電源監(jiān)視器以及時間間隔計數(shù)器。同時片內(nèi)還提供了62kB閃速/電擦除程序存儲器以及2304字節(jié)的片內(nèi)RAM。ADμ 對于已經(jīng)掌握了51系列單片機的用戶,可以輕而易舉的掌握ADμC834位轉(zhuǎn)換器的開發(fā)應(yīng)用技術(shù),但要注意ADμC834微轉(zhuǎn)換器與8051的若干不同之處。而對于沒有接觸過單片機的用戶,由于ADμC834微轉(zhuǎn)換器所具有的在線下載/調(diào)試/編程的功能,把ADμC834作為學(xué)習(xí)單片機或微控制器的入門,是一種上佳選擇。 本設(shè)計較為詳細(xì)的介紹了ADμC834微轉(zhuǎn)換器的內(nèi)部結(jié)構(gòu)和各功能模塊的具體使用,目的在于讓用戶能夠容易的學(xué)習(xí)使用ADμC834微轉(zhuǎn)換器,進而學(xué)好單片機或微控制器。但限于作者水平和時間倉促,設(shè)計中可能存在不妥甚至疏漏之處,敬請各位老師批評指正,作者不勝感激。 陳挺 2005-6-3總體方案設(shè)計ADADμC834STROBES串行下載SPI/I2ICELEDI/O端口模擬輸入復(fù)位電源RS232接口中斷第一章 ADμC834概述1.1ADμC834概述ADμC834是一款非常靈活的器件,它集雙路∑-△ADC、溫度傳感器、增益可編程放大器(PGA)、8位MCU、閃速/電擦除程序數(shù)據(jù)存儲器于一身。兩個分離的ADC(主通道及輔助通道)包括一個溫度傳感器及一個增益可編程的放大器(可以直接測量微弱信號)。ADC包含一個片內(nèi)的數(shù)字濾波器用來測量寬動態(tài)范圍的低頻信號,例如在體重、形變、壓力或者溫度測量中的應(yīng)用。32kHz晶體驅(qū)動片內(nèi)PLL產(chǎn)生一個12.58MHz的高頻時鐘用于設(shè)備的操作。通過編程對該時鐘分頻就得到了所需要的MCU核心時鐘的操作頻率。智能轉(zhuǎn)換器使用的是8052內(nèi)核,因此它兼容8051指令集。智能轉(zhuǎn)換器內(nèi)核的機器周期由12個內(nèi)核時鐘周期組成,該時鐘周期是通過被選定的內(nèi)核工作頻率所確定的。另外MCU支持的功能包括看門狗定時器、電源監(jiān)視器以及ADCPWM功能。為多處理器接口和I/O擴展提供了26條可編程的I/O線、與I2C片內(nèi)提供了62kB片內(nèi)閃速/電擦除程序存儲器、4k片內(nèi)閃速/電擦除數(shù)據(jù)存儲器、2304字節(jié)片內(nèi)數(shù)據(jù)RAM。并且程序存儲器可被配置為數(shù)據(jù)存儲器,從而為數(shù)據(jù)記錄提供一個60kB的非易失數(shù)據(jù)存儲器。MCU內(nèi)核和模擬轉(zhuǎn)換器二者均有正常、空閑以及掉電工作模式,它提供了適合于低功率應(yīng)用的、靈活的電源管理方案。器件包括在工業(yè)溫度范圍內(nèi)用3V和5V電壓工作的兩種規(guī)格,有52引腳、塑料四方形扁平封裝形式(MQFT)可供使用。片內(nèi)工廠固件支持串行下載和調(diào)試方式(通過UART),以及通過/EA引腳實現(xiàn)單引腳仿真模式。ADμC834通過QuickStartTM和QuickStartPlus開發(fā)系統(tǒng)可以使用低成本的軟件和硬件開發(fā)工具。1.2主要功能高分辨率∑-△ADC 兩個獨立通道(16位和24位分辨率) 24位無丟失碼(主ADC) 21位RMS(18.5位P-P)有效分辨率(在20Hz條件下) 失調(diào)漂移10nV/C,增益漂移0.5ppm/℃存儲器 62kB片內(nèi)閃速/電擦除程序存儲器 4kB片內(nèi)閃速/電擦除數(shù)據(jù)存儲器 可用100年,可重復(fù)擦寫10萬次以上 閃速/電擦除程序存儲器3級安全 在線串行下載(不許外部硬件) 高速用戶下載(5秒) 2304字節(jié)片內(nèi)數(shù)據(jù)RAM基于8051的內(nèi)核 與8051兼容的指令集 32kHz外部晶體 可編程片內(nèi)鎖相環(huán)(最大12.58MHz) 3個16位定時器/計數(shù)器 26條可編程I/O線 11個中斷源,2個優(yōu)先級 雙數(shù)據(jù)指針,擴展的11位-堆棧指針片內(nèi)外圍設(shè)備 內(nèi)部上電復(fù)位電路 12位電壓輸出DAC 雙16位∑-△DAC/PWM 片內(nèi)溫度傳感器 2個激勵電流源 定時間隔計數(shù)器(喚醒/RTC定時器) UART,I2C?和SPI?串行I 高速波特率發(fā)生器(包括115200) 看門狗定時器(WDT) 電源監(jiān)視器(PSM)電源 正常:3.6V條件下最大為2.3mA(核心時鐘=1.57MHz) 掉電:最大為20μA,定時器運行于指定的3V和5V工作電壓下封裝和溫度范圍 52引腳MQFP(14mm*14mm),-40℃至+ 56引腳LQFP(8mm*8mm),-40℃至+應(yīng)用領(lǐng)域 智能傳感器 稱重儀 便攜式設(shè)備,電池供電系統(tǒng) 4~20mA變送器 數(shù)據(jù)記錄 機密系統(tǒng)監(jiān)測1.3ADμC834的功能方框圖圖11.4引腳排列 引腳排列如圖2:圖21.5引腳說明表1第二章 存儲器組織與擴展 如所有與8051兼容的器件一樣,對于程序存儲器和數(shù)據(jù)存儲器,ADμC834具有分開的地址空間。附加的4kB片內(nèi)閃速/電擦除數(shù)據(jù)存儲器可供用戶使用。通過一組映射在特殊功能寄存器(SFR)區(qū)的控制寄存器,可間接訪問閃速/電擦除數(shù)據(jù)存儲器區(qū)。 除了程序計數(shù)器和通用寄存器區(qū)外,所有的寄存器都駐留在特殊功能寄存器SFR區(qū)域內(nèi)。SFR寄存器包括控制、配置以及數(shù)據(jù)寄存器,它們在CPU和片內(nèi)外圍設(shè)備之間提供接口。 2.1非易失性閃速存儲器 2.1.1概述 ADμC834包含片內(nèi)閃速存儲器技術(shù),以便向用戶提供非易失性、在線可重新編程的代碼和數(shù)據(jù)存儲器空間。 閃速存儲器是最新型的非易失性存儲器技術(shù),它基于單個晶體管單元結(jié)構(gòu)。這種技術(shù)是在80年代后期開發(fā)的,基本上是EPROM技術(shù)的產(chǎn)物。 閃速存儲器具有EEPROM靈活的在線可重新編程的特點,并包括EPROM空間有效性/高密度的特點,如圖3所示。圖3flash/eeROM的發(fā)展 由于閃速技術(shù)基于單個晶體管單元的結(jié)構(gòu),所以閃速存儲器陣列像EPROM一樣可以達到給定設(shè)計所需的空間有效性或存儲器密度。 與EEPROM一樣,雖然閃速存儲器在寫入前要先擦除,但它在系統(tǒng)內(nèi)可在字節(jié)級上編程,擦除在扇區(qū)塊(sectorblock)內(nèi)執(zhí)行。因此,閃速存儲器常常且更為確切的被稱為閃速/電擦除(Flash/EE)存儲器。 總之,閃速/電擦除存儲器朝著理想存儲器更為接近了一步,這種理想的存儲器包括非易失性、在線編程能力、高密度以及低價格。包含在ADμC834內(nèi)的閃速/電擦除存儲器技術(shù)使用戶可以在線更新程序代碼空間,而無須在遠處工作節(jié)點上替換一次性可編程(OTP)器件。 2.1.2閃速/電擦除存儲器和 ADμC834為用戶的應(yīng)用提供了2個閃速/電擦除存儲器陣列。 片內(nèi)提供62kB的閃速/電擦除程序空間,使代碼的執(zhí)行變得容易,無需任何外部分立的ROM器件。程序存儲器可以用常規(guī)的第3方提供的存儲器編程器編程,此陣列也可使用所提供的串行下載模式在線編程。 片內(nèi)還提供4kB的閃速/電擦除數(shù)據(jù)存儲器空間。這可以被用戶用作通用非易失性高速暫存存儲器區(qū)域,用戶通過由6個SFR構(gòu)成的組訪問此區(qū)域。雖然首先必須按4B的扇區(qū)擦除,但此空間可在字節(jié)級上編程。 2.1.3 62kB的閃速/電擦除程序存儲器陣列被映射到ADμC834可位尋址的程序空間中,在典型應(yīng)用中用以存放用戶代碼。 程序存儲器陣列可以按兩種模式之一編程,即:串行下載(在線編程)作為工廠引導(dǎo)代碼的一部分,ADμC834使經(jīng)過標(biāo)準(zhǔn)UART串行接口實現(xiàn)串行代碼下載變得容易。如果外部引腳/PSEN通過外部電阻拉至低電平,那么上電時將自動進入串行下載模式。一旦處于此模式,用戶可以把代碼下載到程序存儲器陣列,同時器件仍位于其目標(biāo)應(yīng)用硬件中。PC串行下載的可實行是作為ADμC834QuickStart開發(fā)系統(tǒng)的一部分而提供的。串行下載協(xié)議在ADI公司出版的微轉(zhuǎn)換器應(yīng)用筆記中詳述,它可從ADI公司的微轉(zhuǎn)換器網(wǎng)站/microconverter中獲得。并行編程并行編程模式與常規(guī)的第3方閃速或EEPROM器件編程器完全兼容。在此方式下,端口P0、P2用作外部數(shù)據(jù)和地址總線接口,ALE用作寫使能選通,P3口作為適用配置端口,在并行編程期間內(nèi)為各種編程和擦除操作配置器件。閃速編程所需的高壓(12V)電源用片內(nèi)充電電泵產(chǎn)生,對高壓編程線供電。圖4表示正常并行編程模式,它可由端口3的位來配置。圖4flash/eeROM并行編程2.1.4閃速/電擦除數(shù)據(jù)存儲器 用戶閃速/電擦除數(shù)據(jù)存儲器陣列包括4kB,如其它用戶外圍設(shè)備一樣,通過映射在SFR空間的寄存器組與此存儲器空間相接。數(shù)據(jù)寄存器組用于保存剛訪問的數(shù)據(jù)。EADRL用于保存被訪問數(shù)據(jù)的地址。ECON是8位控制寄存器,可寫入5個閃速/電擦除存儲器訪問命令之一,以便使能各種讀、寫、擦除和效驗?zāi)J健?SFR寄存器與用戶閃速/電擦除數(shù)據(jù)存儲器陣列接口的方框圖如圖5所示:作用作用保持4B的數(shù)據(jù)9FH00HBYTE1BYTE2BYTE3BYTE4BYTE1BYTE2BYTE3BYTE4EADRL作用保持8位頁地址指針EADRL1(BYTE1)EADRL2(BYTE2)EADRL3(BYTE3)EADRL4(BYTE4)ECON命令譯碼ECON作用保持命令字作用對命令字譯碼圖5用戶flash/eedataROM控制和配置第三章 模擬接口 3.1概述 ADμC834中集成的A/D轉(zhuǎn)換塊包括一個主通道24位無丟失碼∑-△ADC和一個輔助通道16位∑-△ADC。此模塊為用戶提供多通道多路轉(zhuǎn)換器和跟蹤/保持、片內(nèi)基準(zhǔn)及校準(zhǔn)特性。此模塊內(nèi)的所有部件能方便地通過3個寄存器SFR接口來設(shè)置。 該ADC由基于電容DAC的常規(guī)逐次逼近轉(zhuǎn)換器組成。轉(zhuǎn)換器接收的模擬輸入范圍為0V~VREF引腳電壓。片內(nèi)提供高精度、低漂移并經(jīng)工廠校準(zhǔn)的2.5V基準(zhǔn)電壓。內(nèi)部基準(zhǔn)可經(jīng)外部VREF引腳驅(qū)動,外部基準(zhǔn)可在2.3V~AVDD引腳電壓的范圍內(nèi)。 ADμC834裝有工廠編程的校準(zhǔn)系數(shù),它在上電時自動下載到ADC,以確保最佳的ADC性能。ADC核包括內(nèi)部失調(diào)和增益校準(zhǔn)寄存器,所提供的軟件校準(zhǔn)子程序,可允許用戶在需要時重寫工廠編程的校準(zhǔn)系數(shù),以便使用戶目標(biāo)系統(tǒng)中端點誤差的影響為最小。 來自片內(nèi)溫度傳感器的電壓輸出正比于熱力學(xué)溫度。它也可經(jīng)前端ADC多路轉(zhuǎn)換器傳送(如圖6所示),這方便了溫度的測量。圖6模擬輸入的等效電路 3.2ADC的轉(zhuǎn)移函數(shù) ADC的模擬輸入范圍是0V~VREF引腳電壓。在此范圍內(nèi),設(shè)計的代碼跳變發(fā)生在連續(xù)的整數(shù)LSB值的中間(即1/2LSB、3/2LSB、5/2LSB、…、FS-3/2LSB)。當(dāng)VREF引腳電壓為2.5V時,輸出碼是直接的二進制數(shù)。在0V~VREF引腳電壓范圍內(nèi)理想的輸入/輸出轉(zhuǎn)移特性如圖7所示。圖7ADC轉(zhuǎn)移函數(shù) 3.3ADC的內(nèi)部基準(zhǔn) ADμC834的A/D轉(zhuǎn)換器接收的模擬輸入范圍為0V~VREF引腳電壓。片內(nèi)提供高精度、低漂移并經(jīng)工廠校準(zhǔn)的2.5V基準(zhǔn)電壓,通常工廠里把內(nèi)部2.5V校準(zhǔn)到2.5V±50mV的絕對精度。也可以通過VREF引腳接入外部基準(zhǔn)電源,如圖8所示。外部基準(zhǔn)電源可在2.3V~AVDD引腳電壓的范圍內(nèi)。圖8使用外部基準(zhǔn)源 如果使用內(nèi)部基準(zhǔn)電源,那么在VREF和CREF引腳與AGND之間都應(yīng)當(dāng)連接0.1μF電容,以便去耦。這些去耦電容應(yīng)放在緊靠VREF和CREF引腳處。如果把內(nèi)部基準(zhǔn)電源用到微轉(zhuǎn)換器之外,那么應(yīng)當(dāng)在VREF引腳與AGND之間連接0.1μF電容,加以緩沖,如圖9所示。應(yīng)該注意的是:器件上電后,內(nèi)部的VREF將保持掉電,直到DAC和ADC外圍設(shè)備模塊之一被它們各自的使能位上電為止。圖9外部電路使用內(nèi)部基準(zhǔn)源 3.4ADC校準(zhǔn) ADC模塊組合了校準(zhǔn)硬件,確保用戶始終能從ADC獲得最佳的性能?;鶞?zhǔn)模式用作ADμC834工廠內(nèi)部最終例行測試的一部分。工廠基準(zhǔn)結(jié)果儲存在閃速存儲器中,由任何上電復(fù)位事件自動下載,以初始化ADC校準(zhǔn)寄存器。在許多應(yīng)用中,這種自動校準(zhǔn)下載功能已足夠滿足精度要求。另一方面,可以由用戶軟件已開始器件的基準(zhǔn),來補償工作條件(CLK頻率,模擬輸入范圍,基準(zhǔn)電壓和電源電壓)的明顯變化。 這種在線軟件校準(zhǔn)特性使用戶能修正各種與系統(tǒng)和基準(zhǔn)(無論是內(nèi)部基準(zhǔn)還是外部基準(zhǔn))相關(guān)的誤差,并確定系統(tǒng)的模擬輸入范圍,充分利用ADC的動態(tài)范圍。 3.5ADC的工作模式 ADμC834的ADC有3種工作模式:第一,用軟件或通過把轉(zhuǎn)換信號加至外部引腳,可以啟動單步或連續(xù)轉(zhuǎn)換模式;第二,用定時器2來產(chǎn)生用于A/D轉(zhuǎn)換的重復(fù)觸發(fā)信號;第三,配置ADC工作于DMA模式。在DMA模式下,ADC塊連續(xù)轉(zhuǎn)換并把采樣值捕獲到RAM空間,而不需來自MCU核的任何干預(yù)。這三種工作模式由3個特殊功能寄存器SFR來設(shè)置。 3.6DAC的原理與應(yīng)用 ADμC834組合了一個12位電壓輸出DAC和一個雙16位∑-△DAC/PWM。它們采用電阻串網(wǎng)絡(luò),其等效電路如圖10所示。這種結(jié)構(gòu)保證了電路的單調(diào)性和線性。但由于緩沖器輸出在靠近電源的幅度時,在DAC輸出的兩端點及其附近有一定的非線性,如圖11所示。如果負(fù)載電阻大于10kΩ和基準(zhǔn)電源為AVDD,產(chǎn)生非線性的范圍分別在靠近地和AVDD引腳電壓的100mV以內(nèi),相應(yīng)的數(shù)字量為0~48和3995~4095。如果采用片內(nèi)基準(zhǔn)電源或遠小于AVDD引腳電壓的基準(zhǔn)電源,則在高端不存在上述的非線性。圖10DAC等效電路圖11基準(zhǔn)電源為AVDD時DAC的傳遞函數(shù) DAC的緩沖器具有禁止功能。在器件的缺省上電狀態(tài),兩路DAC都被禁止,它們的輸出都處于高阻狀態(tài)。它們保持缺省上電狀態(tài)直到軟件使能為止。這就意味著,如果上電后要使DAC輸出為0,必須在DAC的輸出端加一個下拉電阻。有了下拉電阻,只要DAC處于禁止?fàn)顟B(tài),其輸出就為低電平。但是,每當(dāng)器件上電時或軟件使能DAC時,DAC都會輸出一個脈沖。必要時可采取適當(dāng)?shù)姆椒ǎ苊膺@類脈沖對后續(xù)電路的影響。第四章 數(shù)字接口 4.1引言 ADμC834有4個I/O端口,每個都有不同特色的驅(qū)動/輸入電路。除P1口外,其余的端口都與標(biāo)準(zhǔn)的8051/8052以雙向性功能為特色的驅(qū)動/輸入電路相同,而P1口的操作是ADμC834所特有的。P0和P2口可用來訪問外部存儲器。當(dāng)不接外部存儲器的時候,P0和P2口可以用于通用輸入/輸出口,并且由特殊的功能寄存器控制。 訪問不同類型的外部存儲器時,P0和P2的作用與標(biāo)準(zhǔn)的I/O功能不同。特別是MOVX@Ri,A命令僅需要8位地址,所以只需使用P0口,沒有涉及P2口的SFR,P2口的引腳可以保持它們的通用I/O口狀態(tài)。不過,P0口的SFR的內(nèi)容被改變。P0口的SFR上電時的缺省值為FFH。 MOVX@DPTR或MOVC命令使用P0和P2口。像上述的一樣,執(zhí)行這兩條指令中的一條后,P0口的SFR的內(nèi)容被改變,新的值為FFH。不過,P2口的SFR的內(nèi)容保持不變,并且,執(zhí)行命令之后馬上就恢復(fù)P2口所定義的狀態(tài)。(假定下一個命令周期不訪問外部存儲器。) 執(zhí)行外部存儲器中的程序時,使用P0和P2口。同樣,P0口的SFR的內(nèi)容被改變,新的值為FFH。P2口的SFR的內(nèi)容保持不變,并且,取指之后,如果第一個機器周期不訪問外部存儲器,P2口馬上就恢復(fù)所定義的狀態(tài)。P3口的引腳都是多功能的。表2列出了P3口的特殊功能。引腳功能P3.0RXD,UART的輸入口(模式0時,作為串行數(shù)據(jù)I/O)P3.1TXD,UART的輸出口(模式0時,作為串行時鐘輸出口)P3.2/INT0,外部中斷0P3.3/INT1,外部中斷1,MISO、SPI串行接口的主模式輸入/從模式輸出P3.4T0,定時器/計數(shù)器0的外部輸入端P3.5T1,定時器/計數(shù)器1的外部輸入端。/CONVST,ADC的轉(zhuǎn)換啟動端P3.6/WR,外部數(shù)據(jù)存儲器寫選通信號P3.7/RD,外部數(shù)據(jù)存儲器讀選通信號表2P3口的特殊功能只有P3口SFR中相應(yīng)的位置為1時,其特殊功能才被激活;否則,口線保持為0點平。P3口引腳可以比別的端口引腳吸收更大的灌電流(可達8mA),可以直接驅(qū)動LED和光電耦合器件。不過,要避免在A/D轉(zhuǎn)換期間同時有多個引腳吸收大電流,以免影響ADC的性能。P1口的基本功能是用作模擬輸入口。往P1口的SFR中的各位寫入1,可以把P1口設(shè)置為模擬輸入模式(這也是上電缺省模式);往P1口的SFR中的各位寫入0,可以把P1口設(shè)置為數(shù)字輸入模式。但是,P1口不能用作數(shù)字輸入模式。P1口也是多功能口,除作為模擬輸入和數(shù)字輸入外,還有其它功能,如表3所示。引腳第二功能P1.0T2/PWM0P1.1T2EX/PWM1P1.2DAC/IEXC1P1.3AIN5/IEXC2表3P1口的第二功能4.2端口的位鎖存器與I/O緩沖器圖12至圖15所示為4個端口典型的位鎖存器和I/O緩沖器的結(jié)構(gòu)。位鎖存(在口SFR中的一位)是一個D觸發(fā)器,在執(zhí)行CPU的“寫鎖存器”指令時,從內(nèi)部的總線上鎖存一個值。觸發(fā)器的輸出Q作為執(zhí)行CPU的“寫鎖存器”指令時,放到內(nèi)部總線上,口引腳本身的電平作為對于“讀引腳”信號的響應(yīng),由CPU放到內(nèi)部的總線上。有些指令是“讀鎖存器”,有些指令是“讀引腳”,要注意區(qū)別。圖12P0口的位鎖存器和I/O緩沖器圖13P1口的位鎖存器和I/O緩沖器圖14P2口的位鎖存器和I/O緩沖器圖15P3口的位鎖存器和I/O緩沖器如圖12和14所示,P0口和P2口的輸出驅(qū)動在訪問外部數(shù)據(jù)存儲器時,可以由內(nèi)部控制信號切換到內(nèi)部地址和地址/數(shù)據(jù)總線。在訪問外部存儲器期間里,P2口的SFR保持不變,但是,P0口的SFR各位都被寫入1(即全部位鎖存器都為1)。在通用的I/O端口方式中,P0口的引腳特點都以“開漏”方式輸出。在圖12中,只要CONTROL信號保持低電平,與門輸出就保持高電平,結(jié)果是上端的FET管截止。因此,如果要把P0口作為通用輸出口,必須外加上拉電阻。在訪問外部數(shù)據(jù)寄存器時,CONTROL信號為高電平,使P0口的引腳可以在內(nèi)部地址/數(shù)據(jù)總線(ADDR/DATA)的作用下上拉。因此,在訪問外部數(shù)據(jù)存儲器時,不需要外加上拉電阻。同樣的,P2口在內(nèi)核的控制信號(CONTROL)的作用下也有兩種工作方式。在通常的方式中(CONTROL=0),上端的FET管截止,但是,在外部存儲器尋址方式中(CONTROL=1),P2口引腳在內(nèi)部的地址總線(ADDR)控制下,實現(xiàn)上拉/下拉操作。和P0口不同,P2口和P3口都具有內(nèi)部的上拉功能。P3口的結(jié)構(gòu)如圖15所示。無論什么時候,只要P2口或P3口從低電平變?yōu)楦唠娖?,圖16中的Q1管導(dǎo)通兩個振蕩周期,將引腳迅速的上拉到高電平。此后,由Q3管保持微弱的上拉,因此,引腳保持邏輯高電平。如果有外部信號把引腳拉到低電平,則Q3管截止,只有Q2管保持極微弱的上拉,以提供引腳一定的拉電流。圖16P2口和P3口的內(nèi)部上拉電路唯一不同的是14引腳,它作為串行接口SPI的MISO端,無論什么時候只要工作在SPI方式,SPI的硬件便完全控制該引腳。軟件寫操作給該引腳不起作用,既不能改變該引腳的狀態(tài),也不能讀到該引腳的狀態(tài)。如前所述,ADμC834的P1口主要作為模擬輸入口使用。在P1口相應(yīng)的SFR上寫0可以把P1口設(shè)置為數(shù)字輸入口。圖13給出了P1口的結(jié)構(gòu)。此外,作為串行接口SPI/I2C的引腳SCLOCK和SDATA/MOSI也有輸入和輸出功能。它們的等效I/O結(jié)構(gòu)分別如圖17~圖20所示。兩圖中左邊的方框代表了SPI和I2C的SFR(SPICON和I2CCON)中的位。注意,在I2C模式(SPE=0)中,上邊的FET管保持在開路狀態(tài),因此,兩個引腳都像標(biāo)準(zhǔn)的I2C引腳一樣,沒有內(nèi)部上拉的“開漏圖17SPI模式下SCLOCK引腳的I/O功能結(jié)構(gòu)圖18I2C圖19SPI模式下SDATA/MOSI引腳的I/O功能結(jié)構(gòu)圖20I2C在SCLOCK和SDATA/MOSI的輸入通道上,信號經(jīng)過施密特觸發(fā)器調(diào)理后到達SPI的硬件,這樣可以防止比較慢的信號邊沿誤觸發(fā)(重復(fù)觸發(fā))。而對I2C上面兩個圖中的“I2C硬件”和“SPI硬件”框圖將在下一章詳細(xì)介紹。注意到SCLOCK和SDATA/MOSI的信號是通過I2C主模式的SFR來提供的,因此,在不使用I2C第五章 串行接口5.1引言 ADμC834配置了很強的串行接口。共有三種串行接口:UART串行接口、SPI串行接口和與I2C兼容的串行接口。UART串行接口是全雙工的,可以同時發(fā)送和接收數(shù)據(jù);它也是接收緩沖的,表示在從接收寄存器讀出先前接收到的字節(jié)之前,可以開始接收第2個字節(jié)。但如果在第2個字節(jié)接收完成時,第1個字節(jié)仍未被讀出,那么字節(jié)之一將被丟失。至串行網(wǎng)絡(luò)的物理接口經(jīng)過引腳RXD(P3.0)和TXD(P3.1),串行接口可以配置為4種工作模式之一。SPI是工業(yè)標(biāo)準(zhǔn)的同步串行接口,它允許8位數(shù)據(jù)同時同步地被發(fā)送和接收。系統(tǒng)可配置為主(master)或從(slave)操作。ADμC834支持2線串行接口模式,它與I2C兼容。此接口可配置為軟件主(softwaremaster)或硬件從(hardwareslave)模式,且可與SPI串行接口多路復(fù)用。下面分別介紹UART串行接口、SPI串行接口和與I5.2UART串行接口5.2.1UART串行接口簡介 ADμC834中的UART串行接口是一個全雙工通信接口,即能同時發(fā)送和接收數(shù)據(jù)。它可以作UART通用異步接收和發(fā)送器用,也可以作同步移位寄存器用。其幀格式和波特率可通過軟件編程設(shè)置,在使用上非常方便靈活。串行接口的結(jié)構(gòu)ADμC834的串行接口主要由2個數(shù)據(jù)緩沖器、1個輸入移位寄存器、1個串行控制寄存器SCON和1個波特率發(fā)生器T1(即定時器1)等組成。其結(jié)構(gòu)如圖21所示。圖21串行接口的結(jié)構(gòu) 串行接口數(shù)據(jù)緩沖器SBUF是可以直接尋址的專用寄存器。在物理上,一個作發(fā)送緩沖器,一個作接收緩沖器。兩個緩沖器共用一個口地址99H,由讀、寫信號區(qū)分,CPU寫SBUF時為發(fā)送緩沖器,讀SBUF時為接收緩沖器。接收緩沖器是雙緩沖的,它是為了避免在接收下一幀數(shù)據(jù)之前,CPU未能及時相應(yīng)接收器的中斷,把上幀數(shù)據(jù)讀走,而產(chǎn)生兩幀數(shù)據(jù)重疊的問題而設(shè)置的雙緩沖結(jié)構(gòu)。對于發(fā)送緩沖器,為了保持最大傳輸速率,一般不需要雙緩沖,這是因為發(fā)送時CPU是主動的,不會產(chǎn)生寫重疊的問題。 特殊功能寄存器SCON用來存放串行接口的控制和狀態(tài)信息。T1作串行接口的波特率發(fā)生器,其波特率是否增倍可由特殊功能寄存器PCON的最高位控制。串行通信過程在進行通信時,當(dāng)CPU允許接收時(即SCON的REN位置1時),外界數(shù)據(jù)通過引腳RXD(P3.0)串行輸入,數(shù)據(jù)的最低位首先進入輸入移位器,一幀接收完畢,再并行送入緩沖器SBUF中,同時將接收中斷標(biāo)志位RI置位,向CPU發(fā)送中斷請求。CPU響應(yīng)中斷后,并用軟件將RI位清除,同時讀走輸入的數(shù)據(jù)。接著又開始下一幀的輸入過程,重復(fù)直至所有數(shù)據(jù)接收。 CPU要發(fā)送數(shù)據(jù)時,即將數(shù)據(jù)并行寫入發(fā)送緩沖器SBUF中,同時啟動數(shù)據(jù)由TXD(P3.1)引腳串行發(fā)送。當(dāng)一幀數(shù)據(jù)發(fā)送完,即發(fā)送緩沖器空時,由硬件自動將發(fā)送中斷標(biāo)志位T1置位,向CPU發(fā)出中斷請求。CPU響應(yīng)中斷后,用軟件將T1位清除,同時又將下一幀數(shù)據(jù)寫入SBUF中重復(fù)上述過程直到所有數(shù)據(jù)發(fā)送完畢。串行接口工作方式及幀格式ADμC834串行接口可以通過軟件設(shè)置4種不同的工作方式,4種工作方式及幀格式如下:方式0這種工作方式比較特殊,與常見的微型計算機的串行接口不同,它又叫同步移位寄存器輸出方式。在這種方式下,數(shù)據(jù)從RXD端串行輸出或輸入,同步信號從TXD端輸出,波特率固定不變,為fOSC/12(振蕩頻率為fOSC)。該方式是以8位數(shù)據(jù)為一幀,沒有起止位和停止位,先發(fā)送或接收最低位。方式1串行接口采用該方式時,特別適合于點對點的異步通信。該方式規(guī)定發(fā)送或接收10位數(shù)據(jù)為一幀:1個起始位、8個數(shù)據(jù)位和1個停止位。方式2采用這種方式可以接收或發(fā)送11位數(shù)據(jù),以11位為一幀,比方式1增加了一個數(shù)據(jù)位,其余相同。所增加的第9個數(shù)據(jù)即D8位具有特別的用途,可以通過軟件來控制它,再加特殊功能寄存器SCON中的SM2位的配合,可使ADμC834串行接口適用于多機通訊。方式2的波特率固定,只有兩種選擇,為fOSC/64或fOSC/32,可由PCON的最高位選擇。方式3方式3與方式2類似,唯一的區(qū)別是方式3的波特率是可變的。而幀格式與方式2一樣,為11位一幀,所以方式3也適合于多機通訊。串行接口控制ADμC834串行接口的工作方式的選擇、中斷標(biāo)志和可編程位的設(shè)置、波特率的增倍均是通過2個特殊功能寄存器SCON和PCON來控制的。電源和波特率控制寄存器PCONPCON的地址為87H,只能進行字節(jié)尋址,不能按位尋址。它是為在CHMOS結(jié)構(gòu)的51系列單片機上實現(xiàn)電源控制而附加的。對HMMOS的51系列單片機,只用了最高位,其余位都是虛設(shè)的。PCON的最高位D7位作SMOD,是串行接口波特的增速控制位。當(dāng)SMOD=1時,波特率加倍。系統(tǒng)復(fù)位時,SMOD位為0。PCON其它各位定義將在后面介紹。串行接口控制寄存器SCON深入理解SCON各位的含義,正確的用軟件設(shè)定修改SCON各位是運用ADμC834串行接口的關(guān)鍵。該專用寄存器的主要功能是串行通信方式選擇、接收和發(fā)送控制及串行接口的狀態(tài)標(biāo)志指示等。其各位定義如下:SCON9FH9EH9DH9CH9BH9AH99H98H98HSM0SM1SM2RENTB8RB8TIRI表3SCON寄存器的定義①SCON.7和SCON.6分別為SM0和SM1。用于選擇串行接口的工作方式(見表4)SM0SM1工作方式功能波特率00方式08位同步移位寄存器fOSC/1201方式110位UART可變10方式210位UARTfOSC/64,fOSC/3211方式310位UART可變表4選擇串行接口的工作方式的選擇②SCON.4位為REN位。用以軟件允許/禁止串行接收,REN=1時允許串行接口接收數(shù)據(jù),REN=0時禁止串行接口接收數(shù)據(jù)。③SCON.5、SCON.3和SCON.2分別為SM2、TB8和RB8。用于實現(xiàn)多機通訊的控制位。在方式0下,SM2應(yīng)設(shè)置為0,不用TB8和RB8位。在方式1下,當(dāng)SM2=0時,RB8是接收到的停止位;若SM2=1時,則只有收到有效的停止位,才會激活RI使之置1,否則RI不置位。在方式2和方式3下,TB8是發(fā)送的第9位(D8)數(shù)據(jù),可用軟件置1或置0;RB8是接收到的第9位(D8)數(shù)據(jù);這兩位也可作為奇偶效驗位。當(dāng)方式2或方式3處于接收時,若SM2=1,且接收到的第9位RB8為0時,則RI不置1;若SM2=1,且RB8也為1時,則RI置1。當(dāng)方式2或方式3處于多機通訊時,TB8和RB8位可作為地址數(shù)據(jù)幀表示位:一般約定地址幀為1,數(shù)據(jù)幀為0。④SCON.1為TI位,作發(fā)送中斷標(biāo)志。在方式0中,發(fā)送完8位數(shù)據(jù)后,由硬件置位;在其它方式中,在發(fā)送停止位之初,由硬件置位。TI置位后可向CPU申請中斷,任何方式中都必須由軟件來消除TI。⑤SCON.0為RI位,作接收中斷標(biāo)志。在方式0中,接收完8位數(shù)據(jù)后,由硬件置位;在其它方式中,在接收停止位的一半時,由硬件將RI置位(還應(yīng)考慮SM2的設(shè)定)。RI被置位后可允許CPU申請中斷,任何方式中都必須由軟件來清除RI。 5.2.2 在串行通信中,收發(fā)雙方對發(fā)送或接收的數(shù)據(jù)速率(即波特率)要有一定的約定。串行接口的工作方式可以通過編程選擇4種工作方式。各種工作方式下其波特率的設(shè)置均有所不同,方式0和方式2的波特率是固定的;而方式1和方式3的波特率是可變的,由定時器T1的作為波特率控制。下面分別加以說明。 在方式0時,每個機器周期發(fā)送或接收1位數(shù)據(jù),因此波特率固定為fOSC/12,且不受SMOD位的控制。 方式2的波特率要受PCON中SMOD位的控制,若SMOD設(shè)置為0時,波特率為fOSC/64;若SMOD設(shè)置為1時,則波特率為fOSC/32。方式2的波特率可用下式表示:波特率=2SMOD/64*fOSC ADμC834串行接口方式1和方式3的波特率,由定時器1(T1)的溢出率與SMOD位同時控制,其波特率可由下式表示:波特率=T1的溢出率/n 其中n=32或16,取決于PCON的SMOD位的值。SMOD=0時,n=32,SMOD=1時,n=16。因此也可用下式來表示:波特率=2SMOD/32*T1的溢出率 其中定時器送出串取決于計數(shù)速率和定時器的預(yù)設(shè)值。計數(shù)速率與TMOD寄存器中C/T的設(shè)置有關(guān),當(dāng)C/T=0時,為定時方式,計數(shù)速率=fOSC/12;當(dāng)C/T=1時,為計數(shù)方式,計數(shù)速率取決于外部輸入時鐘的頻率,但不能超過fOSC/24。定時器的預(yù)設(shè)值等于M-X,X為計數(shù)初值,M為計數(shù)器的最大計數(shù)值,與操作模式有關(guān)。如果為了達到很低的波特率,則可以選擇16位的操作模式,即模式1或模式0;可以利用T1中斷來重裝計數(shù)初值。為能實現(xiàn)定時器計數(shù)初值重裝,則通常選擇操作模式2。在模式2中,TL1用于計數(shù),TH1用于保存計數(shù)初值。當(dāng)TL1計滿溢出時,TH1中的值自動重裝到TL1中。因此,一般選用T1工作于模式2作波特率發(fā)生器。設(shè)T1的計數(shù)初值為X,設(shè)置C/T=0時,那么每過256-X個機器周期,T1就會產(chǎn)生一次溢出。則T1的溢出周期為:溢出周期=12/fOSC*(256-X)溢出率為溢出周期的倒數(shù),所以波特率=2SMOD/32*fOSC/(12*(256-X))=2SMOD*fOSC/(384*(256-X))T1模式2的計數(shù)初值由上式可得:X=256-2SMOD*fOSC/(384*波特率)如果串行通信選用很低的波特率,設(shè)置T1為模式0或模式1定時方式,則產(chǎn)生溢出時,需要重裝計數(shù)初值,故對波特率會產(chǎn)生一定的誤差。5.3SPI串行接口5.3.1SPI串行接口簡介串行外設(shè)接口(SerialPeriphralInterface,SPI)是工業(yè)標(biāo)準(zhǔn)的同步串行接口,它允許8位數(shù)據(jù)同時同步的被發(fā)送和接收。系統(tǒng)可配置為主(master)或從(slave)操作。SPI接口是一種全雙工、三線通信的系統(tǒng),它允許MCU與各種外圍設(shè)備以串行方式(8位數(shù)據(jù)同時同步的被發(fā)送和接收)進行通信。在SPI接口中,數(shù)據(jù)的傳輸需要1個時鐘信號和2條數(shù)據(jù)線。SPI可工作在主模式或從模式下。在主模式下,每一位數(shù)據(jù)的發(fā)送/接收需要1次時鐘作用;而在從模式下,每一位數(shù)據(jù)都是在接收到時鐘信號之后才發(fā)送/接收。一個典型的SPI系統(tǒng)包括1個主MCU和1個或幾個從外圍器件。SPI接口可設(shè)置成在發(fā)送/接收1個字節(jié)結(jié)束后產(chǎn)生一次中斷。主時鐘可以通過編程編成不同的狀態(tài)。既可編程為4種不同主波特率中的任何一種,又可對時鐘的極性和相位進行編程。SPI也可用于那些需要比微控制器上的并行I/O端口有更多輸入或輸出端口的場合中。SPI提供了一種擴展I/O功能的最簡單的方法,只需使用最少的微控制器引腳。5.3.2SPI接口的原理1.SPI的信號說明SPI系統(tǒng)使用4條線可與多種標(biāo)準(zhǔn)外圍器件直接接口:串行時鐘線SCLOCK、主機輸入/從機輸出數(shù)據(jù)線MISO、主機輸出/從機輸入數(shù)據(jù)線MOSI和低電平有效的從機選擇線/SS.MISO是主機的輸入/從機的輸出,主機的MISO應(yīng)與從機的MISO相連進行高位在前的數(shù)據(jù)交換。MOSI是SPI接口的SPI主機輸出/從機輸入數(shù)據(jù)引腳。因而,這一引腳應(yīng)當(dāng)連接主單片機的數(shù)據(jù)輸出和從單片機的數(shù)據(jù)輸入端MOSI,進行高位在前數(shù)據(jù)的交換。SCLOCK是主機的時鐘線,為MISO數(shù)據(jù)的發(fā)送和接收提供同步時鐘信號。每一位數(shù)據(jù)的傳輸都需要1次時鐘作用。因而,發(fā)送/接收1B的數(shù)據(jù)需要8個時鐘的作用。主機的時鐘通過主機的硬件設(shè)置,并和各個從機的SCLOCK相連。時鐘的波特率、極性、相位是由SPICON(SPI控制寄存器)來設(shè)置的。/SS值在從方式中用于低電平選中從機。/SS在初始化時,P1口被設(shè)置為模擬輸入。因而,通過清除該引腳可將其設(shè)置為數(shù)字輸入,才可完成主從機的通信。2.SPI的寄存器SPI有兩個相關(guān)寄存器:SPICON和SPIDAT。其中SPICON包含各種標(biāo)志位、使能位、方式位及時鐘位。各位都是位可尋址的,見下表。另一個SPI寄存器是SPIDAT,對這一寄存器的寫操作會產(chǎn)生從高位開始的逐位的數(shù)據(jù)發(fā)送。如果寫操作發(fā)生在其他數(shù)據(jù)正在傳遞的過程中,那么WCOL將置位。如果寫操作進行時,沒有其他數(shù)據(jù)在傳遞,SPIDAT中的數(shù)據(jù)將自動鎖存到移位寄存器中,移位寄存器從高位開始發(fā)送數(shù)據(jù)。發(fā)送結(jié)束后,輸入的字節(jié)將鎖存到SPIDAT中,可進行軟件讀出。5.4與I2CI2C接口是Philips開發(fā)的雙線串的接口模式,此接口可配置為軟件主模式(softwaremaster)或硬件從模式(hardwareslave),且可與SPI串行接口多路復(fù)用。它通過雙線SCLOCK和SDATA可與多片主、從單片機相連。圖22描述的是I2圖22I2C5.4.1I2C在I2C串行接口中,兩根信號線都是雙向的。SCLOCK信號控制主、從機之間的數(shù)據(jù)傳遞,并控制波特率。SDATA信號用于發(fā)送和接收數(shù)據(jù)。SCLOCK和SDATA分別為第26腳和第27腳。雖然I2C串行接口可以支持多片主、從單片機結(jié)構(gòu),但是一個I2C串行接口至少要有一個主單片機和一個從單片機。主單片機產(chǎn)生時鐘信號,從而驅(qū)動從單片機。圖22典型I2C時序起始是由主單片機產(chǎn)生的起始位控制的,起始狀態(tài)是SCLOCK處于高電平時,由SDATA的下降沿觸發(fā)的。起始狀態(tài)之后,主機給SDATA發(fā)送一個字節(jié)(MSB在前),這一字節(jié)包括從機地址和R/W狀態(tài)位。前7位為從機地址(slaveaddress),第8位(LSB)決定了數(shù)據(jù)傳輸方向。第8位是0表示主機要向從機中寫數(shù)據(jù);是1表示主機要從從機中讀取數(shù)據(jù)。只有在從機中的有效應(yīng)答位已經(jīng)收到的情況下,這些操作才可進行。主機送出從機地址后,系統(tǒng)中的每個從機將自己的地址與起始狀態(tài)后第一個字節(jié)的前7位地址作比較。如果與之匹配。則從機認(rèn)為自己被主機訪問。此時,從機通過發(fā)送應(yīng)答位發(fā)出確認(rèn),如圖23所示。應(yīng)答位應(yīng)在發(fā)送每一字節(jié)結(jié)束時由從機發(fā)出,即在SDATA的第9個時鐘周期,表現(xiàn)為低電平。圖23I2C如果沒有確認(rèn)應(yīng)答,或者傳輸已經(jīng)完成,主機就會發(fā)出結(jié)束狀態(tài)。結(jié)束狀態(tài)是SCLOCK處于高電平時,由SDATA的上升沿觸發(fā)的。5.4.2ADμC834上的I串行接口是由3個特殊功能寄存器SFR控制的:I2CADD:將ADμC834器件的7位地址保存在總線上(默認(rèn)值為55H)。7位的地址保存過程:如果從機將44H存放在它的I2CADD寄存器中,則主機必須送出88H才能與從機建立聯(lián)系。由于地址為7位,從機自動確定LSB(最低有效位)為讀/寫位(R/W)。因此,從機只需將該字節(jié)的前7位與自己的地址作比較。為構(gòu)成一個完整字(8位),從機添加一個0作為MSB(最高有效位)。添加后的結(jié)果即為從機的地址,如下圖所示。I2CDAT:保存需要接收或者發(fā)送的8位數(shù)據(jù)。I2CCON:保存主/從模式操作的模式/控制位,如圖24。從機占用I2CCON的低3位。當(dāng)硬件執(zhí)行從模式時,從機自動檢測起始位、應(yīng)答位、中斷及結(jié)束位。主機占用I2CCON的高4位來控制主機上SCLOCK和SDATA腳的信號發(fā)送。因此,在軟件主模式中,用戶必須利用這些可尋址位通過軟件來產(chǎn)生SCLOCK和SDATA信號。10001001/0第一步:主機送地址88H或89H(視操作模式而定)
10001001/0第二步:從機取前7位00001001/0第三步:從機通過加“0”從機添加MSB以構(gòu)成一個完整8位字,結(jié)果:從機接收到地址44H圖24I2CCON的位規(guī)定第六章 中斷系統(tǒng)與定時器/計數(shù)器6.1中斷系統(tǒng)6.1.1中斷源、中斷向量和中斷優(yōu)先級 ADμC834提供具有兩個優(yōu)先級的九個中斷源。在給定級別內(nèi),中斷優(yōu)先級以遞減的順序表示并給出了中斷源的概述,說明了請求和控制標(biāo)志。相應(yīng)中斷的中斷矢量地址如表5所列。中斷中斷名稱中斷矢量地址優(yōu)先級中的優(yōu)先順序PSMI電源監(jiān)視器43H1IE0外部INT003H2ADCIA/D轉(zhuǎn)換結(jié)果33H3TF0定時器0溢出0BH4IE1外部INT113H5TF1定時器1溢出1BH6I2CI/ISPI串行中斷3BH7RI/TIUART中斷23H8TF2/EXF2定時器2中斷2BH9表5中斷矢量地址 為了使用ADμC834的任何中斷,必須遵循下列3個步驟:把中斷服務(wù)子程序放在該中斷相應(yīng)的矢量地址,如表5所列;把IESFR中EA(使能全部)位設(shè)置為1;把IE或IE2SFR中相應(yīng)的各中斷位設(shè)置為1。3個SFR用于使能各種中斷并設(shè)置其優(yōu)先級。這些SFR位的意義如表6所列。應(yīng)該注意,IE和IPSFR是位可尋址的,而IE2僅是字節(jié)可尋址的。下面分別介紹這3個有關(guān)中斷的SFR。6.1.2與中斷6系統(tǒng)有關(guān)的特殊寄存器 1、IE為中斷使能SFR IE寄存器使能總中斷系統(tǒng)和7個中斷源,如表6所示:IEAFHAEHADHACHABHAAHA9HA8HA8HEAEADCET2ESET1EX1ET0EX0表6IESFR的各位分布 SFR地址:A8H SFR上電缺省值:00H 位可尋址:是位地址位助記符說明IE.7EA在內(nèi)核識別任何中斷之前,全局中斷使能位(EA)必須置為1,EA置為0將禁止所有的中斷IE.6EADC為使能ADC中斷,ADC中斷使能位應(yīng)置為1IE.5ET2為使能定時器2中斷,定時器2溢出中斷使能位(ET2)應(yīng)置為1IE.4ES為使能UART串行接口中斷,UART串行接口中斷使能位(ES)應(yīng)置為1IE.3ET1為使能定時器1中斷,定時器1溢出中斷使能位(ET1)應(yīng)置為1IE.2EX1為使能外部INT1中斷,INT1中斷使能位(EX1)應(yīng)置為1IE.1ET0為使能定時器0中斷,定時器0溢出中斷使能位(ET0)應(yīng)置為1IE.0EX0為使能外部INT0中斷,INT0中斷使能位(EX0)應(yīng)置為1表7中斷使能(IE)SFR位的說明2、IE2為中斷使能SFR IE2寄存器使能另外兩個中斷源,其中各位分布如表8所示:IE2A9HNUNUNUNUNUNUEPSMESI表8IE2SFR的各位分布 SFR地址:A9H SFR上電缺省值:00H 位可尋址:無位地址位助記符說明IE2.7NU未用IE2.6NU未用IE2.5NU未用IE2.4NU未用IE2.3NU未用IE2.2NU未用IE2.1EPSM為使能PSW中斷,電源監(jiān)視器中斷使能位(EPSM)應(yīng)置為1IE2.0ESI為使能SPI或I2C中斷,SPI/I2C中斷使能位(ESI)應(yīng)置為1表9中斷使能2(IE2)SFR位的說明IP為中斷優(yōu)先級SFR寄存器為各種中斷源設(shè)置兩種主優(yōu)先級之一。把相應(yīng)的位設(shè)置為1可把中斷偏置為高優(yōu)先級,設(shè)置為0則把中斷偏置為低優(yōu)先級。IPSFR的各位分布如圖28所示:IPBFHBEHBDHBCHBBHBAHB9HB8HB8HPSIPADCPT2PSPT1PX1PT0PX0表10IPSFR中的各位分布SFR地址:B8H SFR上電缺省值:00H 位可尋址:是位地址位助記符說明IP.7PSI設(shè)置SPI/I2C中斷優(yōu)先級IP.6PADC設(shè)置ADC中斷優(yōu)先級IP.5PT2設(shè)置定時器2中斷優(yōu)先級IP.4PS設(shè)置UART串行接口中斷優(yōu)先級IP.3PT1設(shè)置定時器1中斷優(yōu)先級IP.2PX1設(shè)置外部INT1中斷優(yōu)先級IP.1PT0設(shè)置定時器0中斷優(yōu)先級IP.0PX0設(shè)置外部INT0中斷優(yōu)先級表11中斷優(yōu)先級(IP)SFR位的說明6.1.3外部中斷輸入及其應(yīng)用ADμC834有兩個獨立的外部中斷輸入,這兩個外部中斷與標(biāo)準(zhǔn)的80C51控制器相同。通過對TCON寄存器中的IT1和IT0置位和清除,可將外部中斷源設(shè)置為電平觸發(fā)或邊沿出發(fā)。如果IT1和IT0為0,在INT1或INT0腳上出現(xiàn)低電平時將產(chǎn)生中斷;如果IT1和IT0為1,則外部中斷設(shè)置為邊沿觸發(fā),中斷源必須先維持引腳高電平至少一個機器周期,然后維持低電平至少一個機器周期,這樣可以保證跳變信號被檢測到。在檢測到外部中斷信號后,由硬件將中斷請求標(biāo)志位IE0或IE1置1。當(dāng)中斷服務(wù)程序響應(yīng)中斷時,IE0或IE1自動清除。如果外部中斷設(shè)置為電平中斷,并且在響應(yīng)的中斷服務(wù)完成后外部中斷源仍然維持低電平,這將產(chǎn)生一次新的中斷。在外部中斷設(shè)置為電平中斷時,是否清除中斷標(biāo)志位IE0或IE1無關(guān)緊要,因為中斷只與輸入端口的電平有關(guān)。6.2定時器/計數(shù)器ADμC834有3個定時器/計數(shù)器,即定時器/計數(shù)器T0、T1和T2,還有一個看門狗定時器(WatchdogTimer,監(jiān)視定時器)。6.2.1定時器/計數(shù)器0 在專用寄存器TMOD(定時器方式)中,各有一個控制位(C/T),用于控制定時器/計數(shù)器是工作在定時器方式還是計數(shù)器方式。 選擇定時器工作方式時,計數(shù)輸入信號是內(nèi)部時鐘脈沖,每個時鐘周期使寄存器的值增1。每個機器周期等于12個振蕩周期,故計數(shù)頻率為振蕩器頻率的1/12。當(dāng)采用12MHz晶體時,計數(shù)頻率為1MHz。 選擇計數(shù)器工作方式時,計數(shù)脈沖來自相應(yīng)的外部輸入引腳T0或T1。當(dāng)輸入信號產(chǎn)生由1至0的跳變時,計數(shù)寄存器TH0、TL0(或TH1、TL1)的值增1。每個機器周期的S5P2期間,對外部輸入進行采樣。如在第一個周期中采得的值為1,而在下一個周期中采得的值為0,則在緊跟著的再下一個周期的S3P1期間,計數(shù)值就增1。由于確認(rèn)一次負(fù)跳變要花2個機器周期,因此外部輸入的計數(shù)脈沖的最高頻率為振蕩周期頻率的1/24。對外部輸入信號的占空比并沒有什么限制,但為了確保某一給定的電平在變化之前至少被采樣一次,則這一電平至少要保持一個機器周期。 除了可以選擇定時器或計數(shù)器工作方式外,每個定時器/計數(shù)器還有4種操作模式,其中前3種模式對兩者都是一樣的,模式3對兩者是不同的。1、模式0 通過TMOD寄存器把定時器/計數(shù)器0或1置為模式0時,將使它工作在13位定時器/計數(shù)器模式。圖25表示了定時器/計數(shù)器1在模式0下的邏輯圖,對定時器/計數(shù)器0也適用,只要把圖中相應(yīng)的標(biāo)識符后綴1改為0就可以了。圖25定時器/計數(shù)器操作模式0在這種模式下,16位寄存器(TH1+TL1)只用了13位,TL1的高3位未用。圖中C/T是TMOD中的控制位,當(dāng)C/T=0時,選擇定時器方式;當(dāng)C/T=1時,選擇計數(shù)器方式。引腳T1(P3.5)接外部輸入信號。TR1是專用寄存器TCON(定時器控制)中的一個控制位,GATE是TMOD中的另一個控制位,引腳INT1(P3.3)是外部中斷1的輸入端,在此另有它用。TF1是定時器溢出標(biāo)志。當(dāng)滿足條件TR1=1和GATE=0(或INT1=1)為真時,接通計數(shù)輸入,當(dāng)計數(shù)值由全1再增1變?yōu)槿?時,使TF1置1,請求中斷。若TR1=1和GATE=1,則定時器1(TH1+TL1)是否計數(shù)取決于INT1引腳的信號,當(dāng)INT1由0變?yōu)?時,開始計數(shù);當(dāng)INT1由1變?yōu)?時,停止計數(shù)。這樣就可以測量在INT1端出現(xiàn)的正脈沖的寬度。2、模式1 模式1和模式0幾乎完全相同,唯一的差別是:模式一中,定時器寄存器TH1和TL1(或TH0和TL0)是以全16位參與操作的。3、模式2 模式2把定時器寄存器TL1(或TL0)配置成一個可以自動重裝載的8位計數(shù)器,如圖26所示。TL1計數(shù)溢出時,不僅使溢出標(biāo)志TF1置1,而且還自動把TH1中的內(nèi)容重裝載到TL1中。TH1的內(nèi)容可以靠軟件預(yù)置,重裝載后內(nèi)容不變。 操作模式2對定時控制特別有用。定時器0工作在模式2時與定時器1完全相同。圖26定時器/計數(shù)器操作模式24、模式3 操作模式3對定時器/計數(shù)器0和1是不同的。 對于定時器/計數(shù)器1,設(shè)置為模式3,將使它保持原有的計數(shù)值,其作用如同使TR1=0。 對于定時器/計數(shù)器0,設(shè)置為模式3,將使TL0和TH0成為2個互相獨立的8位計數(shù)器,如圖27所示。其中TL0利用了對于定時器/計數(shù)器0本身的一些控制位:C/T,GATE,TR0,/INT0和TF0。它的操作情況與模式0和模式1類同,但TH0被規(guī)定只用作定時器。對機器周期計數(shù)時,它借用了定時器1的控制位TR1和TF1,故這時TH0借用了定時器1的中斷。 模式3適用于要求增加一個額外的8位定時器的場合。把定時器/計數(shù)器0設(shè)置于操作模式3,TH0控制了定時器1的中斷,而定時器/計數(shù)器1還可以設(shè)置于模式0~模式2,用于任何不需要中斷控制的場合。圖27定時器/計數(shù)器操作模式36.2.2定時器/計數(shù)器2定時器/計數(shù)器2是一個具有16位自動重裝載功能或捕獲功能的定時器/計數(shù)器。專用寄存器T2CON是它的控制寄存器。它的工作方式可以分為兩類:一為定時器/計數(shù)器方式,另一為波特率發(fā)生器方式。作定時器用時,TH2和TL2計的是機器周期數(shù)。作計數(shù)器用時,外部計數(shù)脈沖由T2(P1.0)端輸入,其工作情況和時序關(guān)系與定時器/計數(shù)器0和1的完全一樣。對外部計數(shù)脈沖的要求也如前所述。在定時器/計數(shù)器工作方式下,都可以通過T2CON中的控制位CP/RL2來選擇捕獲功能或自動重裝載功能。TH2和TL2內(nèi)容的捕獲或自動重裝載是通過一對捕獲/重裝載寄存器RCAP2H和RCAP2L來實現(xiàn)的。TH2、TL2和RCAP2H、RCAP2L之間接有雙向緩沖器(三態(tài)門)。當(dāng)CP/RL2=0時,選擇自動重裝載功能,即把RCAP2H和RCAP2L的數(shù)據(jù)自動裝入TH2和TL2。當(dāng)CP/捕獲或自動重裝載操作發(fā)生于下述2種情況中:(1)定時器2的寄存器TH2和TL2溢出時,這時若CP/RL2=0,則打開自動重裝載的三態(tài)緩沖器,把RCAP2H和RCAP2L的內(nèi)容自動裝載到TH2和TL(2)當(dāng)EXEN2=1且T2EX(P1.1)端的信號有負(fù)跳變時。這時根據(jù)CP/RL2是0還是1,將發(fā)生捕獲或自動重裝載操作,同時標(biāo)志EXF2置1,請求中斷。若定時器/計數(shù)器2的中斷是被允許的,則無論發(fā)生TF2=1還是EXF2=1,CPU都會響應(yīng)中斷,此中斷向量的地址為2BH。響應(yīng)中斷后,應(yīng)靠軟件撤除中斷請求,以免無休止地發(fā)生中斷。TF2和EXF2都是直接可尋址位,可采用CLRTF2和CLREXF2指令實現(xiàn)撤除中斷申請的功能。波特率即每秒鐘傳輸?shù)臄?shù)據(jù)位數(shù),波特率發(fā)生器用于控制串行接口的數(shù)據(jù)傳輸速率。在T2CON中有2位:RCLK和TCLK,用于選擇定時器/計數(shù)器1還是定時器/計數(shù)器2作串行通信的波特率發(fā)生器。由圖28可看出,這2位的值用來控制2個電子開關(guān)的位置。值為0時,選用定時器/計數(shù)器1;值為1時,選用定時器/計數(shù)器2。RCLK選擇串行通信接收波特率發(fā)生器,TCLK選擇發(fā)送波特率發(fā)生器。當(dāng)選用定時器/計數(shù)器2作波特率發(fā)生器時,其溢出脈沖用作串行接口的時鐘,此時鐘頻率可由內(nèi)部時鐘決定,也可由外部時鐘決定。若C/T2=0,選用外部時鐘,該時鐘由T2(P1.0)端輸入,每當(dāng)外部脈沖負(fù)跳變時,計數(shù)器值增1。外部脈沖的脈沖頻率不能超過振蕩器頻率的1/24。由于溢出時,RCAP2H和RCAP2L的內(nèi)容會自動裝載到TH2和TL2中,故波特率的值還決定于裝載值。當(dāng)定時器/計數(shù)器2用作波特率發(fā)生器時,若EXEN2置1,則T2EX端的信號產(chǎn)生負(fù)跳變,EXF2將置1,但不會發(fā)生重裝載或捕獲操作。這時,T2EX可以作為一個附加的外部中斷源。在波特率發(fā)生器工作方式下,TH2和TL2的內(nèi)容不能再讀寫,也不能改寫RCAP2H和RCAP2L。圖28波特率發(fā)生器方式下的定時器/計數(shù)器26.2.3定時器/計數(shù)器的控制和狀態(tài)寄存器 專用寄存器TMOD、TCON和T2CON用于控制和確定各定時器/計數(shù)器的功能和操作模式。這些寄存器的內(nèi)容靠軟件設(shè)置。系統(tǒng)復(fù)位時,寄存器的所有位都被清0。1、模式控制寄存器TMODTMOD用于控制定時器/計數(shù)器0和1操作模式,其各位的定義見圖29。其中低4位用于控制定時器0,高4位用于控制定時器1。各位的作用如下。(MSB) (LSB)GATEC/TM1M0GATEC/TM1M0\_____________________________/ \_____________________________/\/ \/定時器/計數(shù)器1 定時器/計數(shù)器0圖29定時器/計數(shù)器模式控制寄存器TMODGATE為選通門。當(dāng)GATE=1時,只有INT0或INTl引腳為高電平且TR0或TRl置1時,相應(yīng)的定時器/計數(shù)器才被選通工作,這時可用于測量在INTx端出現(xiàn)的正脈沖的寬度。若GATE=0,則只要TR0和TRl置1,定時器/計數(shù)器就被選通,而不管INT0或INTl的電平是高還是低。C/T為計數(shù)器方式和定時器方式的選擇位。C/T=0,設(shè)置為定時器方式,內(nèi)部計數(shù)器的輸入是內(nèi)部脈沖,其周期等于機器周期;C/T=l,設(shè)置為計數(shù)器方式,內(nèi)部計數(shù)器的輸入來自T0(P3.4)或T1(P3.5)端的外部脈沖。M0和M1為操作模式控制位。2位可形成4種編碼,對應(yīng)于4種操作方式,見表12。M0M1操作模式00模式0。TLx中低5位與THx中8位構(gòu)成13位計數(shù)器,TLx相當(dāng)于一個5位定標(biāo)器01模式1。TLx與THx構(gòu)成全16位計數(shù)器,操作模式同上,但無定標(biāo)器10模式2。8位自動重裝載的定時器/計數(shù)器,每當(dāng)計數(shù)器TLx溢出時,THx中的內(nèi)容重新裝載到TLx11模式3。對于定時器0,分成兩個8位計數(shù)器;對于定時器1,停止計數(shù)表12操作模式控制位2.控制寄存器TCON TCON的各位定義見表13。各位的作用如下: TFl(TCON.7):定時器1溢出標(biāo)志。當(dāng)定時器/計數(shù)器溢出時,由硬件置位,請求中斷。進入中斷服務(wù)后被硬件自動清除。TRl(TCON.6):定時器1運行控制位??寇浖梦粫r,定時器/計數(shù)器接通工作,清除時停止工作。TF0(TCON.5):定時器0溢出標(biāo)志。其功能和操作情況類同于TFl。,TR0(TCON.4):定時器0運行控制位。其功能和操作情況類同于TRl。IEl(TCON.3):外部沿觸發(fā)中斷1請求標(biāo)志。檢測到在INTl引腳上出現(xiàn)的外部中斷信號的下降沿時,由硬件置位,請求中斷,進入中斷服務(wù)后被硬件自動清除。ITl(TCON.2):外部中斷1類型控制位。靠軟件來設(shè)置或清除,以控制外部中斷的觸發(fā)類型。ITl=1時,下降沿觸發(fā);ITl=0時,低電平觸發(fā)。IE0(TCON.1):外部沿觸發(fā)中斷0請求標(biāo)志。其功能和操作情況類同于IEl。IT0(TCON.0):外部中斷0類型控制位。其功能和操作情況類同于ITl。(MSB) (LSB)TF1TR1TF0TR0IE1IT1IE0IT0表13定時器/計數(shù)器控制寄存器TCON3.定時器/計數(shù)器2控制寄存器T2CONT2CON的各位定義見表14。各位的作用如下:TF2(T2CON.7):定時器2溢出標(biāo)志。定時器2溢出時置位,并請求中斷。只能靠軟件清除。但在波特率發(fā)生器方式下,也即RCLK=1或TCLK=1時,定時器溢出時不對TF2置位。EXF2(T2CON.6):定時器2外部標(biāo)志。當(dāng)EXEN2=1,且T2EX引腳上出現(xiàn)負(fù)跳變而造成捕獲或重裝載時,EXF2置位,請求中斷。這時若已允許定時器2中斷,CPU將響應(yīng)中斷,轉(zhuǎn)向中斷服務(wù)程序。EXF2要靠軟件來清除。RCLK(T2CON.5):接收時鐘標(biāo)志。靠軟件置位或清除,用以選擇定時器2或1作串行口接收波特率發(fā)生器。RCLK=1時,用定時器2溢出脈沖作為串行接口的接收時鐘;RCLK=0時,用定時器1的溢出脈沖作接收時鐘。TCLK(T2CON.4):發(fā)送時鐘標(biāo)志??寇浖梦换蚯宄?,以選擇定時器2或定時器1作串行接口發(fā)送波特率發(fā)生器。TCLK=1時,用定時器2溢出脈沖作為串行接口的發(fā)送時鐘;TCLK=0時,用定時器1的溢出脈沖作發(fā)送時鐘。EXEN2(T2CON.3):定時器2外部允許標(biāo)志??寇浖O(shè)置或清除,以允許或不允許用外部信號來觸發(fā)捕獲或自動重裝載操作。當(dāng)EXEN2=1時,若定時器2未用于作串行接口的波特率發(fā)生器,則在T2EX端出現(xiàn)的信號負(fù)跳變時,將造成定時器2捕獲或自動重裝載,并置EXF2標(biāo)志為1,請求中斷;EXEN2=0時,T2EX端的外部信號不起作用。TR2(T2CON.2):定時器2運行控制位??寇浖O(shè)置或清除,以決定定時器2是否運行。TR2=1,啟動定時器2,否則停止。C/T2(T2CON.1):定時器方式或計數(shù)器方式選擇位(對定時器/計數(shù)器2)。靠軟件設(shè)置或清除。C/T2=0,選擇定時器工作方式;C/T2=1,選擇計數(shù)器工作方式。CP/RL2(T2CON.0):捕獲或自動重裝載標(biāo)志。用軟件設(shè)置或清除。CP/RL2=1選擇捕獲功能,這時若EXEN2=1,且T2EX端的信號負(fù)跳變時,發(fā)生捕獲操作,即把TH2和TL2的內(nèi)容傳遞給RCAP2H和RCAP2L。CP/RL2=0,選擇自動重裝載功能,這時若定時器2溢出,或在EXEN2=1條件下T2EX端的信號負(fù)跳變時,都會造成自動重裝載操作,即把RCAP2H和RCAP2L專用寄存器TMOD、TCON和T2CON中的各位都是可位尋址的,因此這一小節(jié)敘述的所有標(biāo)志或控制位都可以靠軟件來設(shè)置或清除。(MSB) (LSB)TF2EXF2RCLKTCLKEXEN2TR2C/T2CP/RL2表14定時器/計數(shù)器控制寄存器T2CON看門狗定時器的功能看門狗定時器的用途是當(dāng)ADμC834可能有編程錯誤、電氣噪聲或電磁輻射干擾而進入錯誤狀態(tài),在合適的時間內(nèi)產(chǎn)生復(fù)位,以保證其最大限度的可靠性。它通過WDCON寄存器(見圖35)的WDE位啟動。當(dāng)看門狗功能被啟動,定時裝置必須得到軟件的清除,以防止其溢出時對CPU復(fù)位,但是定時裝置不能被關(guān)閉。當(dāng)不作為看門狗定時器時,可通過WDCON寄存器的WDE位控制。看門狗溢出時間選擇有8個數(shù)據(jù),一般正常時間間隔從16ms~2048ms。當(dāng)看門狗功能有效,在芯片初始化時,向WDCON一次寫入數(shù)據(jù)以設(shè)定看門狗溢出時間。建議初始化WDCON時,先寫WDCON配置的PRE2~PRE0位,設(shè)定看門狗溢出時間,然后“喂”看門狗,最后啟動看門狗。由于看門狗定時器的振蕩器是一個完全獨立于CPU的片內(nèi)振蕩電路,它實質(zhì)上執(zhí)行的是振蕩器失靈的檢測功能。當(dāng)看門狗功能被啟動,無論CPU振蕩器因何故失靈,看門狗定時器都會溢出,使CPU復(fù)位。當(dāng)看門狗功能被啟動,這個定時器會由于其他原因造成芯片復(fù)位而暫時無效,如:電源復(fù)位、降壓復(fù)位或外部復(fù)位等。6.2.5看門狗定時器的控制和狀態(tài)寄存器WDCON看門狗定時器的控制和狀態(tài)寄存器WDCON如表15所示。其各位定義如下:(MSB) (LSB)PRE2PRE1PRE0-WDR1WDR2WDSWDE表15看門狗定時器控制與狀態(tài)寄存器WDCONPRE2、PREl、PRE0(WDCON.7~WDCON.5):看門狗定時器溢出時間設(shè)置位。通過對這幾位的設(shè)置可分別得到16ms、32ms、64ms、128ms、256ms、512ms和1024ms的看門狗定時器的溢出時間周期。WDRl、WDR2(WDCON.3~WDCON.2):看門狗定時器的刷新位。通過對這兩位按順序置位操作,可以使看門狗定時器復(fù)位,即看門狗定時器重新開始計時。這兩位實際上是用于“喂”看門狗的。WDS(WDCON.1):看門狗定時器的溢出狀態(tài)位。WDS=1,說明看門狗定時器為溢出狀態(tài)。這一位用于程序初始化時,判斷程序是開機復(fù)位還是看門狗定時器的溢出復(fù)位。WDE(WDCON.0):看門狗定時器的使能位。WDE=1,開啟看門狗定時器;WDE=0,關(guān)閉看門狗定時器。6.2.6“喂”看門狗的順序如果看門狗定時器正在工作,必須在其溢出產(chǎn)生復(fù)位前“喂”它。“喂”看門狗的順序包括:先寫1到WDRl,再寫1到WDR2。下面是一個操作實例:WDFeed:SETBWDRl SETBWDR2兩個寫命令必須按嚴(yán)格的規(guī)程進行操作。一個不正確的“喂”看門狗順序不會引起看門狗定時器的任何反應(yīng)。只要在此時間之前沒有給它一個正確的“喂”,它仍然按最初設(shè)置的時間工作直到溢出。第七章復(fù)位、時鐘與電源復(fù)位電路、時鐘電路和電源的設(shè)計對ADμC834的應(yīng)用系統(tǒng)有著重要意義。有關(guān)的設(shè)計不僅關(guān)系到系統(tǒng)的性能高低,更決定了系統(tǒng)能否正常工作。本章討論ADμC834的復(fù)位電路、時鐘電路和電源的設(shè)計及其注意事項,并給出若干設(shè)計建議。7.1復(fù)位ADμC834需要外接POC(Power-onreset,上電復(fù)位)電路。上電復(fù)位電路在電源電壓(AVDD和DVDD引腳處)低于2.5V時,要使RESET引腳保持高電平;而且,VDD的電壓高于2.5V時,RESET保持低電平至少10ms。外部POR電路必須能夠在低至1.2V,甚至更低的電壓下工作。圖30給出POR電路在三種不同的情況下應(yīng)有的功能。這三種情況分別是:上電、電源低落和掉電。注意RESET引腳為高電平時它跟隨VDD的電壓。圖30POR電路在三種不同的情況下應(yīng)用的功能采用專門的POR芯片能夠很好滿足上述要求,如ADI公司出品SOT-23封裝的ADM181x系列復(fù)位芯片、MAXIM公司的MAX813等。圖37和圖38分別給出高電平有效和低電平有效兩種復(fù)位芯片的復(fù)位電路。復(fù)位芯片的輸出也可用于電路中其它器件的復(fù)位,但應(yīng)注意復(fù)位芯片的驅(qū)動能力。有些低電平有效復(fù)位芯片可以外接手動復(fù)位的按鍵,如圖38中虛線所示。圖31和圖32所推薦的POR電路可以保證ADμC834在上電時正常復(fù)位,掉電時正常關(guān)閉,在非完全掉電和電源低落時也能做出正常、合適的響應(yīng)。圖31高電平有效復(fù)位芯片的復(fù)位電路圖32低電平有效復(fù)位芯片的復(fù)位電路7.2時鐘ADμC834既可以使用片內(nèi)的時鐘振蕩器,也可以使用片外時鐘源。使用片內(nèi)時鐘振蕩器時,采用并聯(lián)諧振晶體,在接引腳32(XTAL1)和33(XTAL2)之間,如圖33所示。電容器的值按照產(chǎn)生晶體振蕩器的廠家提供的電容值選用,一般在10pF~60pF之間取值。如果使用ADμC834片外時鐘源,只需將片外時鐘源接到引腳32(XTAL1),讓引腳33(XTAL2)懸空,如圖34所示。XTAL1輸入所需的邏輯電平可參考數(shù)據(jù)手冊中有關(guān)“DigitalInputs”(數(shù)字輸入)部分。不管是使用片內(nèi)的時鐘振蕩器,還是使用片外時鐘源,ADμC834的時鐘工作范圍均為400kHz~16MHz.由于ADμC834的內(nèi)核是靜止的,所以內(nèi)核的工作頻率可以低到直流。但是,當(dāng)時鐘頻率低于400kHz時,片內(nèi)ADC不能正常工作。因此,為使器件的性能達到額定的指標(biāo),應(yīng)保證ADμC834的時鐘工作范圍在400kHz~16MHz之間。圖33使用片內(nèi)時鐘振蕩器的時鐘電路圖34使用片外時鐘源的時鐘電路7.3.1ADμC834ADμC834的操作電源供壓范圍是2.7V~5.5V。只有電源提供的電壓沒有超出3V或5V的±10%,才能保證器件達到數(shù)據(jù)手冊所給定的額定性能。將模擬正電源電壓和數(shù)字正電源電壓的引腳AVDD和DVDD分離,可以使AVDD不受系統(tǒng)DVDD電源線上噪聲信號的干擾。雖然可以用各自獨立的電源驅(qū)動AVDD和DVDD,但必須確保AVDD和DVDD的電壓一直保持在彼此的±0.3V以內(nèi),以避免損壞芯片(按照數(shù)據(jù)表中的絕對最大額定極限)。因此,建議在AVDD和DVDD不直接連在一起時,在它們之間連接反向相疊的肖特基二級管,如圖35所示。圖35采用兩獨立電源供電時的處理如果不用兩個獨立的電源,則可以通過在AVDD和DVDD之間串接小阻抗電阻或磁珠來保證AVDD不受DVDD的影響,并將AVDD直接去耦,如圖42所示。然而,不要在AVDD和DVDD之間串接電感器,否則,電感與去耦電容一起會在AVDD上形成諧振電路。同時,不要采用電阻值過大的電阻,以防止AVDD上的阻抗大幅度增加。如圖42所示的電路也可以從AVDD電源線上驅(qū)動其它模擬電路(如放大器、參考電壓等)。為了避免上電和掉電時電源電壓的瞬時壓差過大,必須在AVDD和DVDD之間連接兩只反向并接的肖特基二級管。圖36采用一個電源供電的處理注意,在圖35和圖36中,在DVDD和AVDD上分別接有較大的儲能電容器。同樣,在芯片每個VDD引腳處接有小容量的陶瓷電容;并盡可能保證陶瓷電容與每個AVDD引腳靠近,每個陶瓷電容的接地端直接連接到地平面。7.3.2A ADμC834的各主要部件的功耗如表16所列。表中列出的內(nèi)核的電流值是由DVDD提供,其它部件(ADC、DAC、voltageref)的電流值是由AVDD提供,并在不使用時能夠使用軟件關(guān)閉。芯片上的其它外設(shè)(看門狗定時器、電源監(jiān)視器等)消耗的電流可以忽略不計。因此,這些設(shè)備的工作電流可以考慮在內(nèi)核的工作電流內(nèi)。當(dāng)然,為了測定ADμC834的電源引腳所需的全部電流,必須把通過并行和串行I/O引腳以及DAC引腳的全部電流計算在內(nèi)。同樣,在FLASH/EE擦除和編程的期間,從DVDD電源提供的電流將增加約10mA,也應(yīng)計算在內(nèi)。VVDD=5VVVDD=3VCORE(正常工作模式)1.6nA*fMCLK/Hz+5mA0.8nA*fMCLK/Hz+1.5mACORE(閑置模式)0.75nA*fMCLK/Hz+5mA0.25nA*fMCLK/Hz+1.5mAADC1.3mA1.0mADAC(每通道)250μA200μA參考電源200μA150μA表16ADμC834的各主要部件的功耗DVDD電源提供的電流主要與時鐘速度有關(guān),因此,表9中的內(nèi)核電流表示成fMCLK(振蕩器頻率)的函數(shù),fMCLK值的單位為Hz。由表9可以確定芯片內(nèi)核在一定的振蕩器頻率時的功耗(電流)。由于ADC和DAC可以通過軟件使其激活或關(guān)閉,因此,所增加的電流僅僅是使用的外設(shè)所消耗。只要ADC或至少一路DAC被激活,內(nèi)部參考電壓就自動激活。在考慮功耗時不要忘記從I/O引腳、串行接口引腳、DAC輸出等處引入的電流,以及在Flash/EE擦除和編程過程中引入的額外電流。用軟件可以使芯片從正常模式切換到閑置模式,也可以切換到關(guān)閉模式。下面簡要地介紹關(guān)閉模式和閑置模式。在閑置模式中,振蕩器繼續(xù)運轉(zhuǎn),但不與芯片內(nèi)核接通。芯片上的外設(shè)可接收時鐘信號并處于功能激活狀態(tài)。端口引腳和DAC輸出引腳保持原狀態(tài)不變。芯片在接收任一非屏蔽中斷信號或硬件復(fù)位信號后,將從閑置模式恢復(fù)到正常模式。在關(guān)閉模式中,芯片上的振蕩器停止工作,所有片上外設(shè)被關(guān)閉。端口引腳保持原邏輯電平不變,但DAC輸出變成高阻狀態(tài)。芯片在接收到硬件復(fù)位信號或重新上電時,將從關(guān)閉模式恢復(fù)到正常工作模式。在關(guān)閉模式時,ADμC834消耗的電流總額約為5μA。7.3.3接地與電路板設(shè)計由于數(shù)據(jù)轉(zhuǎn)換器的高分辨率,為了得到最佳的性能,必須格外注意ADμC834的接地及其電路板設(shè)計。盡管每個用戶系統(tǒng)都有其獨特之處,但在設(shè)計中,仍有一些共同的原則值得注意。雖然ADμC834有各自獨立的模擬地和數(shù)字地引腳,但若這兩個地平面在非??拷麬DμC834的地方連接在一起,則可將它們就近接地,而無需將它們接到各
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025至2030年低溫干燥魚粉項目投資價值分析報告
- 2025年成套實木家具項目可行性研究報告
- 2025年多功能電煎扒爐項目可行性研究報告
- 會員促銷活動方案策劃書3
- 2025年烯丙雌甾醇項目投資可行性研究分析報告-20241226-214759
- Revision 1(教學(xué)設(shè)計)-2024-2025學(xué)年人教新起點版英語三年級上冊
- 求一個數(shù)是另一個數(shù)的幾倍(教學(xué)設(shè)計)-2024-2025學(xué)年三年級上冊數(shù)學(xué)人教版
- 2024-2025年中國辦公軟件未來趨勢預(yù)測分析及投資規(guī)劃研究建議報告
- Unit 5 What does he do(教學(xué)設(shè)計)-2024-2025學(xué)年人教PEP版英語六年級上冊
- 2025年度企業(yè)內(nèi)部數(shù)據(jù)安全保密協(xié)議范本
- 2024-2025年中國鋰電池隔膜行業(yè)未來發(fā)展趨勢分析及投資規(guī)劃建議研究報告
- 軟件系統(tǒng)項目實施方案(共3篇)
- 2025年山東藥品食品職業(yè)學(xué)院高職單招職業(yè)技能測試近5年??及鎱⒖碱}庫含答案解析
- 2025年恩施市福牛物業(yè)有限公司招聘筆試參考題庫含答案解析
- 中華人民共和國保守國家秘密法實施條例
- 《環(huán)境影響評價》全套教學(xué)課件
- XX小學(xué)法治副校長(派出所民警)法制教育課講稿
- (2024年)肺栓塞的護理課件
- D502-15D502等電位聯(lián)結(jié)安裝圖集
- 初中說明文閱讀題十五篇含答案
- 高鐵接觸網(wǎng)施工新技術(shù)
評論
0/150
提交評論