2014年9月5日金曜日

STM32F4

STM32F4の生チップを買ったので、とりあえずLチカをしてみました



STM32F401RBTとSTM32F429IITの2種類です

401RBTはF4で一番安いチップ F429IITはF4で一番高いチップ となります
(F4では429の上に439というシリーズが有りますが、RSでは176pinは扱っていませんでした)

/*
蛇足ですが、秋月のQFP176変換基板 コネクタの配置が1.27mmピッチです
つまり2.54mmピッチのユニバーサル基板に乗りません
秋月さん!!!何やってるの!!!!!
*/

さて、扱いやすさで言えば64pinパッケージは非常に簡単です
パスコン6個と短絡1箇所で動作します
アナログ電源(VDDA)すら不要です

次に176ですが、こちらはちょっと手間取りました
パスコンが15個くらい必要です


・BOOT0
これは起動するプログラムを選択します
F1であればBOOT0はGNDに短絡でもいいのですが、F4はシステムROMにUSB接続プログラムが書かれているため、BOOT0をH BOOT1をLにする場合があります
ということでBOOT0は47k程度でプルダウンとしておきます
もちろんST-Link等のデバッガを使う場合はその限りではないので、BOOT0をGNDに短絡しても構いません

・BYPASS_REG
このピンは内蔵されたレギュレータのON/OFFを行うようです
レギュレータ止めてどうするんだよ… と思いますが、その場合は外部電源でコアを走らせることができるようです
で、内蔵レギュレータを使用する場合はBYPASS_REGをLにします
Hにすると停止です

・PDR_ON
このピンも電源周りのようです
DISCOVERYの回路図を見るとGNDに落ちているので、これを真似ることにします

・NRST
リセット端子です
例に漏れず負論理なのでプルアップで処理します… といいたいところですが、オープンで問題ないようです
これは内蔵プルアップ抵抗(min30/typ40/max50)で釣り上げられているためです

・VCAP
64pinではVCAPが1本 それよりも大きいパッケージでは2本あります
これは内蔵レギュレータのコア側のパスコンのようです
データシートには2.2uFと0.1uFの接続を指定されています
とりあえず2.2uFを使用しています

・VREF+
ADCのリファレンス電圧だと思います
なんか別にも使われてる気がしますが、そこまでまだ調べていません
これはVDDAに短絡させています

・VSSA
アナログ電源のGNDです とりあえずVSSに短絡しています

・VDDA
アナログ電源です この電源はかなり綺麗にする必要があるようです
とりあえず47Ωと47uFでLPFを形成していますが、本来はインダクタとかを使ったほうが良いと思います

・VSS/VDD
電源です
各VDD・各VSSは内部で接続されています
なので最低限動作させるだけであれば1組のVDDとVSSに適当な電圧を入力すれば動作します
しかしダイとボンディングワイヤで接続されているだけなので、抵抗値はそこそこ高いようです
なのでQFP176で例えれば136のVDDに3.3Vを入れて、36のVDDからLPF経由で39のVDDAに入れる ということをするとドロップ電圧が無視できません


確実に動作させるコツは「確実な電源ライン」です


それとソフトウェア的なことですが
Cubeの出力するファイルにはSTM32F401RBTに使えるスタートアップコードがありません
とりあえずSTM32F401RETのバイナリを焼いています
またCubeが生成したLDファイルでは配置があまりよろしくないようです

この辺りは追々修正することを期待するか、自前でなんとかする必要があります



F401RBTやF429IITは結構扱いづらいです
QFP176なんて簡単に扱えないですし F401RBTは正直機能が… という感じがします

個人的にはSTM32F415RGTあたりが使いやすそうな気がします
QFP64なので簡単に扱えますし、内部ペリフェラルも豊富です

0 件のコメント:

コメントを投稿