トラブルシューティングのページです。フォーラムのような使い方でじゃんじゃん技術的な質問を書き込んじゃってください。

よく起こるトラブルをまとめておきます。

どんどん追記してください。

電工(数Vから数十V程度の低電圧)


IC関係

+ ICが熱くなった
⇒CMOSの場合ラッチアップが考えられます。入力がZの場合や、電源がZで入力にHやLが入っている時などに起こりやすいです。
⇒逆挿しや、VccとGNDを間違えている可能性があります。
⇒回路や配線のミスによりICを通って電源がショートしている可能性があります。
⇒間違ったIC、あるいはもともと死んでいたICを挿した可能性があります。
⇒挿した電源の電圧を間違ったかもしれません。この場合他の部品も耐圧の低いものは壊れてしまうので確認しましょう。

+ 電源を入れてからしばらくするとIC、マイコンが熱くなる
⇒熱くなる時点でICを通って電源がショートしている可能性があります。出力のピンを確認しましょう。
⇒マイコンの場合そこでプログラムミスによってショートが発生する事があります。
⇒微妙に配線(特に電源周り)が違う時など、特にAVRではなぜか動作する事があります(筆者は「GNDピンが両方開放になっているのに動いた」「電源ピンが1つずつずれていたけど動いた」を見たことがあります)。確認しましょう。
⇒もともと排熱の大きいIC/マイコンです。放熱板等で放熱に気を使いましょう。

表示部関係


+ LEDが光らない
⇒LEDのアノード、カソードを確認してください。
⇒保護抵抗が大きすぎないか確認してください。
⇒LED周りの配線を確認してください。
⇒LEDが壊れていたか壊れた可能性があるので取り替えてください。
⇒LEDがもともと可視光を出さない種類(赤外線LEDなど)の可能性があります。
⇒電流が不足していないか確認してください。特にAVRの出力は1つのピンで40mA位のことが多いのでLEDを1つのピンに大量につける時などはトランジスタなどで増幅しましょう。
⇒本当にLEDに正しい入力がされているかロジックチェッカーなどで調べましょう。

その他能動部品関係

+ トランジスタが発熱した
⇒過電流の可能性があります。Icなどを確認して保護抵抗の値を調整しましょう。自身の熱でトランジスタが壊れてしまうことがあるのでその場合は取り替えましょう。
⇒もともと発熱の大きいトランジスタです。放熱板をつけましょう。

その他受動部品関係


高電圧


メカトロ


モーター


+ モーターが回らない
⇒マイコンの出力では電流が不足して回りません。トランジスタやモータードライバなどを使って増幅しましょう。
⇒全体の電流が足りません。電源を分けるなどしましょう。
⇒モータードライバが発熱して電流を流せなくなっている、あるいは壊れてしまっている可能性があります。モータードライバに放熱板をつけましょう。
⇒モーターが壊れています。とりかえましょう。
⇒モーターのトルクが足りず重さに耐えられず回れません。ギヤボックスを使うかモーターを変えましょう。

マイコン、マイコンのプログラミング(AVR)


マイコンの挙動

+ マイコンがあるところでフリーズする
⇒プログラムが無限ループしている可能性があります。特にwhile(i=5)のような=と==の間違いが起こりやすいです。

+ あるピンの出力がおかしい
⇒そのピンの兼用ポート機能が動作している可能性があります。レジスタ設定を確認してください。
⇒mega644Pなどの場合JTAGが動作している可能性があります。ヒューズビットを確認してください。
⇒1つのピンから流せる電流量の限界を超えています。トランジスタなどで増幅してください。

+ マイコンが突然リセットされる
⇒リセットピンの入力が不安定な可能性があります。リセットピンをプルアップしてください。
⇒ノイズの影響の可能性があります。バイパスコンデンサをつけてください。
⇒電流不足の可能性があります。電源を分けることなどを考えましょう。

+ 全く意味の分からない挙動をする
⇒プログラムに不審な点が無いか再確認しましょう。
⇒書き込むファイルがあっているか確認しましょう。

C言語でのプログラム作成

+ よくあるミス
⇒=と==の間違い
⇒;のつけ忘れ

+ エラー[stray '\201' in programやstray '@' in program]が大量に同じまたは近い場所に出る
⇒全角スペースは画面上では見えないのにコンパイラは認識してエラーが出るのでその付近にカーソルを合わせ全角スペースや変な記号が無いか確認してください。(このエラーは俗にアットマークエラーと呼ばれている)

書き込み(AVRISPmkII)


+ AVRISPmkIIが見つからない
⇒ライターが壊れていないか確認しましょう。
⇒USBポートを変えてみましょう。

+ 電圧が0Vと出てしまう
⇒BoxコネクタのVcc,GNDあたりを調べましょう。
⇒ライターが壊れている可能性があるので取り替えましょう。

+ 電圧が怪しい[0.1Vとか1.3Vとか]
⇒電源の電圧があっているか確認しましょう。
⇒BOXコネクタの配線(特にVcc,GNDピン)を確認しましょう。
⇒ライターが壊れている可能性があるので取り替えましょう。
⇒スイッチング電源が壊れている可能性があるので変えてみましょう。
⇒コンデンサ等の影響で電源を抜いた直後も少し電圧が残ることがあるので、電源が抜けていないか確認しましょう。

+ デバイスのIDが読み込めない
⇒Boxコネクタの接触不良の可能性があるのでテスターで調べましょう。
⇒書き込み周波数が高すぎないか確認しましょう。書き込み周波数はAVRの周波数の4分の1以下でないといけません(クロック周波数を特にいじっていないなら250kHzか125kHzがよい)。
⇒ライターが壊れている可能性があるので取り替えましょう。
⇒AVRが壊れている、あるいはヒューズビットの設定が変更されてプログラミングできません。AVRを変えましょう。

+ デバイスのIDを読み込むと赤くハイライトされた上でエラーが出る
⇒読み込まれたIDと設定したマイコンのIDが違います。設定を確認して再度Applyをしましょう。

+ デバイスIDの読み込みはできるのに書き込めない

+ ライターのUSBケーブル側のライトが光らず、書き込みができない
AVRISPmkⅡは、一度Atmel studio7で使うと二度とAtmel studio6では使えなくなります。
7で使う場合は計画的にアップデートしましょう。

書き込み(HIDaspex)


+ デバイスが読み込めない
⇒HIDaspexの配線が間違っている可能性があります。確認しましょう。
⇒作品側の配線が間違っている可能性があります。確認しましょう。


質問用コメント欄


名前:
コメント:
  • AVRのATmega1284pが書き込めません。
    Atmel Studioで書き込もうとすると「Erasing Device...Failed」みたいなコメントが表示されてしまいます。
    どうすればいいですか?
    (ライターはAVRISP MKII、Atmel Studioのバージョンは6.1です) -- ねりわさび(サンプル) (2015-10-02 21:51:18)

タグ:

+ タグ編集
  • タグ:
最終更新:2016年05月08日 21:44