STM32F103x的USB多路數據采集系統設計
引 言
目前,在工業(yè)和許多其他場(chǎng)合依然使用基于PCI板卡、ISA板卡的數據采集系統,價(jià)格昂貴、接插不方便。USB(Universal Serial Bus,通用串行總線(xiàn))是計算機上的一種新型接口技術(shù),它使得計算機和外部設備的連接十分方便。USB具有高效、快速、價(jià)格低廉、體積小和支持熱拔插等優(yōu)點(diǎn),使其成為數據采集系統設計的新寵兒。然而當前的USB數據采集設備大多采用的是專(zhuān)門(mén)的USB接口芯片,而且根據不同的需求,需要外擴一定數量的A/D 轉換芯片,使得接口非常復雜,增加了系統的開(kāi)發(fā)難度,進(jìn)而對系統的穩定性產(chǎn)生影響。本設計采用意法半導體公司開(kāi)發(fā)的基于Cortex-M3內核的新型32 位微控制器STM32F103x作為主控芯片。該芯片內部集成了全速USB2.0設備接口模塊和16通道的12位高精度A/D轉換器,單芯片即可完成設計任務(wù),避免了復雜的接口電路設計,有效地降低了系統接口的復雜度和系統開(kāi)發(fā)的難度,在很大程度上提高了系統的穩定性。
1 主控芯片STM32F103x
STM32F103x是意法半導體公司生產(chǎn)的基于A(yíng)RMCortex-M3處理器核的微控制器。Cortex-M3是基于A(yíng)RMv7-M體系結構的32位標準處理器,具有低功耗、少門(mén)數、短中斷延遲、低調試成本等眾多優(yōu)點(diǎn)。它是專(zhuān)門(mén)為在微控制器系統、汽車(chē)電控系統、工業(yè)控制系統和無(wú)線(xiàn)網(wǎng)絡(luò )等對功耗和成本敏感的嵌入式應用領(lǐng)域實(shí)現高系統性能而設計的,大大簡(jiǎn)化了編程的復雜性,集高性能、低功耗、低成本于一體。STM32F103x微控制器采用了先進(jìn)的 Cortex-M3內核結構,具有豐富的性能出眾的片上外設,包括16通道的12位A/D轉換器、7通道的DMA控制器、16位定時(shí)器、USART接口、 CAN接口(2.0B)和USB2.0全速接口(12 Mbps)等。
2 數據采集系統硬件設計
2.1 數據采集系統硬件結構
多路數據采集系統的硬件結構框圖如圖1所示,主要包含5個(gè)模塊:信號輸入接口模塊、信號調理模塊、數據采集及預處理模塊、USB2.0通信模塊和上位機模塊。其中的信號輸入接口模塊實(shí)現信號的隔離接入;信號調理模塊對輸入信號進(jìn)行放大或衰減,以適應A/D轉換器的轉換量程;數據采集及預處理模塊和USB2.0通信模塊實(shí)際是由微控制器 STM32F103x獨自實(shí)現的。STM32F103x通過(guò)內部A/D轉換器對經(jīng)過(guò)調理后的信號進(jìn)行采集,然后進(jìn)行數據的預處理,并將預處理后的數據通過(guò) USB2.0全速接口傳送到上位機。上位機模塊主要是對獲取的數據進(jìn)行存儲和分析處理。由于大量的工作都是在STM32F103x內部完成的,只需通過(guò)簡(jiǎn)單的寄存器設置和程序設計即可完成數據的采集和傳輸過(guò)程,這在很大程度上優(yōu)化了系統的設計。
評論