在當(dāng)前智能化快速發(fā)展的背景下,嵌入式應(yīng)用對(duì)系統(tǒng)性能以及通信可靠性的要求越來(lái)越高。聚沃科技推出的雙網(wǎng)口通信開(kāi)發(fā)板采用兆易創(chuàng)新600MHz高性能MCU,具備強(qiáng)大的運(yùn)算能力和穩(wěn)定的雙網(wǎng)口設(shè)計(jì),能夠很好地滿足工業(yè)制造、醫(yī)療設(shè)備、智慧交通等對(duì)通信可靠性要求極高的場(chǎng)景。下面,讓我們來(lái)一起了解這款開(kāi)發(fā)板的主要特點(diǎn)。
一、旗艦級(jí)硬件配置
GD32H759IMK6作為主控芯片,BGA176封裝,主頻高達(dá)600MHz
內(nèi)置大容量存儲(chǔ)3840KB Flash和1024KB SRAM
外擴(kuò)存儲(chǔ)芯片32MB SRAM和32MB GD25Q256 NOR Flash
GD30LD1000和GD30LD1002提供板載供電
接口資源豐富,包含兩路獨(dú)立以太網(wǎng)接口/SRAM/NOR Flash/USB接囗/SWD+USART接口/多路串口/CAN接口/擴(kuò)展IO等
軟件開(kāi)發(fā)資源豐富,包括提供基于FreeRTOS的雙網(wǎng)口通信開(kāi)發(fā)例程
<提供軟件開(kāi)發(fā)資源截圖>
1、代碼架構(gòu)介紹
在進(jìn)行軟件代碼介紹之前首先為讀者介紹本例程代碼整體架構(gòu),使讀者能夠從整理了解代碼框架以及如何閱讀及使用。
如圖所示,本例程主要包含以下文件夾,具體每個(gè)文件夾的功能說(shuō)明如表所示。
如下表所示,GD32H7xx_Peripherals為MCU底層固件庫(kù)集合,是將MCU所有的外設(shè)進(jìn)行初步封裝的函數(shù)集,該驅(qū)動(dòng)文件為GD官方提供的驅(qū)動(dòng)文件,也是最底層的封裝庫(kù)函數(shù)文件;在此基礎(chǔ)上,聚沃針對(duì)本開(kāi)發(fā)版使用的主要外設(shè),包括exmc、ADC、DAC、串口、DMA等再次進(jìn)行驅(qū)動(dòng)封裝,形成MCU_Driver文件夾,該文件夾內(nèi)容主要為底層固件庫(kù)的二次封裝,供BSP使用;在driver層的基礎(chǔ)上,針對(duì)本開(kāi)發(fā)板使用的硬件資源進(jìn)行初始化及應(yīng)用操作封裝,包括SRAM、四路串口、ADC、DAC、TIMER、SPI Flash等,進(jìn)而應(yīng)用層可直接調(diào)用bsp層函數(shù)進(jìn)行硬件資源操作;其他第三方驅(qū)動(dòng)文件包括文件系統(tǒng)、LWIP協(xié)議棧、FreeRTOS操作系統(tǒng)等也在對(duì)應(yīng)的文件夾中進(jìn)行實(shí)現(xiàn)。
表11 代碼架構(gòu)文件夾說(shuō)明
文件夾 | 功能說(shuō)明 |
Application | 應(yīng)用層文件實(shí)現(xiàn) |
GD32H7xx_Peripherals | GD32H7底層固件庫(kù)集合 |
FreeRTOS | FreeRTOS操作系統(tǒng)文件集合 |
CMSIS | CMSIS系統(tǒng)文件(主要為系統(tǒng)時(shí)鐘配置文件) |
Startup | 啟動(dòng)文件 |
BSP_Driver | BSP硬件資源驅(qū)動(dòng)抽象文件 |
MCU_Driver | MCU底層外設(shè)驅(qū)動(dòng)抽象文件 |
FATFS | FATFS文件系統(tǒng)文件集合 |
Lwip | LWIP驅(qū)動(dòng)文件集合 |
Lwip_port | LWIP_Port驅(qū)動(dòng)文件集合 |
tftp | Tftp文件傳輸協(xié)議文件集合 |
lfs | Litefs文件系統(tǒng)文件集合 |
2、主函數(shù)流程介紹
本例程主函數(shù)代碼如下所示,在主函數(shù)中,首先將中斷優(yōu)先級(jí)分組分配為4位搶占0位次優(yōu)先級(jí),也即是本例程可支持16級(jí)搶占優(yōu)先級(jí),不支持次優(yōu)先級(jí),之后采用xTaskCreate創(chuàng)建init_task任務(wù),創(chuàng)建任務(wù)后執(zhí)行vTaskStartScheduler()開(kāi)啟操作系統(tǒng)任務(wù)調(diào)度器。
intmain(void) { /* configure 4 bits pre-emption priority */ nvic_priority_group_set(NVIC_PRIGROUP_PRE4_SUB0); /* init task */ xTaskCreate(init_task,"INIT", configMINIMAL_STACK_SIZE *2,NULL,INIT_TASK_PRIO,NULL); /* start scheduler */ vTaskStartScheduler(); while(1) { } }
init_task初始化任務(wù)函數(shù)代碼如下所示,在該任務(wù)函數(shù)中,首先進(jìn)行部分外設(shè)初始化,包括MPU初始化、驅(qū)動(dòng)初始化、LED初始化、創(chuàng)建操作系統(tǒng)信號(hào)量、以太網(wǎng)模塊初始化、LWIP堆棧初始化等,之后分別創(chuàng)建四個(gè)串口通信測(cè)試任務(wù)(FOUR_UART_test)、SRAM擦寫(xiě)測(cè)試任務(wù)(SRAM_test)、SPI NorFlash以及文件系統(tǒng)測(cè)試任務(wù)(FATFS_SPINOR_test)、Timer定時(shí)修改DAC輸出碼值測(cè)試任務(wù)(TIMER_DAC_test)、以及ADC采樣測(cè)試任務(wù)(ADC_test),之后通過(guò)FileSystemInit進(jìn)行網(wǎng)絡(luò)文件傳輸初始化配置。
相關(guān)任務(wù)的功能實(shí)現(xiàn)以及使用測(cè)試將在后續(xù)章節(jié)進(jìn)行介紹。
voidinit_task(void*pvParameters) { /* enable the CPU Cache */ // cache_enable(); /* configure the MPU */ //mpu1_config(); driver_init(); bsp_led_init(&LED1);//初始化LED1,用于定時(shí)器定時(shí)驗(yàn)證 /* create a binary semaphore. */ binary_semaphore =xSemaphoreCreateBinary(); /* configure ethernet (GPIOs, clocks, MAC, DMA) */ enet_system_setup(); /* initilaize the LwIP stack */ lwip_stack_init(); #ifdefUSE_DHCP /* start DHCP client */ xTaskCreate(dhcp_task,"DHCP", configMINIMAL_STACK_SIZE *2,NULL, DHCP_TASK_PRIO,NULL); #endif/* USE_DHCP */ xTaskCreate(FOUR_UART_test,"FOUR_UART_TEST", configMINIMAL_STACK_SIZE*2,NULL, UART_TASK_PRIO,NULL); xTaskCreate(SRAM_test,"SRAM_TEST", configMINIMAL_STACK_SIZE*2,NULL, SRAM_TASK_PRIO,NULL); xTaskCreate(FATFS_SPINOR_test,"FATFS_SPINOR_TEST", configMINIMAL_STACK_SIZE*4,NULL, FATFS_TASK_PRIO,NULL); xTaskCreate(TIMER_DAC_test,"TIMER_DAC_TEST", configMINIMAL_STACK_SIZE*2,NULL, TIMER_DAC_TASK_PRIO,NULL); xTaskCreate(ADC_test,"ADC_TEST", configMINIMAL_STACK_SIZE*2,NULL, ADC_TASK_PRIO,NULL); FileSystemInit(); for( ;; ){ vTaskDelete(NULL); } }
二、雙網(wǎng)口設(shè)計(jì)的三大優(yōu)勢(shì)
網(wǎng)絡(luò)故障容錯(cuò):當(dāng)一個(gè)網(wǎng)口出現(xiàn)故障或網(wǎng)絡(luò)鏈路中斷時(shí),另一個(gè)網(wǎng)口可以立即接管數(shù)據(jù)傳輸任務(wù),確保設(shè)備與網(wǎng)絡(luò)的連接不中斷,保證系統(tǒng)的穩(wěn)定運(yùn)行。
持續(xù)穩(wěn)定通信:對(duì)于一些需要長(zhǎng)時(shí)間連續(xù)運(yùn)行的設(shè)備,如服務(wù)器、網(wǎng)絡(luò)存儲(chǔ)設(shè)備等,雙網(wǎng)口提供了冗余的網(wǎng)絡(luò)路徑,能夠避免因單點(diǎn)網(wǎng)絡(luò)故障而導(dǎo)致的服務(wù)中斷,提高了系統(tǒng)的可用性和穩(wěn)定性。
流量分擔(dān):當(dāng)設(shè)備需要處理大量網(wǎng)絡(luò)數(shù)據(jù)時(shí),雙網(wǎng)口可以將數(shù)據(jù)流量分散到兩個(gè)網(wǎng)絡(luò)鏈路上,實(shí)現(xiàn)負(fù)載均衡。例如,在視頻監(jiān)控系統(tǒng)中,多個(gè)攝像頭的視頻數(shù)據(jù)可以通過(guò)雙網(wǎng)口同時(shí)傳輸,減輕單個(gè)網(wǎng)口的負(fù)擔(dān),提高數(shù)據(jù)傳輸效率,避免網(wǎng)絡(luò)擁塞。
三、典型場(chǎng)景應(yīng)用方案
遠(yuǎn)程監(jiān)控與數(shù)據(jù)采集:工業(yè)物聯(lián)網(wǎng)中的遠(yuǎn)程監(jiān)控設(shè)備,如M120E以太網(wǎng)遠(yuǎn)程I/O無(wú)線數(shù)據(jù)采集模塊。其嵌入式32位高性能微處理器MCU集成2路工業(yè)10/100M自適應(yīng)以太網(wǎng)模塊,通過(guò)雙網(wǎng)口可同時(shí)連接到工廠內(nèi)部網(wǎng)絡(luò)和外部互聯(lián)網(wǎng)。一方面將采集到的現(xiàn)場(chǎng)設(shè)備運(yùn)行數(shù)據(jù)、環(huán)境參數(shù)等上傳到工廠內(nèi)部的監(jiān)控系統(tǒng),另一方面通過(guò)互聯(lián)網(wǎng)將數(shù)據(jù)傳輸?shù)竭h(yuǎn)程監(jiān)控中心,方便工程師隨時(shí)隨地進(jìn)行監(jiān)控和管理,且在網(wǎng)絡(luò)出現(xiàn)故障時(shí),雙網(wǎng)口可實(shí)現(xiàn)冗余備份,確保數(shù)據(jù)傳輸不中斷。
智能交通信號(hào)控制:在城市交通路口的信號(hào)控制機(jī)中,采用雙網(wǎng)口的MCU。一個(gè)網(wǎng)口連接到交通管理部門(mén)的中心控制系統(tǒng),接收交通流量數(shù)據(jù)、實(shí)時(shí)路況信息以及控制指令等,另一個(gè)網(wǎng)口連接到路口的各個(gè)交通信號(hào)燈、車(chē)輛檢測(cè)器等設(shè)備,實(shí)現(xiàn)對(duì)交通信號(hào)燈的精確控制,根據(jù)實(shí)時(shí)交通流量動(dòng)態(tài)調(diào)整信號(hào)燈時(shí)長(zhǎng),優(yōu)化交通流,提高道路通行效率。
軌道交通車(chē)輛控制:在地鐵、高鐵等軌道交通車(chē)輛中,雙網(wǎng)口的MCU用于車(chē)輛的控制系統(tǒng)。一個(gè)網(wǎng)口與車(chē)輛的列車(chē)網(wǎng)絡(luò)連接,實(shí)現(xiàn)車(chē)輛之間的通信和協(xié)同控制,如牽引、制動(dòng)等系統(tǒng)的協(xié)調(diào)工作;另一個(gè)網(wǎng)口連接到地面的運(yùn)維網(wǎng)絡(luò),方便車(chē)輛在運(yùn)行過(guò)程中實(shí)時(shí)上傳車(chē)輛的狀態(tài)信息、故障數(shù)據(jù)等,以便地面運(yùn)維人員及時(shí)掌握車(chē)輛情況,進(jìn)行預(yù)防性維護(hù)和故障處理。
綜上所述,聚沃科技雙網(wǎng)口通信開(kāi)發(fā)板集成了兆易創(chuàng)新MCU、模擬芯片和存儲(chǔ)芯片,具備高算力、大存儲(chǔ)和雙網(wǎng)口設(shè)計(jì)等特點(diǎn)。該產(chǎn)品已成功應(yīng)用于工業(yè)制造和智慧交通等領(lǐng)域,為行業(yè)用戶提供了可靠的硬件解決方案。相信這類(lèi)高性能通信設(shè)備將在更多應(yīng)用場(chǎng)景中發(fā)揮重要作用。
-
mcu
+關(guān)注
關(guān)注
147文章
18408瀏覽量
380011 -
嵌入式
+關(guān)注
關(guān)注
5177文章
19994瀏覽量
325085 -
開(kāi)發(fā)板
+關(guān)注
關(guān)注
25文章
6020瀏覽量
110450 -
兆易創(chuàng)新
+關(guān)注
關(guān)注
23文章
677瀏覽量
82573
原文標(biāo)題:【深度解析】雙網(wǎng)口通信開(kāi)發(fā)板場(chǎng)景化應(yīng)用方案
文章出處:【微信號(hào):GD32MCU,微信公眾號(hào):GD32MCU】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
【兆易創(chuàng)新GD32VF103R-START開(kāi)發(fā)板試用體驗(yàn)】遲來(lái)的開(kāi)箱
【兆易創(chuàng)新GD32VF103R-START開(kāi)發(fā)板試用體驗(yàn)】試用個(gè)人感受
【合作伙伴】兆易創(chuàng)新--兆億中華夢(mèng),創(chuàng)芯創(chuàng)新易世界
兆易創(chuàng)新GD32E103VB-mbed開(kāi)發(fā)板電路原理圖
兆易創(chuàng)新GD32F307VG-mbed開(kāi)發(fā)板電路原理圖
兆易創(chuàng)新GD32F450ZI-mbed開(kāi)發(fā)板電路原理圖
兆易創(chuàng)新GD32VF103系列開(kāi)發(fā)板套件
兆易創(chuàng)新GD32F1x0系列開(kāi)發(fā)板套件
兆易創(chuàng)新GD32F3x0系列開(kāi)發(fā)板套件
兆易創(chuàng)新GD32F4xx系列開(kāi)發(fā)板套件
兆易創(chuàng)新GD32F20x系列開(kāi)發(fā)板套件
兆易創(chuàng)新GD32F30x系列開(kāi)發(fā)板套件
兆易創(chuàng)新GD32L23x系列開(kāi)發(fā)板套件
兆易創(chuàng)新GD32W51x系列開(kāi)發(fā)板套件
野火GD32H759開(kāi)發(fā)板產(chǎn)品概述

評(píng)論