找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 8724|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

STM32中有腳位少又帶USB或CAN的芯片嗎?

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:98618 發(fā)表于 2016-2-21 13:40 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
本文作者:Miler Shao
    STM32家族中有腳位少又帶USB或CAN功能的芯片嗎?答案是肯定的。

    目前STM32家族9大系列中的STM32F0系列中就有20腳并帶USB和CAN外設(shè)模塊的芯片,他們是STM32F042Fx或STM32F070Fx [x識(shí)具體料號(hào)而定]。 


    剛好最近有人詢問希望從STM32芯片中挑一款腳位少且?guī)SB設(shè)備功能的芯片,為其推薦了STM32F042F6P6。 當(dāng)使用STM32CUBEMx去嘗試對(duì)STM32F042F6P6做管腳配置定義時(shí),突然發(fā)現(xiàn)有點(diǎn)不對(duì)勁!左邊的外設(shè)管腳配置欄里的USB灰灰如也,呈無效狀態(tài)。數(shù)據(jù)手冊(cè)有誤還是STM32CUBEMX配置工具不健全?這種情況下,優(yōu)先研讀數(shù)據(jù)手冊(cè)為準(zhǔn)。打開其數(shù)據(jù)手冊(cè),手冊(cè)上赫然寫著各類片上資源,USB模塊就是其中之一。


          數(shù)據(jù)手冊(cè)里的管腳圖如下:

    從管腳圖上不難看出第17、18腳的PA9/PA10與PA11/PA12的管腳安排定義的頗為別具一格。結(jié)合管腳圖下方的那句說明與管腳描述,我們可以知曉,對(duì)于20腳的SMT32F042來講,第17、18腳的默認(rèn)就是PA9/PA10,可以復(fù)用為表格中標(biāo)明的相關(guān)外設(shè)功能腳,但不能作為其它額外功能腳,比方USB端口。如果通過SYSCFG控制器進(jìn)行相關(guān)配置,可以將第17、18腳的功能重映射為PA11、PA12,并可復(fù)用為表格中標(biāo)明的其它外設(shè)功能腳,也可以作為USB的端口的額外功能腳。

    看到這里我們基本明白了剛才在STM32CUBEMX配置那里看不到有效的USB外設(shè)的原因,很可能是缺少SYSCFG控制器的相關(guān)配置;氐STM32CUBEMX再看看。在PIN CONFIG欄的SYS位置,點(diǎn)開即可看到關(guān)于PA11/12代替PA9/10的選項(xiàng),勾選后立即看道另外一番情景。USB外設(shè)也由灰色無效狀態(tài)轉(zhuǎn)為有效狀態(tài),然后可以繼續(xù)做USB相關(guān)配置的勾選。


    顯然,這顆小小20腳芯片是支持USB FS設(shè)備功能的,注意它支持DEVICE功能,只做從機(jī),不能做主機(jī)。

    前面還提到STM32F042F6P6也支持CAN功能,在配置時(shí)我們不難發(fā)現(xiàn),開啟了USB就沒法同時(shí)開啟CAN,反之亦然。這不難理解,畢竟有時(shí)魚和熊掌很難兼得。

    如果要配置CAN功能,同樣也得在SYSCFG外設(shè)那里要先做上面提過的第17、18腳的重映射操作,否則沒法做CAN的配置。

    STM32的管腳復(fù)用是其一大特色,靈活可調(diào)的特性給工程應(yīng)用帶來極大方便的同時(shí),往往也會(huì)給初次使用者帶來些許難度或困惑。幸好ST官方出品了STM32CUBEMX圖形配置工具,可以解放很多研究手冊(cè)的工作量。不過在使用CUBEMX配置遇到疑惑時(shí),還請(qǐng)回頭看看數(shù)據(jù)手冊(cè)找原因或做確認(rèn)。

?最后順便提下基于STM32F0系列MCU開發(fā)的三個(gè)參考軟件代碼庫:

STM32Snippets:基于寄存器訪問級(jí)的STM32芯片外設(shè)應(yīng)用的示例代碼集合。對(duì)于希望兼顧程序容量和性能最優(yōu)化的用戶來說是最佳選擇。對(duì)于那些之前從事8位 MCU開發(fā)而想過渡到32位MCU應(yīng)用的用戶來說,也是個(gè)不錯(cuò)的選擇。STM32F0 MCU參考手冊(cè)中書寫了許多STM32Snippets F0示例代碼,可以幫助理解文字描述,非常值得一讀。

 Standard Peripheral Library:即標(biāo)準(zhǔn)外設(shè)庫,估計(jì)很多人都不陌生了。基于各STM32系列的外設(shè)操作的通用函數(shù)集合,尤其在STM32系列內(nèi)部可以非常方便地實(shí)現(xiàn)移植。

 STM32Cube嵌入式軟件庫:拓展和強(qiáng)化了STM32產(chǎn)品各系列間實(shí)現(xiàn)可移植的通用性。除了標(biāo)準(zhǔn)庫具有的外設(shè)操作函數(shù)庫外,還集成了大量中間件函數(shù)庫與參考工程例程,比如FATFS,RTOS,USB,EMWIN等應(yīng)用的軟件應(yīng)用套件。

    當(dāng)然了,上面三種參考代碼庫可以認(rèn)為是屬于不同風(fēng)格、不同量級(jí)的產(chǎn)品,最終選擇哪一款結(jié)合你自己的工程項(xiàng)目需求和個(gè)人偏好即可。

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表