首頁 > 評測 > 高速USB+Fanout——STM32F723E-DISCO開發(fā)板評測
高速USB+Fanout——STM32F723E-DISCO開發(fā)板評測
- [導讀]
- STM32F723E主打高速USB PHY特性,新探索套件還內置一個安捷倫Pmod連接器和新定義的STMod+連接器,后者讓用戶能夠通過所提供的扇出接插板,連接Wi-Fi模塊、 SeedStudio Grove模塊、MikroElektronika click boards,或者連接電路試驗板快速開發(fā)原型。
編譯并下載代碼到開發(fā)板上,與PA5對應的LED燈就會開始閃爍了。基本的功能測試完畢,可以將CoreMark的代碼插入到現有工程中,使用CoreMark平臺來測試硬件性能。CoreMark的STM32移植,請參考官方的移植資料,這里不贅述。
這是使用IAR對工程進行優(yōu)化編譯后得到的CoreMark測試結果,看到得分為1056,與官方宣稱的1082非常接近,反映了STM32F7的真實性能。
接下來測試USB PHY的性能。STM32F723內置USB PHY,能夠實現USB高速數據傳輸,理論上最高可達480Mbps的速度,不過受外部其它因素的影響,如存儲介質的性能,傳輸的具體實現方法等約束,實際傳輸速度肯定會大打折扣。
測試方案如下,使用U盤連接到開發(fā)板的OTG HS接口,使用FatFS文件系統(tǒng)寫入一定量的數據,計算使用的時間,最后粗略得到一個測試的結果,部分代碼如下
//reading sectors
volatile static int32_t count = 0;
volatile static int32_t times = 8000;
volatile static int32_t sectors = 4;
char msg[100] = {0};
char buff[4096] = {0};
DRESULT status = RES_ERROR;
printf("start reading...\r\n");
count = HAL_GetTick();
for(int32_t i = 0; i < times; i ++) {
//res = f_write(&MyFile, wtext, sizeof(wtext), (void *)&byteswritten);
status = disk_read(0, buff, 156, sectors);
if((status != RES_OK))
printf("Error Writing sectors...");
}
count = HAL_GetTick() - count;
printf("total ticks: %d\r\n", count);
float total_mega_bytes = sectors * 512 * times / 1000.0f / 1000.0f;
sprintf(msg, "total %6.4f MB writed\r\n", total_mega_bytes);
printf(msg);
sprintf(msg, "transforming rates: %6.4f MB/Sec\r\n", total_mega_bytes * 1000.0f / count );
printf(msg);
使用FatFs中的標準配置,每扇區(qū)大小為512字節(jié),執(zhí)行連續(xù)的扇區(qū)讀操作,讀取的扇區(qū)數為4個,連續(xù)讀取8000次,最后計算得到的數據吞吐率,測試的結果如下
寫入速度只有4.28Mps的樣子,已經超過了FS的標準,確實是使用HS的模式來操作。為了對比FS模式下的數據傳輸率,同樣的代碼,通過FS接口重新來測試一遍,得到的測試結果如下
這里的結果顯示為0.85MB/Sec,只有全速標準一半的樣子。
通過前面的對比測試不難發(fā)現高速USB PHY確實是工作的,HS相比FS的效率已大大提高,其實前文已提及到,USB數據吞吐率受多方面的影響,硬件只是其中一個要素,其它如存儲介質的性能、讀寫方式設置的差異,都會影響到整體效果,木桶效應的消除,需要權衡各方面的要素。
這次的STM32F722/723還帶來一個新的技術,Proprietary code read out protection (PCROP),即私有代碼的讀寫保護功能。PCROP技術通過將需要保護的代碼放入指定扇區(qū)(0到7)來防止來自最終用戶的修改或讀取操作,任何試圖通過ITCM或AXI總線讀取操作都會觸發(fā)如下錯誤:
• 總線錯誤
• FLASH_SR的RDERR標志被置位,同時觸發(fā)中斷
這部分代碼只能通過fetch的方式來獲取,最終保護用戶的利益。該區(qū)域的內存映射如下
這是一種層次授權機制,典型的情況是level n用戶編寫一段代碼,授權給level n+1用戶調用,這是一種靈活的授權機制,在保證了代碼私有的情況下,提供了更靈活的使用方式。
ST提供了X-CUBE-PCROP庫,專門用于幫助用戶快速掌握該技術,庫包含STM32F4、STM32F7及STM32L4三種版本的源碼供用戶參考。
最后的結論,STM32F723E-DISCO開發(fā)板非常不錯,自ST將自家的開發(fā)板重新分類以后,NUCLEO主打核心MCU功能,EVAL一直高高在上,平民百姓難得一見,只有DISCO系列似已成為ST新技術試驗的溫床,各種新技術、新功能都能在DISCO板上找到影子,而且DISCO上集成的諸多外設,讓評估用戶無需了解太多細節(jié),通過HAL庫提供的相關示例代碼,可以迅速評估并做出初步決策,的確為研發(fā)人員省心不少。STM32F723E-DISCO的官方報價為$39,良心再次體現!
參考資源:
-
- 本文系21ic原創(chuàng),未經許可禁止轉載!
網友評論
- 聯(lián)系人:巧克力娃娃
- 郵箱:board@21ic.com
- 我要投稿
-
歡迎入駐,開放投稿
-
人均百萬?英偉達中國員工收入曝光! 2024-08-29
-
《黑神話:悟空》玩家硬盤升級攻略:提升游戲體驗,暢享3A大作 2024-08-29
-
- NRF52810藍牙數字耳機找人定制
預算:¥30005天前
- 125KW模塊式PCS軟硬件外包開發(fā)
預算:¥1100000015小時前
- 12V汽車啟動電源項目BMS設計
預算:¥50000023小時前
- 數據可視化軟件 開發(fā)
預算:¥5000023小時前
- PLC項目調試修改
預算:¥100001天前
- 起動電機控制器開發(fā)
預算:¥1100001天前