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

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

2016-01-18 03:39:26
自動(dòng)化與儀表 2016年10期

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

隨著嵌入式系統(tǒng)的進(jìn)一步發(fā)展,以及對(duì)通信速率的要求不斷提高,以太網(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個(gè)以太網(wǎng)控制器,當(dāng)系統(tǒng)需要2個(gè)以上以太網(wǎng)口時(shí)無法滿足設(shè)計(jì)需求。因此,本文提出了使用最新的ARM Cortex-M4內(nèi)核微控制器和并行網(wǎng)口芯片ENC624J600來實(shí)現(xiàn)雙10/100 Mb/s的以太網(wǎng)口擴(kuò)展。

1 硬件設(shè)計(jì)

1.1 主要器件

1.1.1 STM32F437微控制器

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

1.1.2 ENC624J600

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

1.2 硬件實(shí)現(xiàn)

1.2.1 工作原理

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

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

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)進(jìn)行反向。其中,讀寫控制管腳FSMC_NOE和FSMC_NWE經(jīng)過反向后同時(shí)與2片ENC624J600的NET_RD和NET_WR相連,片選控制管腳FSMC_NE3經(jīng)反向后與第一片ENC624J600芯片的片選NET1_CS相連,F(xiàn)SMC_NE4經(jīng)反向后與第二片ENC624J600芯片的片選NET2_CS相連。另外,2個(gè)網(wǎng)口芯片的中斷管腳NET1_INT和NET2_INT分別與微控制器的2個(gè)I/O相連。

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

2 軟件設(shè)計(jì)

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

2.1 微控制器配置程序

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

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

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

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

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

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

3 結(jié)語

使用STM32F437和2片ENC624J600的雙網(wǎng)口擴(kuò)展技術(shù),解決了工業(yè)控制現(xiàn)場(chǎng)多路獨(dú)立網(wǎng)口通信的需求,并運(yùn)用到實(shí)際產(chǎn)品中去。經(jīng)過連續(xù)24 h以上工作測(cè)試,硬件和驅(qū)動(dòng)程序性能穩(wěn)定,在10 Mb/s、100 Mb/s均能正常工作,實(shí)際通信速率可穩(wěn)定達(dá)到5 MB/s以上,取得了系統(tǒng)設(shè)計(jì)的預(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ū)動(dòng)TFT彩屏設(shè)計(jì)[J].現(xiàn)代電子技術(shù),2013,36(20):139-141.

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

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

主站蜘蛛池模板: 国产大片喷水在线在线视频| 最新午夜男女福利片视频| 免费不卡视频| 波多野结衣视频一区二区| 日韩国产亚洲一区二区在线观看| 在线视频一区二区三区不卡| 国产一级二级三级毛片| 丁香六月综合网| 亚洲Av激情网五月天| 99视频在线看| 国产人成在线视频| 国产黄色免费看| 婷婷丁香在线观看| 亚洲精品在线91| 无遮挡一级毛片呦女视频| 亚洲精品777| 2021天堂在线亚洲精品专区| 中文字幕 欧美日韩| 免费高清毛片| 亚洲av无码成人专区| 伊人久热这里只有精品视频99| 免费国产高清视频| 美女毛片在线| 国产产在线精品亚洲aavv| 婷婷六月综合| 美女视频黄又黄又免费高清| 欧美一级专区免费大片| 欧美精品另类| 一级毛片网| 成人午夜天| 亚洲日本韩在线观看| 好吊色国产欧美日韩免费观看| 色网站在线免费观看| 久久9966精品国产免费| 欧美日韩专区| 在线亚洲小视频| 亚洲天堂精品在线观看| 色老头综合网| 亚洲欧洲日产国产无码AV| 欧美一区二区人人喊爽| 亚洲一区网站| 亚洲成人www| 色亚洲成人| 一级毛片免费播放视频| 欧美精品v欧洲精品| 青青极品在线| 久久综合色播五月男人的天堂| 97精品国产高清久久久久蜜芽| 在线日韩日本国产亚洲| 亚洲欧美成人网| 亚洲人成网站日本片| 精品1区2区3区| 在线综合亚洲欧美网站| 激情无码字幕综合| 91精品国产福利| 无码精品一区二区久久久| 91精品视频播放| 久久久久国产精品免费免费不卡| 91国内在线观看| 日韩av无码精品专区| 国产亚洲精品自在线| 激情综合五月网| 日韩123欧美字幕| 免费看黄片一区二区三区| 久久国产精品影院| 伊人色在线视频| 999国内精品久久免费视频| 最新亚洲人成网站在线观看| 国产成人91精品免费网址在线 | 亚洲国产精品一区二区第一页免 | 欧美日韩国产成人高清视频| 中文字幕免费在线视频| 国产成人精品在线| 国产老女人精品免费视频| 777午夜精品电影免费看| 日韩午夜福利在线观看| 亚洲成人www| 国产视频入口| 精品国产一区二区三区在线观看| 人妻少妇久久久久久97人妻| 波多野吉衣一区二区三区av| 久久www视频|