亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于ARM Cortex-M4雙網(wǎng)口擴展的設(shè)計與實現(xiàn)

        2016-01-18 03:39:26
        自動化與儀表 2016年10期
        關(guān)鍵詞:管腳微控制器驅(qū)動程序

        (河南思維自動化設(shè)備股份有限公司,鄭州 450001)

        隨著嵌入式系統(tǒng)的進一步發(fā)展,以及對通信速率的要求不斷提高,以太網(wǎng)通信在各種工業(yè)領(lǐng)域的應(yīng)用越來越廣。目前,嵌入式工業(yè)控制領(lǐng)域使用最廣泛的是基于ARM內(nèi)核的微控制器(MCU)芯片,其在所有微控制器中占有率超過70%。從之前的ARM7、ARM9,到現(xiàn)在的 ARM Cortex-M3、M4,絕大多數(shù)的ARM內(nèi)核微控制器最多內(nèi)部集成1個以太網(wǎng)控制器,當系統(tǒng)需要2個以上以太網(wǎng)口時無法滿足設(shè)計需求。因此,本文提出了使用最新的ARM Cortex-M4內(nèi)核微控制器和并行網(wǎng)口芯片ENC624J600來實現(xiàn)雙10/100 Mb/s的以太網(wǎng)口擴展。

        1 硬件設(shè)計

        1.1 主要器件

        1.1.1 STM32F437微控制器

        本系統(tǒng)微控制器選用意法半導(dǎo)體(ST)公司的STM32F437IIT6,該芯片是以32位Cortex-M4為內(nèi)核,具有高達168 MHz的工作頻率,內(nèi)置高速存儲器(2 MB FLASH,256 KB RAM)和豐富的外設(shè)接口,并具有M4新增加的浮點運算單元(FPU)[1]。

        1.1.2 ENC624J600

        以太網(wǎng)控制器選用美國微芯(Microchip)公司的ENC624J600,該芯片符合IEEE 802.3中以太網(wǎng)的全部規(guī)范,具有獨立的MAC和10/100 Mb/s PHY控制器。ENC624J600(64引腳)與MCU之間通過8位/16位復(fù)用并行接口連接,具有24 KB可配置的發(fā)送/接收數(shù)據(jù)緩沖區(qū)。該芯片通過11種不同的接收過濾器對傳入數(shù)據(jù)包進行過濾,并且還提供了16位寬的內(nèi)部DMA,以實現(xiàn)快速數(shù)據(jù)吞吐及硬件IP校驗和計算支持[2]。

        1.2 硬件實現(xiàn)

        1.2.1 工作原理

        本系統(tǒng)采用STM32F437的FSMC接口與2片ENC624J600相連,實現(xiàn)雙網(wǎng)口擴展。FSMC是靈活的靜態(tài)存儲控制器,STM32F437芯片可利用FSMC控制NOR FLASH、PSRAM和 NAND FLASH存儲芯片。這里,使用FSMC的NOR/PSRAM存儲器、控制器訪問ENC624J600網(wǎng)口芯片。NOR/PSRAM存儲器地址為60000000h~6FFFFFFFh共4*64 MB的地址空間[3]。因此,可連接多達4個NOR/PSRAM類型的存儲器器件。本系統(tǒng)中2片網(wǎng)口芯片占用其中的2路,另外2路擴展了2片NORFLASH芯片用以掉電保存重要的網(wǎng)絡(luò)數(shù)據(jù)。

        1.2.2 硬件結(jié)構(gòu)設(shè)計

        STM32F437與2片ENC624J600的硬件結(jié)構(gòu)如圖1所示。FSMC數(shù)據(jù)線D0~D15與ENC624J600雙向數(shù)據(jù)線 D0~D15相連,F(xiàn)SMC地址線 A0~A13與ENC624J600地址輸入線A0~A13相連,網(wǎng)口芯片的地址線A14接地。由于ENC624J600的讀、寫及片選控制管腳的有效電平與ST微控制器FSMC控制管腳的有效電平是相反的,因此中間需加一片反相器(如SN74LVC04A)進行反向。其中,讀寫控制管腳FSMC_NOE和FSMC_NWE經(jīng)過反向后同時與2片ENC624J600的NET_RD和NET_WR相連,片選控制管腳FSMC_NE3經(jīng)反向后與第一片ENC624J600芯片的片選NET1_CS相連,F(xiàn)SMC_NE4經(jīng)反向后與第二片ENC624J600芯片的片選NET2_CS相連。另外,2個網(wǎng)口芯片的中斷管腳NET1_INT和NET2_INT分別與微控制器的2個I/O相連。

        圖1 STM32F437與ENC624J600硬件結(jié)構(gòu)Fig.1 Hardware structure between STM32F437 and ENC624J600

        2 軟件設(shè)計

        本設(shè)計的軟件主要有微控制器接口配置和網(wǎng)絡(luò)芯片驅(qū)動程序兩部分。對STM32F437的接口配置包括對其FSMC總線初始化及EXTI外部中斷初始化,ENC624J600的驅(qū)動程序主要包括對其進行初始化及數(shù)據(jù)收發(fā)處理。

        2.1 微控制器配置程序

        對微控制器STM32F437的接口配置主要包括FSMC初始化和EXTI外部中斷初始化。FSMC初始化使用了ST的庫函數(shù),需要對FSMC_NORSRAM TimingInitTypeDef和FSMC_NORSRAMInitTypeDef類型的結(jié)構(gòu)體進行配置,F(xiàn)SMC初始化相關(guān)代碼如下:

        EXTI作為STM32F437的外部中斷/事件控制器,負責(zé)管理映射到GPIO引腳上的中斷輸入,并最終映射到NVIC的相應(yīng)通道上[4]。這里配置2路網(wǎng)口芯片中斷管腳連到微控制器的2個GPIO為下降沿觸發(fā)中斷。

        2.2 網(wǎng)口芯片驅(qū)動程序

        ENC624J600驅(qū)動程序包括芯片初始化及數(shù)據(jù)收發(fā)處理兩部分。芯片初始化過程包括復(fù)位以及對控制寄存器、PHY寄存器和以太網(wǎng)緩沖器進行初始化[5],初始化流程如圖2所示。

        圖2 網(wǎng)口芯片初始化流程Fig.2 Flow chart of network interface chip initialization

        ENC624J600接收數(shù)據(jù)使用中斷方式,當網(wǎng)口收到完整的一幀數(shù)據(jù)包后,會向微控制器發(fā)送中斷,微控制器響應(yīng)ENC624J600的中斷請求,系統(tǒng)進入中斷程序并開始接收數(shù)據(jù)。當ENC624J600發(fā)送數(shù)據(jù)時,需先確定發(fā)送數(shù)據(jù)起始指針ETXST和發(fā)送緩沖區(qū)長度指針ETXLEN,再使能發(fā)送控制寄存器。這里需要注意的是ENC624J600的收發(fā)緩沖區(qū)空間可以在0000h~5FFFh共24 KB地址空間靈活配置,因此在芯片初始化時就應(yīng)配置好收發(fā)緩沖區(qū)的地址范圍。

        3 結(jié)語

        使用STM32F437和2片ENC624J600的雙網(wǎng)口擴展技術(shù),解決了工業(yè)控制現(xiàn)場多路獨立網(wǎng)口通信的需求,并運用到實際產(chǎn)品中去。經(jīng)過連續(xù)24 h以上工作測試,硬件和驅(qū)動程序性能穩(wěn)定,在10 Mb/s、100 Mb/s均能正常工作,實際通信速率可穩(wěn)定達到5 MB/s以上,取得了系統(tǒng)設(shè)計的預(yù)期效果。

        [1]STM32F405xx/07xx,STM32F415xx/17xx,STM32F42xxx and STM32 F43xxx advanced ARM-based 32-bit MCUs reference manual[Z].STMicroelectronics,2013.

        [2]ENC424J600/624J600 data sheet[Z].Microchip,2009.

        [3]湯莉莉,黃偉.基于STM32的FSMC接口驅(qū)動TFT彩屏設(shè)計[J].現(xiàn)代電子技術(shù),2013,36(20):139-141.

        [4] 李寧.基于MDK的STM32處理器開發(fā)應(yīng)用[M].北京:北京航空航天大學(xué)出版社,2008.

        [5]李陽,吳成富,鄧紅德.基于DSP和ENC28J60的多串口與以太網(wǎng)數(shù)據(jù)傳輸系統(tǒng)設(shè)計[J].測控技術(shù),2011,30(12):61-65.

        猜你喜歡
        管腳微控制器驅(qū)動程序
        物聯(lián)網(wǎng)技術(shù)在微控制器實驗教學(xué)中的應(yīng)用
        電子制作(2017年14期)2017-12-18 07:07:58
        基于圖像處理的異型電子元器件管腳偏移誤差檢測方法研究
        CMOS數(shù)字IC管腳電容的估算與測量
        Atmel針對新一代物聯(lián)網(wǎng)應(yīng)用發(fā)布全新32位微控制器
        最新STM32設(shè)計工具增加對混合信號微控制器的支持
        意法半導(dǎo)體(ST)推出世界首款基于ARM Cortex-M7的STM32 F7系列微控制器
        HC08芯片JVT測試方法的探究
        電子測試(2013年22期)2013-09-26 06:03:52
        驅(qū)動程序更新與推薦
        驅(qū)動程序更新與推薦
        驅(qū)動程序更新與推薦
        久久久久88色偷偷| 日本最新一区二区三区视频| 国产一区二区三区在线av| 日本不卡高字幕在线2019| 最近中文字幕完整版免费 | 一本到无码AV专区无码| av在线男人的免费天堂| 欲女在线一区二区三区| 亚洲色爱免费观看视频| 91伊人久久| 亚洲综合网中文字幕在线| 久久精品国产91精品亚洲| 99久久婷婷国产综合精品电影| 国产精品九九九无码喷水| 日本一区二区精品色超碰| 国产精品国产三级国产av中文| 柠檬福利第一导航在线| 久久九九青青国产精品| 亚洲一区二区三区在线激情| 国产高清在线精品一区app| 国产精品免费久久久久影院仙踪林| 精品无码成人片一区二区| 熟女人妻一区二区三区| 久久久亚洲av成人网站| 国产亚洲日韩欧美久久一区二区| 亚洲区福利视频免费看| 少妇无套裸按摩呻吟无呜| 中文无码一区二区不卡αv| 日本成人字幕在线不卡| 国产精品自拍视频在线| 亚洲av色香蕉一区二区三区老师| 女同久久精品国产99国产精品| 太大太粗太爽免费视频| 久久99精品国产麻豆| 亚洲av午夜福利精品一区二区 | 国产精品天天看大片特色视频 | 精品女同一区二区三区亚洲| 丰满熟妇人妻av无码区| 国产午夜福利短视频| 国产精品性一区二区三区| 美女视频在线观看亚洲色图|