メディア

マイコンボードが動作しないときの5つのチェックポイントQ&Aで学ぶマイコン講座(80)(3/3 ページ)

» 2023年05月11日 10時00分 公開
前のページへ 1|2|3       

リセット端子電圧

 リセットピンNRSTの電圧がピン入力LOW電圧VIL(NRST)のMax値よりも下であることを確認します。また、STM32G0マイコンではリセット回路を内蔵しているため、外部のリセットICを使用する場合には、外部リセットICはプッシュプル出力ではなく、オープンドレイン出力であることを確認してください。

ブートモード条件

 マイコンのブートモードを設定するブートピン電圧、オプションバイト、フラッシュメモリが空かどうか(0xffで埋められている状態)が想定したモードに対応していることを確認します。マイコンにユーザーが作成したプログラムを書き込むときには、マイコンに内蔵されたプログラムを書き込むためのブートローダーを起動させるブートモード条件にする必要があります。STM32G0マイコンではブートモードをシステムメモリからの起動に設定すると、各種外部インタフェースからプログラムを書き込めます。

ブートモードピンをGPIOとして使用している場合の注意点

 ピン数の少ないマイコンでは、ブートモードの設定ピンをGPIOとして使用できる場合があります。STM32G0マイコンの場合では、BOOT0ピンはGPIO機能としても使用可能です。この機能を使用する場合、条件によっては、プログラムを再度書き換える際に、BOOT0ピンへの配線修正が必要になるケースがあります。

 STM32G0マイコンでは、フラッシュメモリの中身が空(0xffで埋められている)の場合には、BOOT0ピンの状態にかかわらず、システムメモリからの起動となるため、各種外部インタフェースからプログラムを書き込むことができます。しかし、1度プログラムを書き込んだ後は、フラッシュメモリの中身が空ではないため、BOOT0ピン電圧がLow状態の場合、メインのフラッシュメモリからの起動となります。この場合は、ユーザーが作成したプログラム中に、プログラムを書き込むためのブートローダーを起動する処理が含まれてない場合、プログラムを書き換えることができません。プログラムを書き換えるためのブートローダーを起動するため、システムメモリからの起動とさせるには、BOOT0ピン電圧がHi状態になるように配線修正が必要になります。

クロック発振

 外部オシレーターを使用せず、内部オシレーターのみを使う設定にして、起動するかどうかを確認してください。内部オシレーターのみを使う設定の場合に起動し、外部オシレーターを使用する設定にして起動しない場合、外部オシレーターが正常に動作していない可能性があります。STM32G0マイコンのように、内部オシレーターを使用して起動可能で、オシレーター出力端子MCOのあるマイコンの場合は、外部オシレーターのクロック信号を、オシレーター出力端子MCOよりクロックを出力させる設定にして、クロックが発振していることを確認してください。

⇒次の記事を読む

Q&Aで学ぶマイコン講座:過去の質問一覧はこちら

前のページへ 1|2|3       

Copyright © ITmedia, Inc. All Rights Reserved.

RSSフィード

公式SNS

EDN 海外ネットワーク

All material on this site Copyright © ITmedia, Inc. All Rights Reserved.
This site contains articles under license from AspenCore LLC.