• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      STM32F207和DM9161A的以太網(wǎng)實(shí)現(xiàn)方案

      2012-08-27 08:32:56王濤范寒柏王磊陳邵權(quán)
      關(guān)鍵詞:物理層以太網(wǎng)代碼

      王濤,范寒柏,王磊,陳邵權(quán)

      (華北電力大學(xué) 電氣與電子工程學(xué)院,保定071003)

      引 言

      隨著經(jīng)濟(jì)的迅猛發(fā)展,用電需求量及電力負(fù)荷急劇增大,諧波作為目前電網(wǎng)中影響最為重要的一項(xiàng)指標(biāo),對電力系統(tǒng)的影響越來越嚴(yán)重。通過網(wǎng)絡(luò)傳輸采集和分析諧波數(shù)據(jù),以實(shí)現(xiàn)對諧波的有效監(jiān)測,便于更有效地控制諧波對電子系統(tǒng)的危害。

      本文給出了基于STM32F207及DM9161A 的以太網(wǎng)具體實(shí)現(xiàn)方案,為電力系統(tǒng)設(shè)備提供便捷高效的網(wǎng)絡(luò)實(shí)現(xiàn)方法。

      1 硬件的實(shí)現(xiàn)

      基于STM32F207的以太網(wǎng)接口實(shí)質(zhì)是內(nèi)部的MAC單元控制PHY 的過程,兩者通過MII/RMII接口傳送數(shù)據(jù)。

      MAC(Media Access Control)即媒體訪問控制子層協(xié)議。該協(xié)議位于OSI七層協(xié)議中數(shù)據(jù)鏈路層的下半部分,主要負(fù)責(zé)控制與連接物理層的物理介質(zhì)。

      PHY(Physical Layer)是物理接口收發(fā)器,它實(shí)現(xiàn)物理層的數(shù)據(jù)編碼與解碼,直接提供可使用的數(shù)據(jù)流到MAC層。

      MII(Media Independent Interface,媒體獨(dú)立接口)是指在不對MAC硬件重新設(shè)計(jì)或替換的情況下,任何類型的PHY 設(shè)備都可以正常工作;RMII(Reduced Media Independant Interface,簡化媒體獨(dú)立接口),是標(biāo)準(zhǔn)的以太網(wǎng)PHY 接口之一。

      MII數(shù)據(jù)接口總共需要16個(gè)信號,由于其信號線較多,在實(shí)際中應(yīng)用較繁瑣。而RMII只需要7根信號線,大大減少了實(shí)際的物理連線,有效地降低了硬件的復(fù)雜度及成本。因此,此次實(shí)現(xiàn)采用RMII物理層接口。

      意法半導(dǎo)體公司的STM32F207 系列處理器自帶IEEE802.3的MAC,只需增加PHY 物理層芯片就可以連接到TCP/IP網(wǎng)絡(luò),此次實(shí)現(xiàn)是基于STM32F207ZGT6處理器[1]。

      STM32F207以太網(wǎng)接口的特性如下:

      ◆支持10 Mb/s和100 Mb/s速率;

      ◆專用的DMA 控制器能夠高速地傳輸數(shù)據(jù);

      ◆支持VLAN 模式;

      ◆半雙工/雙工模式;

      ◆支持MAC控制層;

      ◆內(nèi)置32位CRC校驗(yàn)。

      STM32F207的以太網(wǎng)連接方式有MII和RMII兩種接口,以下以 RMII 接口方式概述 DM9161A 與STM32F207處理器的硬件連接。

      STM32F207提供標(biāo)準(zhǔn)的RMII硬件接口,只需要按照數(shù)據(jù)手冊的標(biāo)識進(jìn)行對應(yīng)連接即可,此次實(shí)現(xiàn)的連接方式如表1所列。

      表1 STM32F207硬件連接表

      DM9161A 的實(shí)現(xiàn)電路如圖1所示。DM9161A 的RMII_REF_CLK 信號由STM32F207的內(nèi)部MCO 提供,在簡化了硬件設(shè)計(jì)的同時(shí)也可以減少硬件成本[2]。HR911105A 是電路的網(wǎng)絡(luò)接口。

      網(wǎng)絡(luò)控制部分的電路板如圖2所示。

      圖1 DM9161A硬件實(shí)現(xiàn)電路

      圖2 電力系統(tǒng)網(wǎng)絡(luò)控制部分電路板

      2 軟件的實(shí)現(xiàn)

      此部分的主要工作是在硬件平臺的基礎(chǔ)上實(shí)現(xiàn)TCP/IP協(xié)議棧,由于TCP/IP協(xié)議棧較復(fù)雜,功能實(shí)現(xiàn)比較困難,一般選擇成熟的TCP/IP 協(xié)議棧進(jìn)行移植,此次選擇開源并且較成熟的LwIP以太網(wǎng)協(xié)議棧[3]。

      LwIP(Light Weight IP)是瑞士計(jì)算機(jī)科學(xué)院開發(fā)的一套用于嵌入式系統(tǒng)的開放源代碼TCP/IP協(xié)議棧,可移植性強(qiáng),對資源要求較低,在實(shí)現(xiàn)TCP/IP 協(xié)議主要功能的基礎(chǔ)上減少對RAM 的占用。一般它只需要幾百KB的RAM 和40KB 左右的ROM 就可以運(yùn)行,這使得LwIP協(xié)議棧適合在低端的嵌入式系統(tǒng)中使用。

      移植工作在ST 公司提供的STM32F207以太網(wǎng)接口驅(qū)動的基礎(chǔ)上進(jìn)行,針對DM9161A 芯片更改部分底層驅(qū)動代碼,包括時(shí)鐘配置、端口配置及PHY 地址配置等,移植工作一般需要幾個(gè)小時(shí)即可完成。

      LwIP提供了在TCP/IP 協(xié)議棧中比較常用的TCP及UDP兩種功能。TCP是一種面向連接(連接導(dǎo)向)的、可靠的、基于字節(jié)流的運(yùn)輸層(transport layer)通信協(xié)議;UDP是OSI參考模型中一種無連接的傳輸層協(xié)議,提供面向事務(wù)的簡單不可靠信息傳送服務(wù)。TCP一般用于對數(shù)據(jù)可靠性要求較高,但是數(shù)據(jù)傳輸速度較低的情況。而UDP的傳輸速度較快,但是可靠性較低,需要應(yīng)用層保證數(shù)據(jù)到達(dá)的有效性,而在此應(yīng)用中需要傳輸?shù)臄?shù)據(jù)量較小,但是對可靠性要求較高,因此選擇TCP通信模式。

      LwIP提供了兩套API:底層的基于回調(diào)(callback)的raw API和高層的順序模型的API(類似BSD Socket)。

      順序模型的API為普通的順序程序提供使用協(xié)議棧的API,和BSD 風(fēng)格的API很相似,也是基于阻塞的open-read-write-close模式。鑒于TCP/IP 協(xié)議棧本身就基于時(shí)間,所以TCP/IP代碼和應(yīng)用程序的代碼必須在不同的線程中,因此此種模式需要提供操作系統(tǒng)的支持。

      而raw API可以讓應(yīng)用程序和TCP/IP 協(xié)議棧代碼結(jié)合得更緊密。程序的執(zhí)行也是基于事件的,使用回調(diào)函數(shù)的機(jī)制。這種方式TCP/IP 代碼和應(yīng)用代碼運(yùn)行在同一個(gè)線程中,因此這種模式可以在沒有操作系統(tǒng)支持的情況下使用。

      實(shí)際上,順序模型的API也是基于raw API實(shí)現(xiàn)的。此次實(shí)現(xiàn)使用的是raw API,降低對硬件及軟件資源的需求,而raw API是基于事件驅(qū)動的,在數(shù)據(jù)的響應(yīng)速度上也存在一定的優(yōu)勢。

      raw API的操作方法與順序模型基本類似,只是程序的運(yùn)行模式不一樣,需要采用回調(diào)式的編程思想?;緞幼靼ń⑦B接、發(fā)送數(shù)據(jù)、接收數(shù)據(jù)、關(guān)閉連接4類,每一類根據(jù)不同的需求提供了不同的接口函數(shù)。

      結(jié) 語

      經(jīng)過測試,在STM32F207 處理器及DM9161A 硬件平臺上移植LwIP 協(xié)議??梢詫?shí)現(xiàn)TCP、UDP 等功能并穩(wěn)定地運(yùn)行,為后續(xù)基于此平臺開發(fā)電力系統(tǒng)的通信網(wǎng)絡(luò)提供良好的基礎(chǔ)。

      [1]STMicroelectronics.STM32F2XX advanced ARM-based 32-bit MCUs[EB/OL].(2011-12-15)[2012-06-25].http://www.st.com.

      [2]DAVICOM Semiconductor Inc.DM9161A 10/100 Mbps Fast Ethernet Physical Layer Single Chip Transceiver[EB/OL].(2009-10-16)[2012-06-25].http://www.davicom.com.tw.

      [3]Adam Dukels.Design and Implementation of the LwIP TCP/IP[EB/OL].[2012-06-25].http://wenku.baidu.com/view/e8b6dabbfd0a79563c1e7270.html.

      猜你喜歡
      物理層以太網(wǎng)代碼
      基于K-ML-MPWFRFT的物理層安全傳輸技術(shù)
      基于1500以太網(wǎng)養(yǎng)豬場的智能飼喂控制系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
      公路聯(lián)網(wǎng)電子不停車收費(fèi)系統(tǒng)路側(cè)單元物理層自動測試軟件研發(fā)
      創(chuàng)世代碼
      動漫星空(2018年11期)2018-10-26 02:24:02
      創(chuàng)世代碼
      動漫星空(2018年2期)2018-10-26 02:11:00
      創(chuàng)世代碼
      動漫星空(2018年9期)2018-10-26 01:16:48
      創(chuàng)世代碼
      動漫星空(2018年5期)2018-10-26 01:15:02
      談實(shí)時(shí)以太網(wǎng)EtherCAT技術(shù)在變電站自動化中的應(yīng)用
      電子制作(2017年24期)2017-02-02 07:14:44
      多天線物理層安全傳輸系統(tǒng)性能分析
      一種90W高功率以太網(wǎng)供電系統(tǒng)的設(shè)計(jì)
      保德县| 威远县| 襄垣县| 广饶县| 财经| 博兴县| 襄樊市| 徐水县| 文化| 古蔺县| 武鸣县| 兴国县| 鸡东县| 昭苏县| 榆中县| 永登县| 简阳市| 宜都市| 巴彦淖尔市| 公安县| 武冈市| 张北县| 右玉县| 遂溪县| 和顺县| 稷山县| 崇文区| 阿拉善盟| 崇州市| 商南县| 寻乌县| 昔阳县| 永济市| 都江堰市| 肃南| 锦州市| 古交市| 阜平县| 华坪县| 石渠县| 咸宁市|