關(guān) 閉

新聞中心

EEPW首頁 > 工控自動(dòng)化 > 設(shè)計(jì)應(yīng)用 > STM32F103x的USB多路數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)

STM32F103x的USB多路數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)

作者: 時(shí)間:2009-09-18 來源:網(wǎng)絡(luò) 收藏

2.2 32Fx的ADC模塊
32Fx系列微控制器所帶的2個(gè)12位ADC是一種逐次逼近型模擬數(shù)字轉(zhuǎn)換器。它有16個(gè)外部通道,可測量16個(gè)外部信號(hào)源。各通道的A/D 轉(zhuǎn)換可以是單次、連續(xù)、掃描或不連續(xù)模式執(zhí)行,其轉(zhuǎn)換結(jié)果可以左對齊或右對齊方式存儲(chǔ)在16位數(shù)據(jù)存儲(chǔ)器中。ADC轉(zhuǎn)換頻率最高可達(dá)1 MHz,且每個(gè)通道的采樣間隔時(shí)間均可獨(dú)立編程設(shè)置。在通道轉(zhuǎn)換期間,ADC能產(chǎn)生DMA請求,使DMA來傳輸ADC轉(zhuǎn)換值,提高了數(shù)據(jù)傳輸?shù)男省?ADC模塊的結(jié)構(gòu)示意圖如圖2所示。

2.3 32Fx的USB2.0全速設(shè)備接口模塊
USB接口模塊為上位機(jī)和由微控制器實(shí)現(xiàn)的功能設(shè)備之間提供了符合USB規(guī)范的通信連接。USB接口模塊通過和微控制器共享一塊專用的數(shù)據(jù)緩沖區(qū)實(shí)現(xiàn)上位機(jī)和系統(tǒng)存儲(chǔ)器之間的數(shù)據(jù)傳輸。這塊專用數(shù)據(jù)緩沖區(qū)的大小由所使用的端點(diǎn)數(shù)目和每個(gè)端點(diǎn)最大的數(shù)據(jù)分組大小來決定,每個(gè)端點(diǎn)最大可使用512字節(jié)緩沖區(qū),最多可用于16個(gè)單向或8個(gè)雙向端點(diǎn)。USB接口模塊根據(jù)UJSB
規(guī)范實(shí)現(xiàn)了令牌分組的檢測,數(shù)據(jù)發(fā)送/接收的處理和握手分組的處理。整個(gè)傳輸?shù)臄?shù)據(jù)格式由硬件自動(dòng)生成,其中包括CRC的生成和校驗(yàn)。USB2.0全速設(shè)備接口模塊的結(jié)構(gòu)示意圖如圖3所示。

3 數(shù)據(jù)采集系統(tǒng)軟件設(shè)計(jì)
數(shù)據(jù)采集系統(tǒng)軟件設(shè)計(jì)主要包括設(shè)備固件程序設(shè)計(jì)和上位機(jī)應(yīng)用程序設(shè)計(jì)兩部分。
3.1 設(shè)備固件程序
設(shè)備固件程序設(shè)計(jì)的兩個(gè)主要部分是ADC模塊的配置和USB模塊的配置與通信。
(1)ADC模塊的配置
意法半導(dǎo)體公司針對ARM的32位STM32x系列MCU提供了固件庫。該固件庫提供了包括ADC在內(nèi)的各種功能模塊的軟件使用接口,使用該固件庫可以有效節(jié)省用戶產(chǎn)品的開發(fā)和調(diào)試時(shí)間。利用該庫,本設(shè)計(jì)中ADC的配置代碼如下:


ADC校準(zhǔn)之后通過函數(shù)ADC_SoftwareStart-ConvCmd(ADC1,ENABLE)即可啟動(dòng)A/D轉(zhuǎn)換。



關(guān)鍵詞: 103x F103 STM 103

評論


相關(guān)推薦

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

關(guān)閉