[導讀] STM32F723E主打高速USB PHY特性,新探索套件還內置一個安捷倫Pmod連接器和新定義的STMod+連接器,后者讓用戶能夠通過所提供的扇出接插板,連接Wi-Fi模塊、 SeedStudio Grove模塊、MikroElektronika click boards,或者連接電路試驗板快速開發原型。
說實話,筆者覺得有點跟不上ST的節奏,我說的不是ST的全部產品,單是為MCU推出的評估套件這一塊,就令人目不睱接。
去年下半年的STM32F769-DISCO還沒完全熟悉,然后就是NUCLEOF412/F413系列出來了。這不,ST又推出了STM32F723E-DISCO及NUCLEO-F722E,前者隸屬DISCOVERY陣營,搭載的是 STM32F723IEK6 MCU,主打高速USB PHY特性,后者使用的是STM32F722ZET6 MCU,是了款標準的NUCLEO-144評估板。
在USB 3.0及USB 3.1大行其道的今天,MCU上的USB接口仍然處于相對落后的狀態,雖則現有MCU大多提供了USB HS/FS接口,但其速率大多止步于全速USB接口標準,數據吞吐率極其有限,這樣限制了MCU在大數據吞吐場合的應用。下表給出了目前USB接口的一參考數據。
STM32F723IEK6微控制器的USB-HS (高速)設備物理層(PHY)芯片的高速USB連接器,以及USB-FS (全速)連接器和TFT 240x240像素LCD觸摸屏。該套件還預裝演示軟件,包括一個WAV音頻播放器、簡易視頻播放器和錄音機。
STM32F723E-DISCO不僅為用戶帶來了高速USB體驗,同時秉承了DISCO一貫的主張,板載大量的傳感器及LCD,為用戶提供豐富的外設接口,帶來更好的體驗。
STM32F723E-DISCO開發套件包括MEMS麥克風、MEMS傳感器、音頻編解碼器和用戶界面顯示屏,支持創新應用演示。基于高性能STM32F7微控制器,新探索套件STM32F723E-DISCO標志著下一代靈活性即將到來,為開發人員提供功能更豐富的第三方模塊,進一步擴展應用功能。
除Arduino Uno排針外,新探索套件還內置一個安捷倫Pmod連接器和新定義的STMod+連接器,后者讓用戶能夠通過所提供的扇出接插板,連接Wi-Fi模塊、 SeedStudio Grove模塊、MikroElektronika click boards,或者連接電路試驗板快速開發原型。
我要看板子,別廢話!行,這就看。
居然象是工包?這次的包裝里面居然連用戶快速指南都省了,不要懷疑是否二手,貨真價實,就是這個樣。
套件內包括兩塊板,其中一塊是擴展板,ST管它叫Fanout,提供了目前流行的一些接口,如MikroElektronika Click board兼容接口。
STM32F723E-DISCO提供的主要特性如下:
● STM32F723IEK6微控制器,512KB Flash,256KB SRAM,UFBGA176封裝
● 板載ST-LINK/V2-1調試器
● 240X240分辨率LCD,帶觸摸屏,大小為1.54英寸
● SAI音頻解碼器
● 4個ST-MEMS MIC
● 音頻輸入、輸出接口
● 512Mbit QSPI Flash存儲器
● 8Mbit PSRAM存儲器
● USB OTG HS/FS接口
● ESP-01 WiFi接口
● PMOD連接器
● STMod+連接器
● Fanout擴展板
STM32F723E-DISCO開發板正面的一些主要元器件,主要包括LCD、ESP8266接口、USB OTG接口及PMOD、STMod+連接器等。
STM32F723E-DISCO開發板背面的設備,主要包括有STM32F723MCU,擴展的QSPI及PSRAM存儲器,Ardduino UNO V3接口及WM8994音頻解碼器等。
套件內的Fanout擴展板提供了豐富的其它類型接口,如下圖
Fanout擴展板提供了一些其它設備廠商開發的流行設備接口,如Grove System提供的Grove接口,在Arduino及Intel的許多設備上使用非常頻繁,Fanout板上提供了兩個:UART及I2C接口,可以方便的對接基于Grove接口的外設。另外現在基于Mikrobus的外設也非常多。通過Fanout擴展板,STM32F723E-DISCO的適用性大增強。
STM32F723E-DISCO板載一顆STM32F723IEK6的芯,基于ARM Cortex-M7,最高主頻216MHz,支持FPU運算,內置的ART加速技術,結合8KB的數據及8KB的指令緩存,可實現0等待執行操作。該CPU的CoreMark運算得分高達1082。
注意到MCU上的ES標志,這與一般意義是的STM32產品是有區別的,ES或E表明該產品尚未具備正式量產的資格。
STM32F723系列還有一個顯著的特性,在MCU內集成了PHY HS。也就意味著使用STM32F723實現USB HS功能時,不需要額外使用外部PHY設備,USB HS通過開板板上的CN19與外部設備連接,實現高速通信。內部連接原理圖如下
STM32F723E-DISCO開發板上的LED LD8與USB電源開關連接,用來指示設備工作狀態,另外LED LD7用來指示電流是否過載。當使用ST-LINK來供電時,OTG最提供最大100mA的電流輸出,如果要輸出更高的電流,則只能使用外部電源來給開發板供電。
雖然MCU只提供了512KB/256KB的FLASH/SRAM存儲組合,但是根本不用擔心STM32F723E-DISCO的存儲瓶頸,因為開發板上還集成了一個8-Mbit的PSRAM,PSRAM的型號為IS66WV51216EBLL-55BLI,通過FMC接口來實現訪問,可實現16位數據傳輸及18位尋址能力。
另外STM32F723E-DISCO開發套件上還提供了一顆512Mbit的NOR Flash外部存儲芯片,通過QSPI與MCU連接,以實現更多的數據存儲能力,NOR Flash的型號為MX25L51245G。
該存儲模塊大大擴充了開發板的存儲能力,可心用來存儲字庫或圖像等比較大的資源。
STM32F723E-DISCO開發板的其它一些圖片,供欣賞。
初步認識了STM32F723E-DISCO開發板的外觀及一些主要的特性,現在準備給開發板上電,體驗預置的程序提供的一些基本功能。
需要完整的體驗STM32F723E-DISCO開發板出廠固件提供的功能,需要準備一根OTG數據線,一個U盤或者SD卡(配合讀卡器)以及一副耳機。將ST官方提供的Media資源包復制到U盤或TF卡上,供程序讀寫。
連接好之后的整體效果圖,其中OTG連接到開發板的CN19上,耳機連接到開發板的Line Out上,上圖是播放音樂的界面。最后是連接ST-LINK給開發板供電。
首次上電,提醒用戶校準觸屏,點擊屏幕上提供的校準點,顯示屏的大小為1.54英寸,240X240的分辨率,一般男性使用手指來觸摸的話有點難度。
這是系統出廠時提供的演示程序,界面包括4個功能,視頻播放、音頻播放、時鐘及錄音功能。
這是播放AVI的效果,播放畫面非常流暢,這要歸功于微處理器強大的運算能力。
錄音效果,開發板上4個MEMS MIC提供了較好的降噪處理能力,實際錄音效果不錯。
ST一直致力于打造一個良好的生態系統。除了在硬件方面為廣大用戶提供了豐富的硬件評估套件,軟件方面也是不遺余力,配套的STM32CUBEMX圖形開發環境及豐富的例程庫、代碼,能幫助用戶快速掌握軟件開發過程,累積開發技能并迅速應用到實際工程上。
這里建立一個簡單的工程,實現LED燈及UART通信功能,為后面的CoreMark測試為準備。
打開STM32CUBEMX圖形化程序,新建一個工程
在這里選擇合適的MCU型號,可以使用MCU Filters來迅速找到自己需要的MCU型號,例如這里STM32F723IEKx就是我們需要的。
配置RCC資源,STM32F723E-DISCO開發板上焊接了25MHz的外部晶振,將上圖中的Disable選項改為外部晶振適用的選項。
圖形化的配置模式結合自動計算功能,可以很快設定時鐘樹,這里將時鐘HCLK設定為216MHz,這也是官方推薦的最高運行頻率。其它需要設置的參數還包括LED用到的GPIO,這里使用PA5,其它如UART,這里用到的是UART6,這是開發板上預設的與VCOM進行通信用到的端口。
配置后時鐘之后,對設備進行具體參數的設定,這里指定MCU的一些特性,如使用TCM接口來取代AXIM接口,以實現更高的性能。
配置完設備參數之后,導出開發平臺相關的工程文件,如下
這里指定的參數主要是工程的名稱、位置、IDE的類型(這里使用IAR,也就是EWARM),下面還可以指定工程文件中堆和棧的大小。
STM32CUBEMX生成的只一個工程框架,具體的程序邏輯還需要用戶自行設計,輸入相應的代碼。打開工程中的main.c文件,在程序的主循環中輸入如下代碼,實現簡單的閃爍功能。
/* Infinite loop */
/* USER CODE BEGIN WHILE */
while (1)
{
/* USER CODE END WHILE */
/* USER CODE BEGIN 3 */
HAL_GPIO_TogglePin(GPIOA, GPIO_PIN_5);
HAL_Delay(500);
}
/* USER CODE END 3 */
注意代碼中的大量注釋,STM32CUBEMX生成的工程為用戶代碼預留了插入位置,將代碼寫到這些規定的位置以防止再次生成工程時被覆蓋。
編譯并下載代碼到開發板上,與PA5對應的LED燈就會開始閃爍了。基本的功能測試完畢,可以將CoreMark的代碼插入到現有工程中,使用CoreMark平臺來測試硬件性能。CoreMark的STM32移植,請參考官方的移植資料,這里不贅述。
這是使用IAR對工程進行優化編譯后得到的CoreMark測試結果,看到得分為1056,與官方宣稱的1082非常接近,反映了STM32F7的真實性能。
接下來測試USB PHY的性能。STM32F723內置USB PHY,能夠實現USB高速數據傳輸,理論上最高可達480Mbps的速度,不過受外部其它因素的影響,如存儲介質的性能,傳輸的具體實現方法等約束,實際傳輸速度肯定會大打折扣。
測試方案如下,使用U盤連接到開發板的OTG HS接口,使用FatFS文件系統寫入一定量的數據,計算使用的時間,最后粗略得到一個測試的結果,部分代碼如下
//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...rn");
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: %drn", count);
float total_mega_bytes = sectors * 512 * times / 1000.0f / 1000.0f;
sprintf(msg, "total %6.4f MB writedrn", total_mega_bytes);
printf(msg);
sprintf(msg, "transforming rates: %6.4f MB/Secrn", total_mega_bytes * 1000.0f / count );
printf(msg);
使用FatFs中的標準配置,每扇區大小為512字節,執行連續的扇區讀操作,讀取的扇區數為4個,連續讀取8000次,最后計算得到的數據吞吐率,測試的結果如下
寫入速度只有4.28Mps的樣子,已經超過了FS的標準,確實是使用HS的模式來操作。為了對比FS模式下的數據傳輸率,同樣的代碼,通過FS接口重新來測試一遍,得到的測試結果如下
這里的結果顯示為0.85MB/Sec,只有全速標準一半的樣子。
通過前面的對比測試不難發現高速USB PHY確實是工作的,HS相比FS的效率已大大提高,其實前文已提及到,USB數據吞吐率受多方面的影響,硬件只是其中一個要素,其它如存儲介質的性能、讀寫方式設置的差異,都會影響到整體效果,木桶效應的消除,需要權衡各方面的要素。
這次的STM32F722/723還帶來一個新的技術,Proprietary code read out protection (PCROP),即私有代碼的讀寫保護功能。PCROP技術通過將需要保護的代碼放入指定扇區(0到7)來防止來自最終用戶的修改或讀取操作,任何試圖通過ITCM或AXI總線讀取操作都會觸發如下錯誤:
● 總線錯誤
● FLASH_SR的RDERR標志被置位,同時觸發中斷
這部分代碼只能通過fetch的方式來獲取,最終保護用戶的利益。該區域的內存映射如下
這是一種層次授權機制,典型的情況是level n用戶編寫一段代碼,授權給level n+1用戶調用,這是一種靈活的授權機制,在保證了代碼私有的情況下,提供了更靈活的使用方式。
ST提供了X-CUBE-PCROP庫,專門用于幫助用戶快速掌握該技術,庫包含STM32F4、STM32F7及STM32L4三種版本的源碼供用戶參考。
最后的結論,STM32F723E-DISCO開發板非常不錯,自ST將自家的開發板重新分類以后,NUCLEO主打核心MCU功能,EVAL一直高高在上,平民百姓難得一見,只有DISCO系列似已成為ST新技術試驗的溫床,各種新技術、新功能都能在DISCO板上找到影子,而且DISCO上集成的諸多外設,讓評估用戶無需了解太多細節,通過HAL庫提供的相關示例代碼,可以迅速評估并做出初步決策,的確為研發人員省心不少。
STM32F723E-DISCO的官方報價為$39,良心再次體現!
參考資源:
STM32F723E-DISCO
X-CUBE-PCROP
COREMARK代碼
特別推薦
轉載請注明來自夕逆IT,本文標題:《VMIC5565反射內存卡128MB256MB》

還沒有評論,來說兩句吧...