999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于STM32的以太網數據采集系統設計

2015-08-07 12:10:26田玉周楚建安
微處理機 2015年1期
關鍵詞:系統設計

田玉周,楚建安

(西安工程大學,西安710048)

基于STM32的以太網數據采集系統設計

田玉周,楚建安

(西安工程大學,西安710048)

提出了一種以太網數據采集系統,該系統核心處理器和數據采集器件為STM32F103ZE,以太網控制芯片是DM9000A。分別介紹了采集器的硬件和軟件設計,詳細分析了模擬量數據采集、分析、傳送的各模塊軟硬件設計,詳細介紹了UIP1.0協議棧的移植。此以太網數據采集器可以用于遠程監控系統的數據采集模塊。

數據采集;STM32芯片;DM9000A芯片;UIP1.0協議

1 引 言

2 系統總體方案

隨著互聯網技術、以太網技術的發展,遠程監控越來越成為研究和應用的熱點。作為遠程監控的重要組成部分,數據采集及傳送模塊也顯得尤為重要。遠程監控系統的發展對于數據采集的精確性、實時性和安全性都有了更高要求。

傳統數據采集由于儲存空間小和通訊接口的局限,存在精度不高、采集信息量小的缺點,已經不能滿足遠程監控系統中對數據的精度和信息量的需求。針對這種情況設計了基于STM32的以太網數據采集器,由于用到了以Cext-M3為核心的STM32芯片,該芯片有豐富的片上資源,大大節約了外圍硬件。同時芯片上16通道的12位ADC模數轉換模塊[1],也使數據采集的精確度顯著提高。基于以太網的數據傳輸協議的運用,解決了通訊中通訊協議轉換的問題。實現了無縫信息集成。

本數據采集系統主要包含數據采集模塊、通訊模塊,整體設計如圖1所示。所要采集的模擬信號經過前端模擬調理模塊的調節,使之處于A/D轉換能夠轉換的電壓范圍內,再利用STTM32的片內ADC模塊實現A/D轉換,采集過的數據經STM32系統內核處理后由DM9000A發送給上位機。

圖1 系統總體框圖

3 系統硬件設計

3.1 數據采集

數據采集模塊主要包括數據的調理和采集,其主要硬件是STM32。基于ARM Cortex-M3的STM32由意法半導體公司生產,其數據總線寬度為32bit、最大時鐘頻率72MHz、具有256KB程序存儲器、64KB數據RAM、80個可編程輸入/輸出端、10個定時器、工作電源電壓2V~3.6V以及12位的ADC、FSMC。STM32數據采集有18個通道,可以測量16個外部模擬量和2個內部模擬量,各通道的A/D轉換可以單次、連續、掃描或間斷模式執行。ADC的結果可以左對齊或右對齊方式存儲在16位數據寄存器中。其結構示意圖如圖2示。

圖2 A/D模塊示意圖

3.2 數據處理和傳輸

數據處理和傳輸模塊硬件主要由STM32微控制器和DA9000A以太網驅動芯片構成。DM9000A集成了10/100M物理層接口,內部帶有16K字節SRAM作為數據收發的FIIO緩存,其中3k作為發送包緩沖區,剩下的作為接收包緩沖區。支持8/16 bit兩種主機工作模式,本系統中用的是16bit工作模式。同時支持802.3以太網傳輸協議。

STM32與DM9000A連接電路如圖3所示。

圖3 硬件連接

DA9000A中只有兩個地址端口經過處理器STM32直接訪問,一個是INDEX端口,另一個是DATA端口。而訪問哪個端口處理器是由CMD決定的。當引腳CMD=0時,處理器STM32訪問INDEX端口寄存器,當引腳CMD=1時,處理器STM32訪問DATA端口。INDEX端口的內容為DATA端口的寄存器地址。在訪問任何寄存器之前,寄存器地址都必須保存在INDEX端口中。因此在讀寫DM9000A寄存器時,先將其地址寫入INDEX,再通過DATA端口讀寫數據。

4 系統軟件設計

4.1 STM32數據采集程序

數據采集模塊程序的設計中,首先是對模擬量采集程序初始化。意法半導體公司提供了ADC模塊的固件庫函數,通過對固件庫函數的調用,用戶可以輕松實現對ADC模塊的設置,本程序中,ADC的設置如下[2-3]:

1)對模擬量采集端口的設計,我們設計為模擬輸入模式,GPIO_Mode_AIN。

2)設置ADC工作模式為對立模式,ADC_Mode_Independent。

3)使能ADC掃描。

4)設置ADC轉換工作為連續模式,ADC_ContinuousConvMode=ENABLE。

5)ADC觸發方式為軟件觸發

6)設置轉換所得到的數據右對齊

7)設置順序進行規則轉換的ADC通道數目。

