【?聲明:版權所有,歡迎轉載,請勿用于商業用途。 聯系信箱:feixiaoxing @163.com】
? ? ? ? 對于一部分嵌入式場景來說,f103其實已經足夠了,特別是要求不高的低速場合。如果開發的代碼比較多,還可以選用更高版本的f103 mcu芯片。但是f103也有它自身的一些問題,比如頻率不高、不支持硬件浮點、不支持mac、ran和flash過小、不支持復雜外設等等。所以在工業生產當中,如果希望要求比較高一點,一般都會選用f407這顆mcu來處理。
1、頻率更高
? ? ? ? 整個f系列的mcu,f7是最高的,一般200多M,其次是f4 168M,最后是f1 72M。更高的頻率,意味著單位時間內可以做更多的事情。當然如果f7還是不滿足,還可以選用h7系類的mcu,頻率可以達到400m。
2、支持硬件浮點運算
? ? ? ? 其實f103也是支持浮點運算的,但是這種浮點是軟件浮點,相當于用函數搭起來的浮點。而f4開始,就可以實現硬件級別的浮點運算,相當于說cpu層面就可以支持浮點運算,而不是用函數仿真的。
3、更大的flash和ram
? ? ? ? 編寫f103的時候,特別是c8t6之類的小芯片,很多情況下我們都會對ram和flash斤斤計較。比如說,移植一下rtos、fatfs,ram空間可能就上去了,20k ram不夠用了。但是f407系列的mcu,上面的flash和ram都很豐富。以f407zgt7來說,上面包含了1m的flash、192k的ram,不管是編寫代碼,還是移植第三方軟件,一般來說資源都是富余的。就算ram不夠,還可以外掛一個sram來解決。
4、eth mac的支持
? ? ? ? 這里的eth mac,指的是網絡支持。對于f103來說,雖然也可以支持網絡,比如通過spi接口外掛一個w5500的模塊,這也是可以的,但是總覺得不是很方便。而f407自身集成了mac模塊,我們只需要外掛一個lan 8720這樣的phy,進一步移植一下lwip,就可以實現網絡通信了。網絡通信在信息化的今天,還是非常非常重要的。
5、更復雜外設的使用
? ? ? ? 從前我們做f103開發的時候,無外乎就是spi、iic、sdio、tim這些接口。現在到了f407之后,頻率高了,資源多了,相應可以做的事情也就更多了。這里最明顯的特點就是f407支持lcd、支持camera、支持復雜usb應用。之前103雖然也支持屏幕,不過是分辨率比較小的那種屏幕。至于camera,f103很少支持,但是從407開始,我們就可以看到一些camera出現在開發板上了,只是想要跑算法的話,最好進一步提高到h750這樣的mcu來處理。usb的話,其實103也用得少,一般都是232/485用的多。
6、總結
? ? ? ? 本身f407還是非常優秀的,更大的ram和flash,搭配上更復雜的外設,讓我們除了spi、iic、sdio這些傳統接口之外,還可以處理sram、lcd、camera,并且引入更多的中間件代碼來處理業務,整個應用有了更多的可能性,這是非常非常重要的。
? ? ? ? 大部分stm32系列的mcu,穩定運行的溫度區間都是-40度~+85度,部分mcu可以達到-40度~+105度,這一點就勝過了大部分的消費級soc。在成本要求越來越嚴苛的今天,mcu還是有很多優勢和用武之地的。