版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
第5章
DSP的A/D轉(zhuǎn)換器本章內(nèi)容:5.1240xA的A/D轉(zhuǎn)換器的特點5.2自動排序器原理5.3自動排序模式5.4ADC時鐘定標5.5ADC寄存器5.6ADC的C語言編程實例15.1240xA的A/D轉(zhuǎn)換器的特點
240xADSP控制器是一種16位單片機(Microcontroller),即單片解決方案(SingleChipSolution),也是由CPU、存儲器、接口等組成。
DSP控制器片內(nèi)接口部件(也稱片內(nèi)外設(shè))有數(shù)字I/O接口、模/數(shù)轉(zhuǎn)換模塊、事件管理器模塊、各種通信模塊(包括SCI串行通信接口、SPI串行外設(shè)接口、CAN控制器模塊等。2
240xADSP內(nèi)部有一個10位模/數(shù)轉(zhuǎn)換器ADC(AnalogtoDigitalConverter),可有16路模擬輸入信號,轉(zhuǎn)換時間可以在375ns以內(nèi)。16個結(jié)果寄存器RESULT0~15存儲轉(zhuǎn)換結(jié)果。A/D轉(zhuǎn)換器的特點(1)10位ADC內(nèi)核,帶有內(nèi)置采樣-保持電路。(2)375ns的轉(zhuǎn)換時間。(3)16個模擬輸入通道(ADCIN0~15)。(4)對16路模擬量進行“自動排序”。(5)2個獨立的8狀態(tài)排序器(SEQ1和SEQ2)-雙排序器,或級聯(lián)為16狀態(tài)排序器模式(SEQ)-單排序器。(6)在給定的排序模式下,4個排序控制器(CHSELSEQ1~4)決定模擬通道的轉(zhuǎn)換順序。(7)16個存放結(jié)果的寄存器(RESULT0~RESULT15)。3(8)有多個啟動ADC轉(zhuǎn)換的觸發(fā)源:*軟件啟動*EVA事件管理器啟動(比較匹配、周期匹配、下溢、CAP3)*EVB事件管理器啟動(比較匹配、周期匹配、下溢、CAP6)*ADC的SOC引腳啟動(與XINT2引腳共用)(9)EVA和EVB可分別獨立地觸發(fā)SEQ1和SEQ2(僅用于雙排序器模式)(10)采樣/保持時間有單獨的預定標控制。(11)240xDSP的ADC模塊和24x的ADC模塊不兼容。4ADC模塊的寄存器地址 寄存器 名稱70A0hADCTRL1 ADC控制寄存器170A1hADCTRL2 ADC控制寄存器270A2hMAXCONV 最大轉(zhuǎn)換通道寄存器70A3hCHSELSEQ1 通道選擇排序控制寄存器170A4hCHSELSEQ2 通道選擇排序控制寄存器270A5hCHSELSEQ3 通道選擇排序控制寄存器370A6hCHSELSEQ4 通道選擇排序控制寄存器470A7hAUTO_SEQ_SR 自動排序狀態(tài)寄存器70A8hRESULT070B7h~RESULT15 轉(zhuǎn)換結(jié)果寄存器0~1570B8hCALIBRATION 校準寄存器55.2自動排序器原理自動排序器可以對模擬通道的轉(zhuǎn)換順序進行排序。
ADC排序器由兩個8狀態(tài)排序器SEQ1和SEQ2組成,也可以級聯(lián)成一個16狀態(tài)排序器。這里的狀態(tài)指排序器中自動轉(zhuǎn)換的數(shù)量。排序器有兩種工作模式:單排序器即級聯(lián)模式,雙排序器模式。單排序器可以有16個轉(zhuǎn)換通道。雙排序器模式為兩個獨立的8狀態(tài)(或8通道)轉(zhuǎn)換。用戶也可對同一通道進行多次采樣,即“過采樣”,得到的采樣結(jié)果比傳統(tǒng)的單采樣結(jié)果分辨率高。6單排序器(級聯(lián))模式下ADC模塊原理框圖7雙排序器模式下ADC模塊原理框圖8規(guī)定排序器的狀態(tài)如下:排序器SEQ1:CONV00-CON07排序器SEQ2:CONV08-CON15排序器SEQ:CONV00-CON15轉(zhuǎn)換觸發(fā)特性:SEQ1:軟件、EVA、外部引腳,優(yōu)先級高于SEQ2SEQ2:軟件、EVB,優(yōu)先級低于SEQ1SEQ:軟件、EVA、EVB、外部引腳每個排序所選的模擬通道由輸入通道選擇排序控制寄存器(CHSELSEQn,n=1~4)的CONVnn位域(4位長)所定義,可指定16通道中的任何一個。9ADC單操作模式和級聯(lián)操作模式比較特點單8狀態(tài)排序器1(SEQ1)單8狀態(tài)排序器2(SEQ2)級聯(lián)16狀態(tài)排序器(SEQ)開始轉(zhuǎn)換觸發(fā)信號(SOC)EVA,軟件,外部引腳EVB,軟件EVA,EVB,軟件,外部引腳最大轉(zhuǎn)換數(shù)(即排序器長度)8816自動停在排序器的結(jié)尾(EOS)是是是優(yōu)先級高低無效ADC轉(zhuǎn)換結(jié)果寄存器0~78~150~15ADCCHSELSEQn位的分配CONV00~CONV07CONV08~CONV15CONV00~CONV15105.3自動排序模式1.不間斷的自動排序模式不間斷的自動排序模式(Uninterrupt
AutosequencedMode)即連續(xù)轉(zhuǎn)換模式,在該模式下SEQ1/SEQ2能在一次排序過程中,對多達8個轉(zhuǎn)換通道進行自動排序。轉(zhuǎn)換結(jié)果被保存到8個結(jié)果寄存器(SEQ1為RESULT0-7,SEQ2為RESULT8-15)。一次自動排序中完成的轉(zhuǎn)換數(shù)為MAXCONVn+1。在一個排序中的轉(zhuǎn)換個數(shù)受寄存器MAXCONV中的一個3位域或4位域MAXCONVn控制。它的值在自動排序轉(zhuǎn)換開始時被自動裝載到自動排序狀態(tài)寄存器(AUTO_SEQ_SR)中的排序計數(shù)器SEQCNTRn。
MAXCONVn位域的值在0~7或0~15之間,排序器從狀態(tài)CONV00開始轉(zhuǎn)換,SEQCNTRn位域從裝載值開始向下計數(shù),直到SEQCNTRn為0。11CHSELSEQn各寄存器數(shù)值Bits5~12Bits11~8Bits7~4Bits3~03232CHSELSEQ1x0C76CHSELSEQ2xxxxCHSELSEQ3xxxxCHSELSEQ4例,采用SEQ1的雙排序模式下的轉(zhuǎn)換。設(shè)在SEQ1中有7路轉(zhuǎn)換,即ADCIN2和ADCIN3各兩次,ADCIN6、ADCIN7和ADCIN12各1次。則
CHSELSEQ1:0x3232
CHSELSEQ2:0x0C76 MAXCONV1:612一旦轉(zhuǎn)換啟動(SOC)觸發(fā)信號被排序器收到后,轉(zhuǎn)換立即開始,轉(zhuǎn)換通道數(shù)載入SEQCNTRn位域,按照CHSELSEQn寄存器指定的通道順序進行轉(zhuǎn)換。每個通道轉(zhuǎn)換結(jié)束后,SEQCNTRn自動減1。當SEQCNTRn達到0時,將根據(jù)ADCTRL1寄存器的連續(xù)運行位(CONTRUN)狀態(tài),發(fā)生以下事情:(1)如果CONTRUN位=1,轉(zhuǎn)換排序自動再次啟動(即SEQCNTRn重載MAXCONV1中的初始值,且SEQ1狀態(tài)被置于CONV00)。在這種情況下,必須確保在下一次轉(zhuǎn)換排序之前讀取結(jié)果寄存器。在ADC模塊向結(jié)果寄存器寫入數(shù)據(jù)而用戶卻想從結(jié)果寄存器讀取數(shù)據(jù)時,ADC的仲裁邏輯確保結(jié)果寄存器不會崩潰。13(2)如果CONTRUN位=0,則排序會停留在過去的狀態(tài)(例如CONV06),并且SEQCNTRn繼續(xù)保持0值。因為每次SEQCNTRn達到0時,中斷標志會被置1。如果需要,用戶可使用ADCTRL2寄存器的RSTSEQn位,在中斷服務(wù)程序中復位排序器,以便下一次轉(zhuǎn)換啟動時,SEQCNTRn可以重載MAXCONV1的初始值,且SEQ1狀態(tài)被設(shè)置為CONV00。這一特性在排序器的啟動/停止操作中很有用。142.排序器的啟動/停止模式除不間斷的自動排序模式外,任何一個排序器都可工作在啟動/停止模式。在此模式,可實現(xiàn)多個啟動轉(zhuǎn)換觸發(fā)在時間上同步。這種模式和上例基本相同,但是排序器完成一個轉(zhuǎn)換序列之后,可以在沒有復位到初始狀態(tài)CONV00情況下,被重新觸發(fā)。因此當一個轉(zhuǎn)換排序結(jié)束后,排序器停留在當前的轉(zhuǎn)換狀態(tài)。在這種方式下,ADCTRL1寄存器的連續(xù)運行位必須設(shè)置為禁止(寫0)。15事件管理器觸發(fā)排序轉(zhuǎn)換的例子例,排序器的啟動/停止操作。要求觸發(fā)1(定時器下溢)到來時,開始3個自動轉(zhuǎn)換(I1,I2,I3)。觸發(fā)2(定時器周期匹配)到來時,開始另外3個自動轉(zhuǎn)換(V1,V2,V3)。觸發(fā)事件1、2在時間上相差25微秒。16ADC輸入通道選擇控制寄存器CHSELSEQn設(shè)置Bits5~12Bits11~8Bits7~4Bits3~0V1I3I2I1CHSELSEQ1xxV3V2CHSELSEQ2xxxxCHSELSEQ3xxxxCHSELSEQ417復位和初始化之后,SEQ1等待觸發(fā)信號。第一個觸發(fā)信號到來之后,執(zhí)行CONV00(I1)、CONV01(I2)和CONV02(I3)這3個轉(zhuǎn)換,然后,SEQ1在當前狀態(tài)等待另一個觸發(fā)信號。當?shù)诙€觸發(fā)信號到來時,ADC模塊開始另外3個轉(zhuǎn)換,分別為CONV03(V1)、CONV04(V2)和CONV05(V3)。在這兩種觸發(fā)情況下,MAXCONV1的值被自動裝入到SEQCNTVn中。如果第二個觸發(fā)信號到來時,要求轉(zhuǎn)換的數(shù)目和第一個觸發(fā)時不一樣,則用戶必須在第二個觸發(fā)信號到來之前通過軟件改變MAXCONV1的值,否則ADC將重新使用原來的MAXCONV1的值。在兩個自動轉(zhuǎn)換完成后,ADC的結(jié)果寄存器的值如表所示。18ADC結(jié)果寄存器ADC結(jié)果寄存器ADC轉(zhuǎn)換結(jié)果ADC結(jié)果寄存器ADC轉(zhuǎn)換結(jié)果RESULT0I1RESULT8xRESULT1I2RESULT9xRESULT2I3RESULT10xRESULT3V1RESULT11xRESULT4V2RESULT12xRESULT5V3RESULT13xRESULT6xRESULT14xRESULT7xRESULT15x193.輸入觸發(fā)描述不同排序器下的不同觸發(fā)源SEQ1(排序器1)SEQ2(排序器2)級聯(lián)排序器SEQ軟件觸發(fā)(軟件SOC)軟件觸發(fā)(軟件SOC)軟件觸發(fā)(軟件SOC)事件管理器A(EVASOC)事件管理器B(EVBSOC)事件管理器A(EVASOC)外部SOC引腳事件管理器B(EVBSOC)外部SOC引腳20排序轉(zhuǎn)換中的中斷操作模式4.排序器轉(zhuǎn)換中的中斷操作有三種情況,兩種中斷模式。第一種情況:兩次采樣的采樣數(shù)不一樣。模式l中斷操作(即每次EOS都產(chǎn)生中斷)。第二種情況:兩次采樣的采樣數(shù)一樣。模式2中斷操作(即每2次EOS產(chǎn)生1個中斷)。第三種情況:兩次采樣的采樣數(shù)一樣(虛讀)。模式2中斷操作(即每2次EOS產(chǎn)生1個中斷)。215.4ADC時鐘定標模數(shù)轉(zhuǎn)換過程分為兩個時段:采樣/保持時段,轉(zhuǎn)換時段,如圖所示。ADC轉(zhuǎn)換時間22240xADSP中ADC的采樣/保持(S/H)時間可以調(diào)節(jié),以適應(yīng)輸入信號阻抗的變化,如圖所示。ADC模塊的時鐘預定標235.5ADC寄存器ADC控制寄存器1:ADCTRL1。ADC控制寄存器2:ADCTRL2。ADC最大通道轉(zhuǎn)換寄存器:MAXCONV。自動排序狀態(tài)寄存器:AUTO_SEQ_SR。ADC輸入通道排序寄存器:CHSELSEQ1~4。ADC轉(zhuǎn)換結(jié)果緩沖寄存器:RESULT0~15。241.ADC控制寄存器1:ADCTRL1位14RESET:模數(shù)轉(zhuǎn)換模塊軟件復位位。為1時復位ADC模塊。位13~12SOFT~FREE:仿真懸掛模式。位11~8ACQ_PS3~ACQ_PS0:采樣時間窗預定標位。位7CPS:內(nèi)核時鐘預分頻器。0:ACLK=CLK;1:ACLK=CLK/2位6CONTRUN:連續(xù)運行位。0:啟動/停止模式;1:連續(xù)轉(zhuǎn)換模式位5INTPRI:ADC中斷優(yōu)先級位。0:高優(yōu)先級位4SEQCASC:級聯(lián)排序器工作模式位。0:雙排序器模式。
1:級聯(lián)模式25位3CALENA,偏差校準使能。為1時使能偏差校準模式。位2BRGENA:橋使能位。位1HI/LO:VREFHI或VREFLO選擇位。位0STESTENA:自測功能使能位
。262.ADC控制寄存器2:ADCTRL2位15EVBSOCSEQ:級聯(lián)排序器模式下EVBSOC使能位。1:使能位14RSTSEQ1/STRT:復位排序器1位/啟動校準位。1:復位/啟動校準位13SOCSEQ1:開始轉(zhuǎn)換SOC觸發(fā)排序器1。為1開始轉(zhuǎn)換位12SEQ1BSY:SEQ1忙碌位。為1忙碌位11INTSEQ1Mode1:排序器SEQ1的中斷方式控制位。
位10INTSEQ1Mode0:排序器SEQ1的中斷方式控制位。
00:中斷禁止
01:中斷方式1.每一個EOS產(chǎn)生一次中斷
10:中斷方式2.每兩個EOS產(chǎn)生一次中斷11:保留位8EVASOCSEQ1:EVA對SEQ1產(chǎn)生SOC信號的屏蔽位。27位7EXTSOCSEQ1:外部信號啟動SEQ1轉(zhuǎn)換位。位6RSTSEQ2:復位排序器2。位5SOCSEQ2:啟動SEQ2轉(zhuǎn)換位。位4SEQ2BSY:SEQ2忙碌位。位3INTENASEQ2Mode1:SEQ2的中斷模式位。位2INTENASEQ2Mode0:SEQ2的中斷模式位。位0EVBSOCSEQ2:EVB對SEQ2產(chǎn)生SOC信號的屏蔽位。283.最大通道轉(zhuǎn)換寄存器:MAXCONV位6~0MAXCONVn:定義一次自動轉(zhuǎn)換最多可以轉(zhuǎn)換的通道個數(shù)。一次轉(zhuǎn)換的個數(shù)為MAXCONVn+1。(1)級聯(lián)方式(SEQ):MAXCONV1-3~MAXCONV1-0取值0000-1111(0-15)轉(zhuǎn)換個數(shù)1-16.(2)雙排序器方式(SEQ1,SEQ2):MAXCONV1-2~MAXCONV1-0(或MAXCONV2-2~MAXCONV2-0
)取值000-111(0-7)轉(zhuǎn)換個數(shù)1-8.294.自動排序狀態(tài)寄存器:AUTO_SEQ_SR位11~8SEQCNTR[3~0]:排序計數(shù)器狀態(tài)位。在轉(zhuǎn)換排序開始時,SEQCNTR[3~0]初始化為MAXCONV中的值。在一個自動轉(zhuǎn)換排序的每一個轉(zhuǎn)換之后,排序器的計數(shù)器減1。位6~0是排序器SEQ2和SEQ1的狀態(tài)指示。
305.狀態(tài)和標志寄存器:ADCST位15~8,保留位。位7,EOSBUF2:SEQ2的排序緩沖器結(jié)束位。位6,EOSBUF1:SEQ1的排序緩沖器結(jié)束位。位5,INTSEQ2CLR:SEQ2中斷清零位。讀出值為0。寫入1清零。位4,INTSEQ1CLR:SEQ1中斷清零位。讀出值為0。寫入1清零。31位3,SEQ2BSY:SEQ2忙狀態(tài)位。1:SEQ2忙。位2,SEQ1BSY:SEQ1忙狀態(tài)位?!:SEQ1忙。位1,INTSEQ2:SEQ2中斷標志位,寫入操作無效。在中斷模式0(ADCTRL2.2=0)下,該位在每一個SEQ2排序結(jié)束時置1;在中斷模式1(ADCTRL2.2=1)下,如果EOSBUF2=1,該位在SEQ2排序結(jié)束后置1。位0,INTSEQ1:SEQ1中斷標志位,寫入操作無效。在中斷模式0(ADCTRL2.10=0)下,該位在每一個SEQ1排序結(jié)束時置1;在中斷模式1(ADCTRL2.10=1)下,如果EOSBUF1=1,該位在SEQ1排序結(jié)束后置1。326.ADC輸入通道選擇寄存器:CHSELSEQ1~4每4位的CONVnn選擇16路模擬輸入通道中的一個作為自動排序的轉(zhuǎn)換通道。337.ADC轉(zhuǎn)換結(jié)果緩沖寄存器:RESULT0~15寄存器RESULTn中10位轉(zhuǎn)換結(jié)果是左對齊的,即存放在16位寄存器的高10位。348.ADC校準結(jié)果寄存器LF240xDSP具有校準模式,CALIBRATION寄存器可用,而LF240xADSP沒有標定和自測試特性,CALIBRATION寄存器不可用。校準模式下可以計算ADC模塊的零、中值和最大值的偏置誤差。該偏置誤差的二進制補碼被載入CALBRATION寄存器后,ADC硬件自動將偏置誤差加到轉(zhuǎn)換值上。35校準結(jié)果寄存器的格式如下:校準結(jié)果寄存器中10位的校準值也是左對齊的,即存放在16位寄存器的高10位。365.6ADC的C語言編程實例
例,A/D轉(zhuǎn)換程序。采用雙排序器模式,排序器SEQ1對兩個模擬輸入通道ADCIN0和ADCIN1的幅度在0~3.3V范圍的電壓信號進行自動轉(zhuǎn)換。排序器采用定時器T1的周期中斷標志作為觸發(fā)啟動轉(zhuǎn)換信號。讀取模擬量的轉(zhuǎn)換結(jié)果并存儲到兩個長度為256的數(shù)組nADCIn0[]和nADCIn1[]中。
37#include“f2407_c.h” //2407頭文件#defineADCN256 //數(shù)組長度voidinterruptgptimer1(); /*T1中斷服務(wù)程序,設(shè)置保存標志*/voidADT1Init(void); /*初始化ADC和T1*/unsignedint
uWork,nADCount; //全局變量定義int
nNewConvert; //轉(zhuǎn)換次數(shù)計數(shù)unsignedintnADCIn0[ADCN]; //通道ADCIN0轉(zhuǎn)換結(jié)果數(shù)組unsignedintnADCIn1[ADCN]; //通道ADCIN1轉(zhuǎn)換結(jié)果數(shù)組main() //主函數(shù){nNewConvert=0;WDCR=0x6f; /*關(guān)閉看門狗*/SCSR1=0x02fe; /*設(shè)置時鐘頻率40MHz,2倍頻,打開所有外設(shè)*/38WSGR&=0xfe3f; /*設(shè)置I/O等待狀態(tài)為0*/ADT1Init(); /*初始化ADC和T1*/IMR=2; /*使能定時器周期中斷,INT2*/IFR=0xffff; /*清除中斷標志*/asm(“CLRCINTM”); /*開中斷*/while(1){if(nNewConvert) /*若標志為1,則轉(zhuǎn)換*/{nNewConvert=0; /*清轉(zhuǎn)換標志*/uWork=RESULT0; /*取ADCIN0通道轉(zhuǎn)換結(jié)果RESULT0*/uWork>>6; /*移位去掉低6位*/nADCIn0[nADCount]=uWork; /*保存結(jié)果*/ uWork=RESULT1; /*取ADCIN1通道轉(zhuǎn)換結(jié)果RESULT1*/uWork>>6; /*移位去掉低6位*/nADCIn0[nADCount]=uWork; /*保存結(jié)果*/ if(nADCount>=ADCN)
nADCount=0; /*緩
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024專業(yè)餐飲原料采購協(xié)議范例
- 2024專門物業(yè)抵押貸款協(xié)議范本
- 城市公園景觀欄桿2024安裝工程協(xié)議
- 2024年店鋪技術(shù)支持人員勞動協(xié)議
- 2024技術(shù)服務(wù)協(xié)議案例
- DB11∕T 1720-2020 城市雨水管渠流量監(jiān)測基本要求
- 2024年批量瀝青訂貨協(xié)議范例
- 2024年泳池施工項目協(xié)議模板
- 2024年度混凝土擋土墻施工協(xié)議
- 2024年設(shè)備購銷協(xié)議條款
- 醫(yī)學美容技術(shù)專業(yè)《美容美體技術(shù)》課程標準
- 美沙酮門診管理新規(guī)制度
- 2024年保安員上崗證初級保安員考試題庫
- DL-T5159-2012電力工程物探技術(shù)規(guī)程
- 血液病-惡性腫瘤患者侵襲性真菌病的診斷標準與治療原則(第六次修訂版)解讀
- 田間混凝土道路工程施工方案
- 國開2024《人文英語4》邊學邊練參考答案
- 華為IPD流程各階段370個活動詳解
- 中考語文復習專題7-口語交際
- 《高速公路瀝青路面施工技術(shù)規(guī)范》
- 第二單元大單元教學設(shè)計 2023-2024學年統(tǒng)編版高中語文必修上冊
評論
0/150
提交評論