8)設置采樣順序和采樣時間。

通過以上設置,ADC模塊連續采樣并轉化各個模擬量,并且把所得數據儲存到16位數據儲存器中,等待其通過以太網向上位機傳輸。在這個過程中,UIP1.0提供的UIP_APPCALL(),將是我們對數據處理程序與UIP連接的一個重要函數。

4.2 DM9000A驅動程序

作為底層驅動程序,對DM9000A驅動程序的編寫主要有三個方面:驅動初始化、數據發送、數據接收。

4.2.1 驅動器初始化

通過驅動器初始化,可以啟動以太網控制器DM9000A,使之處于數據收發狀態,我們調用函數DM9000A_int(void):

完成以上設計后就可以使以太網控制器正常啟動,接收和發送數據包。

4.2.2 數據發送

DM9000A有16K的SRAM作為數據發送和接收緩沖區。其中3K作為發送緩沖區,發送器的起始地址為0x00H,緩沖區可以保存index1、intex2兩個數據包,在軟件或硬件復位后,默認的數據發送包為index1,首先將發送數據包長度寫入長度寄存器中,然后置位發送控制寄存器的bit-0位,則DM9000A開始發送index1數據包。在index1數據包發送結束之前,數據發送包index2被移入TX SRAM中。在index1數據包發送結束后,將index2數據字節長度寫入長度寄存器中,然后,置位發送控制寄存器的bit-0位,則index2數據包開始發送。在這里我們用到函數DM9000_send(void)。

4.2.3 數據接收

DM9000A的數據接收緩沖區是一個環形數據結構[4]。在軟件或硬件復位后,RX SRAM的起始地址為0X0C00。每個接收數據包都包含有CRC校驗域,數據域,以及緊跟其后的4字節包頭域。4字節包頭格式為:01h(是否接收到數據包)、狀態(確認接收包是否正確)、BYTE_COUNT低、BYTE_COUNT高(接收包的長度)。接收函數為DM9000_read(void)。

4.3 UIP1.0協議棧的移植

系統軟件設計中需要移植UIP1.0協議棧,uip是瑞典計算機科學學院開發的,它去掉了完整的TCP/IP協議中不常用的功能,簡化了通訊流程,但是保留了必要的協議,重點放在了IP/TCP/ICMP/UDP/ARP這些網絡層和傳輸層協議上,保證了代碼的通用和結構的穩定。Uip協議棧主要提供了三個函數讓底層調用,它們是:uip_int()用于協議棧初始化,uip_intput()用于處理上位機傳過來的數據包,uip_periodic()用于處理uip內部時鐘事件。同時提供UIP_APPCALL()用于應用程序接口。

IP1.0協議棧,首先會通過uip_int()對協議棧進行初始化,然后設置IP地址、網關、掩碼設置,以及監聽端口,最后進入主循環對數據處理。其數據處理過程如圖4所示。

圖4 uip數據處理流程圖

當底層函數接收到數據包時會放在uip_buff,先檢測數據包是否為0,不為0則說明收到數據包,再判斷該數據包是ip包還是ARP報文,若是ip包,經過去以太網結構更新ARP表后,將數據包交由uip_input()處理,再把其返回值發送到以太網。若是ARP報文,是ARP回應就更新ARP表,是ARP請求則構造回應包做出回應。同時uip還會定時對各個連接進行輪詢[5]。

4.4 應用程序接口

高級應用程序UIP_APPCALL()是數據傳輸的關鍵,當底層接收到上位機傳來的數據時,會通過uip_input,調用UIP_APPCALL()函數,從而讓高級應用程序去處理數據,uip_int返回時會將輸出的數據賦值給uip_buff,數值長度賦值給uip_len,然后通過底層函數DM9000_send將獲得數據從以太網發出。

高級應用程序如下所示,主要是檢測上位機發送過來的獲取電壓命令,根據不同命令將獲取的不同電壓值通過uip_int以返回值的形式傳輸給底層驅動函數,由驅動函數發送到以太網上去。

5 系統調試

程序在keil uvision4上用C語言編寫,編寫完成后經Jlink下載到STM32。系統上電后,打開TCP&UDP測試工具,新建連接,設置目標IP為192.168.1.10,目標監聽端口4001。打開連接,在發送端口輸入獲取指令,就可以獲得采集到的電壓數據,如圖所示,上傳速度達到10K/S以上。

圖5 調試結果

6 結束語

該系統設計并移植了UIP1.0協議棧,用到STM32和DM9000A芯片。設計的以太網數據采集器能夠直接將模擬數據采集并傳給上位機,12位的STM32使數據精確度大大提高,經過調試達到了設計要求。本系統減少了芯片數量,使電路板設計小巧,能夠用于教學實驗和工業領域。

