版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第12章
模擬數(shù)字轉(zhuǎn)換器作者:黃克亞2025年5月本章概要CONTENTSADC原理、參數(shù)及類型STM32F103的ADC庫(kù)函數(shù)STM32F103的ADC工作原理4通道模擬信號(hào)采集與顯示項(xiàng)目12.1ADC概述模擬數(shù)字轉(zhuǎn)換器(Analog-to-DigitalConverterADC),簡(jiǎn)稱模數(shù)轉(zhuǎn)換器,顧名思義,是將一種連續(xù)變化的模擬信號(hào)轉(zhuǎn)換為離散的數(shù)字信號(hào)的電子器件。有了ADC,微控制器就如同多了一雙觀察模擬世界的眼睛,增加了模擬輸入功能。12.1ADC概述12.1.1ADC基本原理ADC進(jìn)行模數(shù)轉(zhuǎn)換一般包含三個(gè)關(guān)鍵步驟:采樣、量化、編碼。本節(jié)以正弦模擬信號(hào)為例講解ADC轉(zhuǎn)換過(guò)程。1.采樣采樣是在間隔為T的T、2T、3T、…時(shí)刻抽取被測(cè)模擬信號(hào)幅值,相鄰兩個(gè)采樣時(shí)刻之間的間隔T也被稱為采樣周期。12.1ADC概述12.1.1ADC基本原理2.量化把采樣后每個(gè)脈沖的幅度進(jìn)行離散化處理,得到被CPU處理的離散數(shù)值,這個(gè)過(guò)程就稱為量化。為了實(shí)現(xiàn)離散化處理,用指定的最小單位將縱軸劃分為若干個(gè)(通常是2n個(gè))區(qū)間,然后確定每個(gè)采樣脈沖的幅度落在哪個(gè)區(qū)間內(nèi),即把每個(gè)時(shí)刻的采樣電壓表示為指定的最小單位的整數(shù)倍。3.編碼把量化的結(jié)果二進(jìn)制表示出來(lái)稱為編碼。而且,一個(gè)n位量化的結(jié)果值恰好用一個(gè)n位二進(jìn)制數(shù)表示。這個(gè)n位二進(jìn)制數(shù)就是ADC轉(zhuǎn)換完成后的輸出結(jié)果。12.1ADC概述12.1.2ADC性能參數(shù)量程(FullScaleRange,F(xiàn)SR)是指ADC所能轉(zhuǎn)換的模擬輸入電壓的范圍,分為單極性和雙極性兩種類型。1.量程分辨率(resolution)是指ADC所能分辨的最小模擬輸入量,反映ADC對(duì)輸入信號(hào)微小變化的響應(yīng)能力。2.分辨率精度(accuracy)是指對(duì)于ADC的數(shù)字輸出(二進(jìn)制代碼),其實(shí)際需要的模擬輸入值與理論上要求的模擬輸入值之差。3.精度轉(zhuǎn)換時(shí)間(conversiontime)是ADC完成一次A/D轉(zhuǎn)換所需要的時(shí)間,是指從啟動(dòng)ADC開(kāi)始到獲得相應(yīng)數(shù)據(jù)所需要的總時(shí)間。4.轉(zhuǎn)換時(shí)間12.1ADC概述12.1.3ADC主要類型逐次逼近式屬直接式A/D轉(zhuǎn)換器,其原理可理解為將輸入模擬量逐次與UREF/2、UREF/4、UREF/8、…、UREF/2N-1比較,模擬量大于比較值取1(并減去比較值),否則取0。優(yōu)點(diǎn)精度高,速度較快,價(jià)格適中,是目前種類最多、應(yīng)用最廣典型芯片有ADC08091.逐次逼近式雙積分式是一種間接式A/D轉(zhuǎn)換器,其原理是將輸入模擬量和基準(zhǔn)量通過(guò)積分器積分,轉(zhuǎn)換為時(shí)間,再對(duì)時(shí)間計(jì)數(shù),計(jì)數(shù)值即為數(shù)字量。優(yōu)點(diǎn)是轉(zhuǎn)換精度高,缺點(diǎn)是轉(zhuǎn)換時(shí)間較長(zhǎng),一般要40~50ms,使用于轉(zhuǎn)換速度不快的場(chǎng)合。典型芯片有MC14433和ICL7109。2.雙積分式V/F變換器也是一種間接式A/D轉(zhuǎn)換器,其原理是將模擬量轉(zhuǎn)換為頻率信號(hào),再對(duì)頻率信號(hào)計(jì)數(shù),轉(zhuǎn)換為數(shù)字量。其特點(diǎn)是轉(zhuǎn)換精度高,抗干擾性強(qiáng),便于長(zhǎng)距離傳送,廉價(jià),但轉(zhuǎn)換速度偏低。3.V/F變換式12.2STM32F103的
ADC工作原理STM32F103微控制器內(nèi)部集成1~3個(gè)12位逐次逼近型模擬數(shù)字轉(zhuǎn)換器。它有多達(dá)18個(gè)通道,可測(cè)量16個(gè)外部和2個(gè)內(nèi)部信號(hào)源。12.2STM32F103的ADC工作原理12.2.1主要特征12位分辨率轉(zhuǎn)換結(jié)束、注入轉(zhuǎn)換結(jié)束和發(fā)生模擬看門狗事件時(shí)產(chǎn)生中斷單次和連續(xù)轉(zhuǎn)換模式從通道0到通道n的自動(dòng)掃描模式自校準(zhǔn)帶內(nèi)嵌數(shù)據(jù)一致性的數(shù)據(jù)對(duì)齊采樣間隔可以按通道分別編程規(guī)則轉(zhuǎn)換和注入轉(zhuǎn)換均有外部觸發(fā)選項(xiàng)間斷模式雙重模式(帶2個(gè)或以上ADC的器件)ADC轉(zhuǎn)換時(shí)間:時(shí)鐘為56MHz時(shí),ADC最短轉(zhuǎn)換時(shí)間為1μsADC供電要求:2.4V到3.6VADC輸入范圍:VREF-≤VIN≤VREF+規(guī)則通道轉(zhuǎn)換期間有DMA請(qǐng)求產(chǎn)生。12.2STM32F103的ADC工作原理12.2.2內(nèi)部結(jié)構(gòu)其核心為模擬至數(shù)字轉(zhuǎn)換器,它由軟件或硬件觸發(fā),在ADC時(shí)鐘ADCCLK的驅(qū)動(dòng)下對(duì)規(guī)則通道或注入通道中的模擬信號(hào)進(jìn)行采樣、量化和編碼。ADC的12位轉(zhuǎn)換結(jié)果可以以左對(duì)齊或右對(duì)齊的方式存放在16位數(shù)據(jù)寄存器當(dāng)中。根據(jù)轉(zhuǎn)換通道不同,數(shù)據(jù)寄存器可以分為規(guī)則通道數(shù)據(jù)寄存器(1)和注入通道數(shù)據(jù)寄存器(4)。12.2STM32F103的ADC工作原理12.2.2內(nèi)部結(jié)構(gòu)模擬數(shù)字轉(zhuǎn)換器引腳說(shuō)明:名稱信號(hào)類型注解VREF+輸入,模擬參考正極2.4V≤VREF+≤VDDAVDDA輸入,模擬電源2.4V≤VDDA≤VDD(3.6V)VREF-輸入,模擬參考負(fù)極VREF-=VSSAVSSA輸入,模擬電源地等效于VSS的模擬電源地ADCx_IN[15:0]模擬輸入信號(hào)16個(gè)模擬輸入通道12.2STM32F103的ADC工作原理12.2.3通道及分組通道ADC1ADC2ADC3通道0PA0PA0PA0通道1PA1PA1PA1通道2PA2PA2PA2通道3PA3PA3PA3通道4PA4PA4PF6通道5PA5PA5PF7通道6PA6PA6PF8通道7PA7PA7PF9通道8PB0PB0PF10通道9PB1PB1
通道10PC0PC0PC0通道11PC1PC1PC1通道12PC2PC2PC2通道13PC3PC3PC3通道14PC4PC4
通道15PC5PC5
通道16溫度傳感器
通道17內(nèi)部參考電壓
STM32F103微控制器最多有18個(gè)模擬輸入通道,可測(cè)量16個(gè)外部模擬信號(hào)和2個(gè)內(nèi)部信號(hào)源,其ADC通道分配關(guān)系如表所示STM32F103微控制器的ADC根據(jù)優(yōu)先級(jí)把所有通道分為兩個(gè)組:規(guī)則組和注入組。在任意多個(gè)通道上以任意順序進(jìn)行的一系列轉(zhuǎn)換構(gòu)成成組轉(zhuǎn)換。12.2STM32F103的ADC工作原理12.2.3通道及分組01劃分到規(guī)則通道組(groupofregularchannel)中的通道稱為規(guī)則通道。一般情況下,如果僅是一般模擬輸入信號(hào)的轉(zhuǎn)換,那么將該模擬輸入信號(hào)的通道設(shè)置為規(guī)則通道即可。規(guī)則通道組02劃分到注入通道組(groupofinjectedchannel)中的通道稱為注入通道。如果需要轉(zhuǎn)換的模擬輸入信號(hào)的優(yōu)先級(jí)較其它的模擬輸入信號(hào)要高,那么可以將該模擬輸入信號(hào)的通道歸入注入通道組中。注入通道03規(guī)則通道相當(dāng)于正常運(yùn)行的程序,而注入通道呢,就相當(dāng)于中斷。當(dāng)主程序正常執(zhí)行的時(shí)候,中斷是可以打斷其執(zhí)行的。同這個(gè)類似,注入通道的轉(zhuǎn)換可以打斷規(guī)則通道的轉(zhuǎn)換,在注入通道被轉(zhuǎn)換完成之后,規(guī)則通道才得以繼續(xù)轉(zhuǎn)換。通道組劃分12.2STM32F103的ADC工作原理12.2.4時(shí)序圖
ADC在開(kāi)始精確轉(zhuǎn)換前需要一個(gè)穩(wěn)定時(shí)間tSTAB。在開(kāi)始ADC轉(zhuǎn)換和14個(gè)時(shí)鐘周期后,EOC標(biāo)志被設(shè)置,16位ADC數(shù)據(jù)寄存器包含轉(zhuǎn)換的結(jié)果。12.2STM32F103的ADC工作原理12.2.5數(shù)據(jù)對(duì)齊ADC_CR2寄存器中的ALIGN位選擇轉(zhuǎn)換后數(shù)據(jù)儲(chǔ)存的對(duì)齊方式。數(shù)據(jù)可以左對(duì)齊或右對(duì)齊,如圖所示。注入組通道轉(zhuǎn)換的數(shù)據(jù)值已經(jīng)減去了在ADC_JOFRx寄存器中定義的偏移量,因此結(jié)果可以是一個(gè)負(fù)值。SEXT位是擴(kuò)展的符號(hào)值。對(duì)于規(guī)則組通道,不需減去偏移值,因此只有12個(gè)位有效轉(zhuǎn)換結(jié)果數(shù)據(jù)右對(duì)齊轉(zhuǎn)換結(jié)果數(shù)據(jù)左對(duì)齊12.2STM32F103的ADC工作原理12.2.6校準(zhǔn)ADC有一個(gè)內(nèi)置自校準(zhǔn)模式。校準(zhǔn)可大幅減小因內(nèi)部電容器組的變化而造成的準(zhǔn)精度誤差。在校準(zhǔn)期間,在每個(gè)電容器上都會(huì)計(jì)算出一個(gè)誤差修正碼(數(shù)字值),這個(gè)碼用于消除在隨后的轉(zhuǎn)換中每個(gè)電容器上產(chǎn)生的誤差。通過(guò)設(shè)置ADC_CR2寄存器的CAL位啟動(dòng)校準(zhǔn)。一旦校準(zhǔn)結(jié)束,CAL位被硬件復(fù)位,可以開(kāi)始正常轉(zhuǎn)換。建議在上電時(shí)執(zhí)行一次ADC校準(zhǔn)。校準(zhǔn)階段結(jié)束后,校準(zhǔn)碼儲(chǔ)存在ADC_DR中。STM32F103微控制器ADC轉(zhuǎn)換時(shí)間TCONV=采樣時(shí)間+量化編碼時(shí)間,其中量化編碼時(shí)間固定為12.5個(gè)ADC時(shí)鐘周期。采樣周期數(shù)目可以通過(guò)ADC_SMPR1和ADC_SMPR2寄存器中的SMP[2:0]位更改。12.2.7轉(zhuǎn)換時(shí)間例如:當(dāng)ADCCLK=14MHz,采樣時(shí)間為1.5周期TCONV=1.5+12.5=14周期=1μs12.2STM32F103的ADC工作原理12.2.8轉(zhuǎn)換模式1.單次轉(zhuǎn)換模式:
ADC只執(zhí)行一次轉(zhuǎn)換如果一個(gè)規(guī)則通道被轉(zhuǎn)換:轉(zhuǎn)換數(shù)據(jù)被儲(chǔ)存在16位ADC_DR寄存器中,EOC(轉(zhuǎn)換結(jié)束)標(biāo)志被設(shè)置,如果設(shè)置了EOCIE,則產(chǎn)生中斷。如果一個(gè)注入通道被轉(zhuǎn)換:轉(zhuǎn)換數(shù)據(jù)被儲(chǔ)存在16位的ADC_DRJ1寄存器中,JEOC(注入轉(zhuǎn)換結(jié)束)標(biāo)志被設(shè)置,如果設(shè)置了JEOCIE位,則產(chǎn)生中斷。2.連續(xù)轉(zhuǎn)換模式:前面ADC轉(zhuǎn)換一結(jié)束馬上就啟動(dòng)另一次轉(zhuǎn)換如果一個(gè)規(guī)則通道被轉(zhuǎn)換:轉(zhuǎn)換數(shù)據(jù)被儲(chǔ)存在16位的ADC_DR寄存器中,EOC(轉(zhuǎn)換結(jié)束)標(biāo)志被設(shè)置,如果設(shè)置了EOCIE,則產(chǎn)生中斷。如果一個(gè)注入通道被轉(zhuǎn)換:轉(zhuǎn)換數(shù)據(jù)被儲(chǔ)存在16位的ADC_DRJ1寄存器中,JEOC(注入轉(zhuǎn)換結(jié)束)標(biāo)志被設(shè)置,如果設(shè)置了JEOCIE位,則產(chǎn)生中斷。3.掃描模式:此模式用來(lái)掃描一組模擬通道掃描模式可通過(guò)設(shè)置ADC_CR1寄存器的SCAN位來(lái)選擇。一旦這個(gè)位被設(shè)置,ADC掃描所有被ADC_SQRX寄存器(對(duì)規(guī)則通道)或ADC_JSQR(對(duì)注入通道)選中的所有通道。12.2STM32F103的ADC工作原理12.2.8轉(zhuǎn)換模式4.間斷模式規(guī)則組:通過(guò)設(shè)置ADC_CR1寄存器上的DISCEN位激活當(dāng)以間斷模式轉(zhuǎn)換一個(gè)規(guī)則組時(shí),轉(zhuǎn)換序列結(jié)束后不自動(dòng)從頭開(kāi)始。當(dāng)所有子組被轉(zhuǎn)換完成,下一次觸發(fā)啟動(dòng)第一個(gè)子組的轉(zhuǎn)換。注入組:通過(guò)設(shè)置ADC_CR1寄存器的JDISCEN位激活當(dāng)完成所有注入通道轉(zhuǎn)換,下個(gè)觸發(fā)啟動(dòng)第1個(gè)注入通道的轉(zhuǎn)換。不能同時(shí)使用自動(dòng)注入和間斷模式。必須避免同時(shí)為規(guī)則和注入組設(shè)置間斷模式。間斷模式只能作用于一組轉(zhuǎn)換12.2STM32F103的ADC工作原理12.2.9外部觸發(fā)轉(zhuǎn)換轉(zhuǎn)換可以由外部事件觸發(fā)(例如定時(shí)器捕獲,EXTI線)。如果設(shè)置了EXTTRIG控制位,則外部事件就能夠觸發(fā)轉(zhuǎn)換。EXTSEL[2:0]和JEXTSEL2:0]控制位允許應(yīng)用程序選擇8個(gè)可能的事件中的某一個(gè),可以觸發(fā)規(guī)則和注入組的采樣。觸發(fā)源類型EXTSEL[2:0]TIM1_CC1事件來(lái)自片上定時(shí)器的內(nèi)部信號(hào)000TIM1_CC2事件001TIM1_CC3事件010TIM2_CC2事件011TIM3_TRGO事件100TIM4_CC4事件101EXTI線11/TIM8_TRGO外部引腳/來(lái)自片上定時(shí)器的內(nèi)部信號(hào)110SWSTART軟件控制位111注意:當(dāng)外部觸發(fā)信號(hào)被選為ADC規(guī)則或注入轉(zhuǎn)換時(shí),只有它的上升沿可以啟動(dòng)轉(zhuǎn)換。12.2STM32F103的ADC工作原理12.2.10中斷和DMA請(qǐng)求1.中斷規(guī)則組和注入組轉(zhuǎn)換結(jié)束時(shí)能產(chǎn)生中斷,當(dāng)模擬看門狗狀態(tài)位被設(shè)置時(shí)也能產(chǎn)生中斷。它們都有獨(dú)立的中斷使能位。2.DMA因?yàn)橐?guī)則通道轉(zhuǎn)換的值儲(chǔ)存在一個(gè)僅有的數(shù)據(jù)寄存器中,所以當(dāng)轉(zhuǎn)換多個(gè)規(guī)則通道時(shí)需要使用DMA,這可以避免丟失已經(jīng)存儲(chǔ)在ADC_DR寄存器中的數(shù)據(jù)。相關(guān)內(nèi)容和示例將在下一章中講解。中斷事件事件標(biāo)志使能控制位規(guī)則組轉(zhuǎn)換結(jié)束EOCEOCIE注入組轉(zhuǎn)換結(jié)束JEOCJEOCIE設(shè)置了模擬看門狗狀態(tài)位AWDAWDIE12.3ADC相關(guān)庫(kù)函數(shù)本節(jié)介紹ADC相關(guān)庫(kù)函數(shù)12.3ADC相關(guān)庫(kù)函數(shù)12.3.1函數(shù)ADC_DeInit函數(shù)名ADC_DeInit函數(shù)原形voidADC_DeInit(ADC_TypeDef*ADCx)功能描述將外設(shè)ADCx的全部寄存器重設(shè)為缺省值輸入?yún)?shù)1ADCx:x可以是1、2或3來(lái)選擇ADC外設(shè)輸出參數(shù)2無(wú)返回值無(wú)先決條件無(wú)被調(diào)用函數(shù)RCC_APB2PeriphClockCmd()例:/*ResetsADC2*/ADC_DeInit(ADC2);12.3ADC相關(guān)庫(kù)函數(shù)12.3.2函數(shù)ADC_Init函數(shù)名ADC_Init函數(shù)原形voidADC_Init(ADC_TypeDef*ADCx,ADC_InitTypeDef*ADC_InitStruct)功能描述根據(jù)ADC_InitStruct中指定的參數(shù)初始化外設(shè)ADCx的寄存器輸入?yún)?shù)1ADCx:x可以是1、2或3來(lái)選擇ADC外設(shè)輸入?yún)?shù)2ADC_InitStruct:指向結(jié)構(gòu)ADC_InitTypeDef的指針,包含了指定外設(shè)ADC的配置信息輸出參數(shù)無(wú)返回值無(wú)先決條件無(wú)被調(diào)用函數(shù)無(wú)ADC_Mode:
設(shè)置ADC工作在獨(dú)立或者雙ADC模式ADC_Mode描述ADC_Mode_IndependentADC1和ADC2工作在獨(dú)立模式ADC_Mode_RegInjecSimultADC1和ADC2工作在同步規(guī)則和同步注入模式ADC_Mode_RegSimult_AlterTrigADC1和ADC2工作在同步規(guī)則模式和交替觸發(fā)模式ADC_Mode_InjecSimult_FastInterlADC1和ADC2工作在同步規(guī)則模式和快速交替模式ADC_Mode_InjecSimult_SlowInterlADC1和ADC2工作在同步注入模式和慢速交替模式ADC_Mode_InjecSimultADC1和ADC2工作在同步注入模式ADC_Mode_RegSimultADC1和ADC2工作在同步規(guī)則模式ADC_Mode_FastInterlADC1和ADC2工作在快速交替模式ADC_Mode_SlowInterlADC1和ADC2工作在慢速交替模式ADC_Mode_AlterTrigADC1和ADC2工作在交替觸發(fā)模式12.3ADC相關(guān)庫(kù)函數(shù)12.3.2函數(shù)ADC_InitADC_ScanConvMode:規(guī)定了模數(shù)轉(zhuǎn)換工作在掃描模式(多通道)還是單次(單通道)模式。可以設(shè)置這個(gè)參數(shù)為ENABLE或者DISABLE。ADC_ContinuousConvMode:規(guī)定了模數(shù)轉(zhuǎn)換工作在連續(xù)還是單次模式。可以設(shè)置這個(gè)參數(shù)為ENABLE或者DISABLE。ADC_ExternalTrigConv:
定義了使用外部觸發(fā)來(lái)啟動(dòng)規(guī)則通道的模數(shù)轉(zhuǎn)換,ADC_ExternalTrigConv描述ADC_ExternalTrigConv_T1_CC1選擇定時(shí)器1的捕獲比較1作為轉(zhuǎn)換外部觸發(fā)ADC_ExternalTrigConv_T1_CC2選擇定時(shí)器1的捕獲比較2作為轉(zhuǎn)換外部觸發(fā)ADC_ExternalTrigConv_T1_CC3選擇定時(shí)器1的捕獲比較3作為轉(zhuǎn)換外部觸發(fā)ADC_ExternalTrigConv_T2_CC2選擇定時(shí)器2的捕獲比較2作為轉(zhuǎn)換外部觸發(fā)ADC_ExternalTrigConv_T3_TRGO選擇定時(shí)器3的TRGO作為轉(zhuǎn)換外部觸發(fā)ADC_ExternalTrigConv_T4_CC4選擇定時(shí)器4的捕獲比較4作為轉(zhuǎn)換外部觸發(fā)ADC_ExternalTrigConv_Ext_IT11_TIM8_TRGO選擇外部中斷線11或TIM8的TRGO作為轉(zhuǎn)換外部觸發(fā)ADC_ExternalTrigConv_None轉(zhuǎn)換由軟件而不是外部觸發(fā)啟動(dòng)ADC_DataAlign:
規(guī)定了ADC數(shù)據(jù)向左邊對(duì)齊還是向右邊對(duì)齊。ADC_DataAlign
描述ADC_DataAlign_RightADC數(shù)據(jù)右對(duì)齊ADC_DataAlign_LeftADC數(shù)據(jù)左對(duì)齊12.3ADC相關(guān)庫(kù)函數(shù)12.3.2函數(shù)ADC_InitADC_NbreOfChannel:規(guī)定了順序進(jìn)行規(guī)則轉(zhuǎn)換的ADC通道的數(shù)目。這個(gè)數(shù)目的取值范圍是1到16。例:/*InitializetheADC1accordingtotheADC_InitStructuremembers*/ADC_InitTypeDefADC_InitStructure;ADC_InitStructure.ADC_Mode=ADC_Mode_Independent;ADC_InitStructure.ADC_ScanConvMode=ENABLE;ADC_InitStructure.ADC_ContinuousConvMode=DISABLE;ADC_InitStructure.ADC_ExternalTrigConv=ADC_ExternalTrigConv_Ext_IT11_TIM8_TRGO;ADC_InitStructure.ADC_DataAlign=ADC_DataAlign_Right;ADC_InitStructure.ADC_NbrOfChannel=16;ADC_Init(ADC1,&ADC_InitStructure);12.3ADC相關(guān)庫(kù)函數(shù)12.3.3函數(shù)ADC_RegularChannelConfig函數(shù)名ADC_RegularChannelConfig函數(shù)原形voidADC_RegularChannelConfig(ADC_TypeDef*ADCx,u8ADC_Channel,u8Rank,u8ADC_SampleTime)功能描述設(shè)置指定ADC的規(guī)則組通道,設(shè)置它們的轉(zhuǎn)化順序和采樣時(shí)間輸入?yún)?shù)1ADCx:x可以是1、2或3來(lái)選擇ADC外設(shè)輸入?yún)?shù)2ADC_Channel:被設(shè)置的ADC通道輸入?yún)?shù)3Rank:規(guī)則組采樣順序。取值范圍1到16。輸入?yún)?shù)4ADC_SampleTime:指定ADC通道的采樣時(shí)間值參閱章節(jié)ADC_SampleTime查閱更多該參數(shù)允許取值范圍輸出參數(shù)無(wú)返回值無(wú)先決條件無(wú)被調(diào)用函數(shù)無(wú)例:/*ConfiguresADC1Channel2as:firstconvertedchannelwithan7.5cyclessampletime*/ADC_RegularChannelConfig(ADC1,ADC_Channel_2,1,ADC_SampleTime_7Cycles5);/*ConfiguresADC1Channel8as:secondconvertedchannelwithan1.5cyclessampletime*/ADC_RegularChannelConfig(ADC1,ADC_Channel_8,2,ADC_SampleTime_1Cycles5);12.3ADC相關(guān)庫(kù)函數(shù)12.3.3函數(shù)ADC_RegularChannelConfigADC_Channel:參數(shù)ADC_Channel指定了通過(guò)調(diào)用函數(shù)ADC_RegularChannelConfig來(lái)設(shè)置的ADC通道。ADC_Channel描述ADC_Channel描述ADC_Channel_0選擇ADC通道0ADC_Channel_9選擇ADC通道9ADC_Channel_1選擇ADC通道1ADC_Channel_10選擇ADC通道10ADC_Channel_2選擇ADC通道2ADC_Channel_11選擇ADC通道11ADC_Channel_3選擇ADC通道3ADC_Channel_12選擇ADC通道12ADC_Channel_4選擇ADC通道4ADC_Channel_13選擇ADC通道13ADC_Channel_5選擇ADC通道5ADC_Channel_14選擇ADC通道14ADC_Channel_6選擇ADC通道6ADC_Channel_15選擇ADC通道15ADC_Channel_7選擇ADC通道7ADC_Channel_16選擇ADC通道16ADC_Channel_8選擇ADC通道8ADC_Channel_17選擇ADC通道17ADC_SampleTime:設(shè)定了選中通道的ADC采樣時(shí)間ADC_SampleTime描述ADC_SampleTime_1Cycles5采樣時(shí)間為1.5周期ADC_SampleTime_7Cycles5采樣時(shí)間為7.5周期ADC_SampleTime_13Cycles5采樣時(shí)間為13.5周期ADC_SampleTime_28Cycles5采樣時(shí)間為28.5周期ADC_SampleTime_41Cycles5采樣時(shí)間為41.5周期ADC_SampleTime_55Cycles5采樣時(shí)間為55.5周期ADC_SampleTime_71Cycles5采樣時(shí)間為71.5周期ADC_SampleTime_239Cycles5采樣時(shí)間為239.5周期12.3ADC相關(guān)庫(kù)函數(shù)12.3.4函數(shù)ADC_InjectedChannleConfig函數(shù)名ADC_InjectedChannleConfig函數(shù)原形voidADC_InjectedChannelConfig(ADC_TypeDef*ADCx,u8ADC_Channel,u8Rank,u8ADC_SampleTime)功能描述設(shè)置指定ADC的注入組通道,設(shè)置它們的轉(zhuǎn)化順序和采樣時(shí)間輸入?yún)?shù)1ADCx:x可以是1、2或3來(lái)選擇ADC外設(shè)輸入?yún)?shù)2ADC_Channel:被設(shè)置的ADC通道輸入?yún)?shù)3Rank:規(guī)則組采樣順序。取值范圍1到4。輸入?yún)?shù)4ADC_SampleTime:指定ADC通道的采樣時(shí)間值參閱章節(jié)ADC_SampleTime查閱更多該參數(shù)允許取值范圍輸出參數(shù)無(wú)返回值無(wú)先決條件之前必須調(diào)用函數(shù)ADC_InjectedSequencerLengthConfig來(lái)確定注入轉(zhuǎn)換通道的數(shù)目。特別是在通道數(shù)目小于4的情況下,來(lái)正確配置每個(gè)注入通道的轉(zhuǎn)化順序。被調(diào)用函數(shù)無(wú)ADC_Channel:參數(shù)ADC_Channel指定了需設(shè)置的ADC通道。ADC_SampleTime:ADC_SampleTime設(shè)定了選中通道的ADC采樣時(shí)間。例:ADC_InjectedChannelConfig(ADC1,ADC_Channel_12,2,ADC_SampleTime_28Cycles5);12.3ADC相關(guān)庫(kù)函數(shù)12.3.5函數(shù)ADC_Cmd函數(shù)名ADC_Cmd函數(shù)原形voidADC_Cmd(ADC_TypeDef*ADCx,FunctionalStateNewState)功能描述使能或者失能指定的ADC輸入?yún)?shù)1ADCx:x可以是1、2或3來(lái)選擇ADC外設(shè)輸入?yún)?shù)2NewState:外設(shè)ADCx的新?tīng)顟B(tài)這個(gè)參數(shù)可以取:ENABLE或者DISABLE輸出參數(shù)無(wú)返回值無(wú)先決條件無(wú)被調(diào)用函數(shù)無(wú)12.3.6函數(shù)ADC_ResetCalibration函數(shù)名ADC_ResetCalibration函數(shù)原形voidADC_ResetCalibration(ADC_TypeDef*ADCx)功能描述重置指定的ADC的校準(zhǔn)寄存器輸入?yún)?shù)ADCx:x可以是1、2或3來(lái)選擇ADC外設(shè)輸出參數(shù)無(wú)返回值無(wú)先決條件無(wú)被調(diào)用函數(shù)無(wú)例:/*EnableADC1*/ADC_Cmd(ADC1,ENABLE);例:/*ResettheADC1Calibrationregisters*/ADC_ResetCalibration(ADC1);12.3ADC相關(guān)庫(kù)函數(shù)12.3.7函數(shù)ADC_GetResetCalibrationStatus函數(shù)名ADC_GetResetCalibrationStatus函數(shù)原形FlagStatusADC_GetResetCalibrationStatus(ADC_TypeDef*ADCx)功能描述獲取ADC重置校準(zhǔn)寄存器的狀態(tài)輸入?yún)?shù)ADCx:x可以是1、2或3來(lái)選擇ADC外設(shè)輸出參數(shù)無(wú)返回值A(chǔ)DC重置校準(zhǔn)寄存器的新?tīng)顟B(tài)(SET或者RESET)先決條件無(wú)被調(diào)用函數(shù)無(wú)12.3.8函數(shù)ADC_StartCalibration函數(shù)名ADC_StartCalibration函數(shù)原形voidADC_StartCalibration(ADC_TypeDef*ADCx)功能描述開(kāi)始指定ADC的校準(zhǔn)狀態(tài)輸入?yún)?shù)ADCx:x可以是1、2或3來(lái)選擇ADC外設(shè)輸出參數(shù)無(wú)返回值無(wú)先決條件無(wú)被調(diào)用函數(shù)無(wú)例:/*GettheADC2resetcalibrationregistersstatus*/FlagStatusStatus;Status=ADC_GetResetCalibrationStatus(ADC2);例:/*StarttheADC2Calibration*/ADC_StartCalibration(ADC2);12.3ADC相關(guān)庫(kù)函數(shù)12.3.9函數(shù)ADC_GetCalibrationStatus函數(shù)名ADC_GetCalibrationStatus函數(shù)原形FlagStatusADC_GetCalibrationStatus(ADC_TypeDef*ADCx)功能描述獲取指定ADC的校準(zhǔn)程序輸入?yún)?shù)ADCx:x可以是1、2或3來(lái)選擇ADC外設(shè)輸出參數(shù)無(wú)返回值A(chǔ)DC校準(zhǔn)的新?tīng)顟B(tài)(SET或者RESET)先決條件無(wú)被調(diào)用函數(shù)無(wú)函數(shù)名ADC_GetCalibrationStatus12.3.10函數(shù)ADC_SoftwareStartConvCmd函數(shù)名ADC_SoftwareStartConvCmd函數(shù)原形voidADC_SoftwareStartConvCmd(ADC_TypeDef*ADCx,FunctionalStateNewState)功能描述使能或者失能指定的ADC的軟件轉(zhuǎn)換啟動(dòng)功能輸入?yún)?shù)1ADCx:x可以是1、2或3來(lái)選擇ADC外設(shè)輸入?yún)?shù)2NewState:指定ADC的軟件轉(zhuǎn)換啟動(dòng)新?tīng)顟B(tài)
這個(gè)參數(shù)可以取:ENABLE或者DISABLE輸出參數(shù)無(wú)返回值無(wú)先決條件無(wú)被調(diào)用函數(shù)無(wú)例:/*GettheADC2calibrationstatus*/FlagStatusStatus;Status=ADC_GetCalibrationStatus(ADC2);例:/*StartbysoftwaretheADC1Conversion*/ADC_SoftwareStartConvCmd(ADC1,ENABLE);12.3ADC相關(guān)庫(kù)函數(shù)12.3.11函數(shù)ADC_GetConversionValue函數(shù)名ADC_GetConversionValue函數(shù)原形u16ADC_GetConversionValue(ADC_TypeDef*ADCx)功能描述返回最近一次ADCx規(guī)則組的轉(zhuǎn)換結(jié)果輸入?yún)?shù)ADCx:x可以是1、2或3來(lái)選擇ADC外設(shè)輸出參數(shù)無(wú)返回值轉(zhuǎn)換結(jié)果先決條件無(wú)被調(diào)用函數(shù)無(wú)12.3.13函數(shù)ADC_DMACmd函數(shù)名ADC_DMACmd函數(shù)原形ADC_DMACmd(ADC_TypeDef*ADCx,FunctionalStateNewState)功能描述使能或者失能指定的ADC的DMA請(qǐng)求輸入?yún)?shù)1ADCx:x可以是1、2或3來(lái)選擇ADC外設(shè)輸入?yún)?shù)2NewState:ADCDMA傳輸?shù)男聽(tīng)顟B(tài)這個(gè)參數(shù)可以取:ENABLE或者DISABLE輸出參數(shù)無(wú)返回值無(wú)先決條件無(wú)被調(diào)用函數(shù)無(wú)例:/*ReturnstheADC1Masterdatavalueofthelastconvertedchannel*/u16DataValue;DataValue=ADC_GetConversionValue(ADC1);例:/*EnableADC2DMAtransfer*/ADC_DMACmd(ADC2,ENABLE);12.3ADC相關(guān)庫(kù)函數(shù)12.3.12函數(shù)ADC_GetFlagStatus函數(shù)名ADC_GetFlagStatus函數(shù)原形FlagStatusADC_GetFlagStatus(ADC_TypeDef*ADCx,u8ADC_FLAG)功能描述檢查制定ADC標(biāo)志位置1與否輸入?yún)?shù)1ADCx:x可以是1、2或3來(lái)選擇ADC外設(shè)輸入?yún)?shù)2ADC_FLAG:指定需檢查的標(biāo)志位
參閱章節(jié)ADC_FLAG查閱更多該參數(shù)允許取值范圍輸出參數(shù)無(wú)返回值無(wú)先決條件無(wú)被調(diào)用函數(shù)無(wú)ADC_FLAG:
設(shè)置ADC工作在獨(dú)立或者雙ADC模式ADC_AnalogWatchdog描述ADC_FLAG_AWD模擬看門狗標(biāo)志位ADC_FLAG_EOC轉(zhuǎn)換結(jié)束標(biāo)志位ADC_FLAG_JEOC注入組轉(zhuǎn)換結(jié)束標(biāo)志位ADC_FLAG_JSTRT注入組轉(zhuǎn)換開(kāi)始標(biāo)志位ADC_FLAG_STRT規(guī)則組轉(zhuǎn)換開(kāi)始標(biāo)志位例:/*TestiftheADC1EOCflagissetornot*/FlagStatusStatus;Status=ADC_GetFlagStatus(ADC1,ADC_FLAG_EOC);12.4項(xiàng)目實(shí)例本節(jié)帶領(lǐng)大家實(shí)現(xiàn)四通道模擬量采集與顯示項(xiàng)目12.4項(xiàng)目實(shí)例12.4.1項(xiàng)目分析實(shí)驗(yàn)板提供4路模擬信號(hào)輸入電路,分別的連接至微控制器的PA0-PA3引腳,又查表12-2可知該4路模擬輸入信號(hào)在微控制器內(nèi)部分別連接至ADC1、ADC2和ADC3的通道0至通道3。12.4項(xiàng)目實(shí)例12.4.1項(xiàng)目分析開(kāi)啟時(shí)鐘及分頻需要打開(kāi)ADC1時(shí)鐘、GPIOA時(shí)鐘和AFIO時(shí)鐘,并對(duì)系統(tǒng)時(shí)鐘6分頻作為ADC時(shí)鐘:RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA|RCC_APB2Periph_AFIO,ENABLE);RCC_APB2PeriphClockCmd(RCC_APB2Periph_ADC1,ENABLE);RCC_ADCCLKConfig(RCC_PCLK2_Div6);01設(shè)置GPIO口的模式在作為ADC輸入的時(shí)候,GPIO口應(yīng)該配置為是:模擬輸入(即:GPIO_Mode_AIN)。02進(jìn)行ADC模式的初始化ADC的初始化我們可以調(diào)用庫(kù)函數(shù)的ADC_Init()。它有兩個(gè)輸入?yún)?shù):第一個(gè)參數(shù)是選擇你要設(shè)置的ADC,我們使用ADC1,所以設(shè)置為:ADC1。第二個(gè)參數(shù)是傳遞一個(gè)結(jié)構(gòu)體的指針。ADC_Mode:表示ADC的模式,我們使用獨(dú)立模式(ADC_Mode_Independent)。ADC_ScanConvMode:表示ADC是否使用掃描模式,這里不使用,所以設(shè)置為:DISABLE。ADC_ContinuousConvMode:表示ADC是否使用連續(xù)模式,也就是一直轉(zhuǎn)換。是單次轉(zhuǎn)換,設(shè)置為:DISABLE。ADC_ExternalTrigConv:表示觸發(fā)方式,我們這里是軟件觸發(fā),所以設(shè)置為:ADC_ExternalTrigConv_None。ADC_DataAlign:表示存儲(chǔ)數(shù)據(jù)的對(duì)齊方式。我們使用右對(duì)齊,所以設(shè)置為:ADC_DataAlign_Right。ADC_NbrOfChannel:表示順序進(jìn)行規(guī)則轉(zhuǎn)換的通道數(shù),我們一次只轉(zhuǎn)換一個(gè)通道,所以我們可以把這個(gè)設(shè)置為:1。0312.4項(xiàng)目實(shí)例12.4.1項(xiàng)目分析復(fù)位ADC校準(zhǔn),然后檢測(cè)復(fù)位ADC校準(zhǔn)是否完成ADC_ResetCalibration(ADC1);//重置指定的ADC的校準(zhǔn)寄存器while(ADC_GetResetCalibrationStatus(ADC1));//獲取ADC重置校準(zhǔn)寄存器的狀態(tài)05開(kāi)啟ADC校準(zhǔn),然后等待ADC校準(zhǔn)開(kāi)啟成功ADC_StartCalibration(ADC1);//開(kāi)始指定ADC的校準(zhǔn)狀態(tài)while(ADC_GetCalibrationStatus(ADC1));//獲取指定ADC的校準(zhǔn)程序06設(shè)置采樣周期和選擇通道我們可以用ADC_RegularChannelConfig()函數(shù),它有4個(gè)參數(shù):參數(shù)1用于選擇ADC,此處選擇ADC1,參數(shù)2用于設(shè)置采樣通道,我們共采集4個(gè)通道,通道號(hào)為0~3,每次選擇一個(gè)通道,程序切換。參數(shù)3為所選通道采樣順序,參數(shù)4用于設(shè)置采樣周期。ADC_RegularChannelConfig(ADC1,ADC_Channel_0,1,ADC_SampleTime_55Cycles5);07開(kāi)啟ADC使能ADC_Cmd(ADC1,ENABLE);//打開(kāi)ADC使能0412.4項(xiàng)目實(shí)例12.4.1項(xiàng)目分析等待轉(zhuǎn)換完成,并讀取轉(zhuǎn)換結(jié)果讀取轉(zhuǎn)換結(jié)果可以使用ADC_GetConversionValue()函數(shù),它返回最后一次規(guī)則轉(zhuǎn)換結(jié)果。它有一個(gè)參數(shù),用來(lái)選擇讀取哪個(gè)ADC的轉(zhuǎn)換結(jié)果,設(shè)置為ADC1while(!ADC_GetFlagStatus(ADC1,ADC_FLAG_EOC));//等待轉(zhuǎn)換結(jié)束09開(kāi)始轉(zhuǎn)換我們使用的是軟件觸發(fā)功能,所以要軟件開(kāi)啟轉(zhuǎn)換。ADC_SoftwareStartConvCmd(ADC1,ENABLE);0812.4項(xiàng)目實(shí)例第一步:復(fù)制第11章創(chuàng)建工程模板文件夾到桌面,并將文件夾改名為“11ADC”,將原工程模板編譯一下,直到?jīng)]有錯(cuò)誤和警告為止。10OLED11ADC第二步:為工程模板的“ST_Driver”項(xiàng)目組添加STM32標(biāo)準(zhǔn)外設(shè)ADC庫(kù)函數(shù)源文件“stm32f10x_adc.c”,該文件位于“..\Libraries\STM32F10x_StdPeriph_Driver\src”目錄下。12.4.2項(xiàng)目實(shí)施12.4項(xiàng)目實(shí)例項(xiàng)目實(shí)施第三步:點(diǎn)擊“File/New”新建兩個(gè)文件,將其改名為ADC.C和ADC.H并保存到工程模板下的APP文件夾中。并將ADC.C文件添加到APP項(xiàng)目組下。第四步:在ADC.H文件中輸入如下源程序,其中條件編譯格式不變,只要更改一下預(yù)定義變量名稱即可,需要將我們剛定義函數(shù)的聲明加到頭文件當(dāng)中。參考代碼如下:#ifndef_ADC_H#define_ADC_H#include"stm32f10x.h"voidadc1_init(void);#endif12.4項(xiàng)目實(shí)例第四步:在ADC.C文件中輸入如下源程序,在程序中首先包含ADC.H頭文件,然后創(chuàng)建adc1_init()初始化函數(shù),函數(shù)用于完成對(duì)ADC1的初始化工作。#include"ADC.H"voidadc1_init(){GPIO_InitTypeDefGPIO_InitStructure;ADC_InitTypeDefADC_InitStructure;RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA|RCC_APB2Periph_AFIO,ENABLE);RCC_APB2PeriphClockCmd(RCC_APB2Periph_ADC1,ENABLE);RCC_ADCCLKConfig(RCC_PCLK2_Div6);
//配置ADC-CLK為6分頻72/6=12MGPIO_InitStructure.GPIO_Pin=GPIO_Pin_0|GPIO_Pin_1|GPIO_Pin_2|GPIO_Pin_3;GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;GPIO_InitStructure.GPIO_Mode=GPIO_Mode_AIN;GPIO_Init(GPIOA,&GPIO_InitStructure);ADC_InitStructure.ADC_Mode=ADC_Mode_Independent;ADC_InitStructure.ADC_ScanConvMode=DISABLE;ADC_InitStructure.ADC_ContinuousConvMode=DISABLE;ADC_InitStructure.ADC_ExternalTrigConv=ADC_ExternalTrigConv_None;ADC_InitStructure.ADC_DataAlign=ADC_DataAlign_Right;ADC_InitStructure.ADC_NbrOfChannel=1;ADC_Init(ADC1,&ADC_InitStructure);ADC_RegularChannelConfig(ADC1,ADC_Channel_0,1,ADC_SampleTime_55Cycles5);ADC_Cmd(ADC1,ENABLE);ADC_ResetCalibration(ADC1);while(ADC_GetResetCalibrationStatus(ADC1));ADC_StartCalibration(ADC1);while(ADC_GetCalibrationStatus(ADC1));ADC_SoftwareStartConvCmd(ADC1,ENABLE);}項(xiàng)目實(shí)施參考程序代碼12.4項(xiàng)目實(shí)例第五步:在main.h文件的中間部分添加“#include"ADC.H"”語(yǔ)句,即包含ADC.H頭文件,任何時(shí)候程序中需要使用某一源文件中函數(shù),必須先包含其頭文件,否則編譯是不能通過(guò)的。項(xiàng)目實(shí)施第五步參考代碼如下:#ifndef_MAIN_H#define_MAIN_H#include"stm32f10x.h"#include"LED.h"#include"beepkey.h"#include"dsgshow.h"#include"EXTI.H“#include"timer.h“#include"USART.H“#include"OLED.H“#include"ADC.H"#endif12.4項(xiàng)目實(shí)例第七步:在main.c文件中輸入如下源程序,在main函數(shù)當(dāng)中首先選擇一個(gè)通道,對(duì)其進(jìn)行20次采樣,然后進(jìn)行均值濾波,調(diào)用顯示函數(shù)進(jìn)行動(dòng)態(tài)顯示,全部通道采集完成之后再重新開(kāi)始采集,如此循環(huán)。項(xiàng)目實(shí)施include“main.h"u8hour,minute,second;externu8smgduan[11];externu16smgwei[6];voidShowADval(u8cnum,u32ADVal)//顯示AD轉(zhuǎn)換后的數(shù)值{u16i,j;for(i=0;i<6000;i++){GPIO_Write(GPIOE,smgwei[0]);GPIO_Write(GPIOG,smgduan[cnum+1]);//顯示通道號(hào)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 人教版初中英語(yǔ)八年級(jí)上冊(cè) Unit 5 Do you want to watch a game show 第六課時(shí) Section B (3a3c) 寫作教案
- 初中七年級(jí)數(shù)學(xué)《解一元一次方程:去分母的算法原理與跨學(xué)科應(yīng)用》教案
- 大學(xué)本科土木工程專業(yè)四年級(jí)《人防工程竣工驗(yàn)收標(biāo)準(zhǔn)》專題精講教學(xué)設(shè)計(jì)
- 初中七年級(jí)數(shù)學(xué):基于二元一次方程組的百分比與配套問(wèn)題解決策略教學(xué)設(shè)計(jì)
- 初中地理七年級(jí)上冊(cè)《地圖的‘語(yǔ)言’》跨學(xué)科單元教案
- 初中英語(yǔ)七年級(jí)上冊(cè) Unit 1 A new start Starting out 第二課時(shí) 核心素養(yǎng)教案
- 初中一年級(jí)英語(yǔ)《日常作息與一般現(xiàn)在時(shí)》語(yǔ)法聚焦教學(xué)設(shè)計(jì)
- 小學(xué)盲校道德與法治三年級(jí)上冊(cè)《家是最溫暖的地方》教學(xué)設(shè)計(jì)
- 初中數(shù)學(xué)八年級(jí)下冊(cè)知識(shí)清單:一次函數(shù)(正比例函數(shù)圖像性質(zhì))
- 核心素養(yǎng)導(dǎo)向的初中音樂(lè)七年級(jí)上冊(cè)《船工號(hào)子》跨學(xué)科主題學(xué)習(xí)教學(xué)設(shè)計(jì)
- 2025-2030美國(guó)社區(qū)銀行倒閉潮成因分析與區(qū)域性金融風(fēng)險(xiǎn)預(yù)警報(bào)告
- 四川成都市成華區(qū)2025-2026學(xué)年八年級(jí)下期期末學(xué)業(yè)水平監(jiān)測(cè)英語(yǔ)試卷
- 2026年江蘇省高考地理試卷(含答案及解析)
- 公立醫(yī)院行政管理崗招聘考試核心考點(diǎn)筆記:公共衛(wèi)生應(yīng)急管理
- 2026四川樂(lè)山市峨眉山發(fā)展(控股)限責(zé)任公司招聘17人易考易錯(cuò)模擬試題(共500題)試卷后附參考答案
- 2026年初級(jí)注冊(cè)安全工程師《安全生產(chǎn)法律法規(guī)》真題(附答案解析)
- 醉酒后的急救處理與預(yù)防方法
- 2026年護(hù)理技能大賽試題附參考答案詳解【考試直接用】
- 2026農(nóng)業(yè)4.0智慧農(nóng)業(yè)領(lǐng)航之路行業(yè)趨勢(shì)白皮書(shū)
- 2026年三級(jí)老年人能力評(píng)估師復(fù)習(xí)復(fù)習(xí)試題及答案詳解(有一套)
- 湖南長(zhǎng)沙水業(yè)集團(tuán)有限公司招聘考試真題2025
評(píng)論
0/150
提交評(píng)論