これPCB基板設計組み込みマイクロコントローラに必要な巨大プロジェクト. 最新のマイクロコントローラ, データシートと技術文書だけでは.
回路を設計するのを始める前に、マイクロコントローラとのインターフェースを有する全ての周辺機器を含む話題の全ての主要なコンポーネントの操作のフローチャートを描くことは、最もよい。
アームCortex - Mマイクロコントローラ
この記事はPCBに焦点を当てます回路 基板 設計の考慮事項 アームCortex - Mマイクロコントローラ. アームCortex - Mマイクロコントローラsは、異なるチップメーカーから異なるバージョンで利用できます.
典型的な8ビットマイクロコントローラと比較して、32ビットアーキテクチャによるARM Cortex - Mは、集中的で計算的に集中的な仕事に特に適しています。より多くの記憶容量を必要とするか、将来の拡張ニーズのためにシステムプラットフォームマイグレーションを単純化することができるアプリケーションがあるならば、32ビットマイクロコントローラも利点を持ちます。
我々が議論しているARM Cortex - MマイクロコントローラはST Microelectronicsによって生産されるSTM 32家族です;より正確に、我々はSTM 32 F 4シリーズに集中します。
しかし、STM 32ファミリは、実際には、STM 32 F 4シリーズと比べて、超低消費電力STM 32 Lシリーズとより高い性能と低い性能を持つ多くのモデルを含んでいます。最も効率的なバージョンはSTM 32 F 7です。そして、それは1秒につき10億の命令を実行することができます。最も効率的なモデルの中で、STM 32 L 0は、1秒につき2600万の命令だけを実行します。
パワーデザイン
回路の電源はハードウェア設計の最も重要な側面の一つである電源の供給と接地の設定を決定するために設計の後期まで待たないでください。
マイクロコントローラによって使用される電流は、動作電圧、クロック周波数、及び入出力ピン上の負荷などの複数の要因によって決定される。
電力デカップリングを提供するために、MCU上の各電源VDDピンに可能な限り近接して配置された1 UFおよび100 NFセラミックコンデンサ(図1のC 7およびC 8など)があるべきである。加えて、4.7 UFセラミックコンデンサ(図1のC 1)は、VDDを供給する主回路配線上のIC位置の近くに設置されるべきである。
アナログ/デジタル変換器(ADC)を有するマイクロコントローラは、通常、独立した電力(VDDA)および接地ピン(VSSA)をアナログ信号に対して排他的に有する。これらのピンはノイズの特別な回避を必要とする。
あなたの電源電圧がマイクロコントローラの入力電圧の上限より高いならば、あなたは通常降圧型のリニアレギュレータを必要とします。例えば、テキサスインスツルメンツ社によって製造されたTPS 795 xxは、特に低いノイズ特性を有し、500 mAの電流まで供給することができる。
あなたの電源電圧がマイクロコントローラによって、必要な電圧よりかなり高い場合、降圧型スイッチングレギュレータはより良い選択である。入力電圧が出力電圧よりかなり高いとき、リニアレギュレータはあまりに多くの力を浪費します。
しかし、リニアレギュレータによって供給される電圧ノイズが非常に低いので、通常、リニアレギュレータによってスイッチングレギュレータの出力電圧をサブレギュレートするのがベストである。
クロック
STM 32 F 4は、内部または外部のシステムクロックで実行できます。起動時に使用されるシステムクロックは、内部クロック((16 MHz))です。系が初期化されたあと、外部クロック源はソフトウェアを通じて選ばれることができる。
STM 32 F 4上のクロックピンは、外部から4 MHzから26 MHzの水晶結晶(図1のX 1を参照)を駆動することができ、または50 MHzまでの外部クロック源を使用することができる。
結晶の構成は、データシートの指示に厳密に従う必要がある。一般的に言えば、配線は短く、結晶上の負荷容量は、水晶製造者が推奨する値と同じであるべきである。
GPIO
マイクロコントローラ上の汎用入力及び出力(GPIO)ピンはプログラム可能であり、ソフトウェアを介して入出力として設定することができる。
例えば、図1のS 1は入力としてプログラムされたGPIOピンに接続されたボタンである。STM 32はビルトインプルアップ抵抗を提供しますので、このボタンは外部のプルアップ抵抗をインストールする必要はありません。この例のGPIO出力は、LEDを駆動するために使用される。
ほとんどのGPIOピンも他の機能を有し、チップ上の様々な周辺コンポーネントは、これらの多機能ピンを介して外部の世界と通信する。
すべての内部の機能は、各GPIOピンを使用することはできませんが、厳密なピンマッピングが観察されるので、必ず使用するピンを選択するときにデータテーブルを参照してください。
GPIOピンは、様々な負荷を駆動するために使用することができ、ピンのほとんどは、最大25 Maの電流を供給または耐えることができます。しかしながら、一般的に言えば、マイクロコントローラGPIOドライブの負荷を低減するために、外部駆動回路を使用することは、より良い設計である。LEDを駆動するMN 1の例について図1を参照する。
STM 32の各ピンは、すべてのGPIOピンの全電流の上限と同様に定格電流上限を有する。
周辺コンポーネントの接続
STM 32はUART , I 2 C , SPI , USBインタフェースを通してシリアルシグナル接続を行う。
例えば、図1には、I 2 Cバスを介してマイクロコントローラに接続された温度センサ(U2−LM 75 BDP)がある。つのプルアップ抵抗器(R2、R3)は、オープンドレインドライバに接続するI 2 Cバスに必要である。
低速センサーのような大部分のアプリケーションのために、私は通信のために2本のワイヤーを使うだけであるので、シリアルプロトコルとしてI 2 Cを使うのを好みます。加えて、SPI(それは各々の周辺コンポーネントを処理する作業ポートを選ぶ付加チップを必要とする)と異なり、I 2 Cは単一のアドレスを使用する。
SPIバスは、InpuSenseによって生成されるMPU - 9250ナイン軸運動センサーに接続しています。MPU - 9250は、3軸加速度計、3軸ジャイロスコープと3軸磁力計を含みます。
プログラミングコネクタ
STM 32 F 4は2つのシステムプログラム編集( ISP )インターフェースを提供します:シリアルラインデバッグ( SWD )とJTAG。STM 32の低価格版のみSWDインターフェイスを提供します。SWDとJTAGはマイクロコントローラの2つの最も一般的に使用されるプログラミングインターフェイスです。
結論として
この記事で, と論じた PCB 回路 基板 設計マイクロコントローラの, そして、入力ボタンを読むことができるSTM 32 F 4を導入しました, ドライブ LEDs, I 2 C温度センサーとSPIモーションセンサーと通信する.