[1] 意法半導體(中國)投資有限公司.STM32F10xxx參考手冊[EB/OL].[2011-5].http://www.st.com/mcu/.

[2] 孟強,徐慧,萬青苗.基于STM32的數據采集及顯示系統的設計[J].計算機知識與技術,2013,13(9):3184-3186.

[3] 郝雯,沈金鑫,梅成.基于STM32單片機的儲存市數據采集系統[J].電子設計工程,2013,17(21):80-82.

[4] 施勇,溫陽東.基于DM9000A的嵌入式以太網接口設計與實現[J].合肥工業大學學報,2011,34(4):519-521.

[5] 張磊,周一帆.基于uip協議的生產設備數據采集系統設計[J].濟南大學學報,2014,28(1):65-67.

Design of Ethernet Data Acquisition System Based on STM32

Tian Yuzhou,Chu Jian'an
(Xi’an Polytechnic University,Xi’an 710048,China)

An Ethernet data acquisition system is introduced in this paper,and STM32F103ZE is used as the core processor and data acquisition device and DM9000A as Ethernet controller chip.The hardware and software design of the acquisition device,the analog data acquisition,analysis and transfer are described in details,and the transplant of UIP1.0 protocol stack is proposed as well.The ethernet data acquisition system can be used for remotemonitoring system data acquisition module.

Data acquisition;STM32 Chip;DM9000A Chip;UIP1.0 agreement

10.3969/j.issn.1002-2279.2015.01.020

TP23

A

1002-2279(2015)01-0072-04

田玉周(1989-),男,河南濮陽人,碩士研究生,主研方向:電力電子與電力傳動。

2014-04-25

猜你喜歡
系統設計
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
何為設計的守護之道?
現代裝飾(2020年7期)2020-07-27 01:27:42
《豐收的喜悅展示設計》
流行色(2020年1期)2020-04-28 11:16:38
基于PowerPC+FPGA顯示系統
半沸制皂系統(下)
瞞天過海——仿生設計萌到家
藝術啟蒙(2018年7期)2018-08-23 09:14:18
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
設計秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
主站蜘蛛池模板: 久视频免费精品6| 国产情侣一区| 欧日韩在线不卡视频| 成人在线观看不卡| 99激情网| 国产一区二区影院| 国产门事件在线| 嫩草在线视频| 无码国产偷倩在线播放老年人| 99热国产在线精品99| 久久这里只有精品8| 亚洲一级毛片| 国产激情无码一区二区三区免费| 五月婷婷激情四射| 9丨情侣偷在线精品国产| 71pao成人国产永久免费视频| 国产精品自在在线午夜| 天天摸夜夜操| 欧美日韩激情在线| 亚洲乱亚洲乱妇24p| jijzzizz老师出水喷水喷出| 国产乱人激情H在线观看| 欧美色视频日本| 国产成人精品2021欧美日韩| 欧美精品亚洲精品日韩专区va| 亚洲高清在线天堂精品| 欧美无遮挡国产欧美另类| 免费啪啪网址| 青青草国产免费国产| 精品视频一区在线观看| 国产性爱网站| 久久美女精品国产精品亚洲| 亚洲国产精品一区二区第一页免| 色爽网免费视频| 夜精品a一区二区三区| 福利视频一区| 夜夜操国产| 欧美在线综合视频| 中文字幕亚洲第一| 亚洲日韩日本中文在线| 在线欧美国产| 久久久久青草大香线综合精品| 久久狠狠色噜噜狠狠狠狠97视色| 欧美日韩国产一级| 国产一区免费在线观看| 国产sm重味一区二区三区| 色久综合在线| 免费人成黄页在线观看国产| 欧美特黄一级大黄录像| 国内精品91| 亚洲免费黄色网| 国产精品所毛片视频| 色婷婷色丁香| 日本高清成本人视频一区| 久久亚洲精少妇毛片午夜无码| 四虎国产永久在线观看| 亚洲黄色激情网站| 亚洲成A人V欧美综合天堂| 毛片基地视频| 不卡国产视频第一页| 激情视频综合网| 91免费精品国偷自产在线在线| 久久综合色88| 国产99精品久久| 欧美人在线一区二区三区| 亚洲午夜福利精品无码| 99久久精品免费观看国产| 夜夜拍夜夜爽| 在线无码av一区二区三区| 亚洲人成影院午夜网站| 中文字幕无线码一区| 精品三级网站| 国产微拍精品| 91麻豆久久久| 思思99热精品在线| 婷婷丁香在线观看| 欧美精品一区在线看| 一本久道久久综合多人| 久久精品人人做人人爽电影蜜月| 无码日韩人妻精品久久蜜桃| 欧美一级黄片一区2区| 狠狠亚洲五月天|