AVRマイクロコントローラー用のミニチュアUSBプログラマー

劇場はハンガーから始まるので、マイクロコントローラーのプログラミングは優れたプログラマーを選ぶことから始まります。 ATMELマイクロコントローラーを習得し始めたので、メーカーが提供するものを十分に理解する必要がありました。 彼らは、すべてが面白くておいしいものをたくさん提供していますが、それは絶対に高い価格です。 たとえば、ストラップとして抵抗とダイオードのペアを備えた20フィートのマイクロコントローラーを1つ備えたスカーフは、「飛行機」のように見えます。 したがって、プログラマーの自己組織化の問題が生じました。 無線アマチュアの経験に関する長い研究の後、Atmega8マイクロコントローラー(atmega88およびatmega48のファームウェアオプションもあります)を頭脳とする実績のあるUSBASPプログラマーを組み立てることになりました。 マイクロコントローラーの最小限のバインディングにより、かなり小型のプログラマーを組み立てることができます。プログラマーはいつでもフラッシュドライブのように携帯できます。



このプログラマの作者はドイツのトーマス・フィヒルで、図、プリント基板ファイル、ドライバを含む開発ページです

ミニチュアプログラマーを組み立てることが決定したら、TQFP32パッケージでAtmega8マイクロコントローラーの回路を再描画しました(マイクロコントローラーのピン配列はDIPの場合のピン配列とは異なります)。







ジャンパーJ1は、1.5 MHz未満のクロック周波数でマイクロコントローラーをフラッシュする必要がある場合に使用されます。 ちなみに、このジャンパーは通常、MKの25フィートを地面に植えることで除外できます。 その後、プログラマは常に低い頻度で作業します。 個人的には、低速でのプログラミングは一瞬長くなるので、今ではジャンパーをぐいと動かさず、常にジャンパーで縫います。

ツェナーダイオードD1およびD2は、プログラマーとUSBバスの間のレベルを調整するために使用されます。これらはダイオードなしでも動作しますが、すべてのコンピューターでは動作しません。

青いLEDは回路のプログラミングの準備ができていることを示し、プログラミング中は赤が点灯します。 プログラミング接点はIDC-06コネクタに接続され、ピン配列は6ピンISPコネクタのATMEL標準に準拠しています。







プログラマブルデバイスに電力を供給するための接点はこのコネクタにルーティングされます。ここでは、コンピュータのUSBポートから直接取り出されるため、注意して短絡を許可しないようにする必要があります。 制御マイクロコントローラのプログラミングにも同じコネクタが使用されます。このため、コネクタのリセットリードとミクロンを接続するだけで十分です(図の赤い点線を参照)。 著者のスキームでは、これはジャンパーによって行われますが、ボードを混乱させずに削除しました。 単一のファームウェアの場合、単純なワイヤジャンパで十分です。 ボードは45x18 mmの両面であることが判明しました。







プログラマの速度を下げるためのプログラミングソケットとジャンパーは、デバイスの最後に移動され、非常に便利です







ファームウェア制御マイクロコントローラー


したがって、デバイスを組み立てた後、最も重要なことは残っています-制御マイクロコントローラーをフラッシュすることです。 これらの目的のために、LPTポートを備えたコンピューターを持っている友人が適しています:) AVRの最も単純な5線式プログラマー

マイクロコントローラーのリセットピン(29脚)とコネクターを接続することにより、マイクロコントローラーをプログラミングコネクターからフラッシュできます。 ファームウェアは、Atmega48、Atmega8、およびAtmega88モデル用に存在します。 Atmega48のバージョンのサポートは廃止されており、最新のファームウェアバージョンは2009年以降であるため、最後の2つの石のいずれかを使用することをお勧めします。 また、8番目と88番目のストーンのバージョンは絶えず更新されており、著者は機能にインサーキットデバッガを追加することを計画しているようです。 ファームウェアはドイツ語のページにあります。 制御プログラムをマイクロコントローラーに入力するために、PonyProgプログラムを使用しました。 プログラミング時には、12 MHzの外部クロックソースから動作するように水晶を起動する必要があります。 PonyProgのヒューズジャンパー設定を使用したプログラムの画面:







点滅後、マイクロコントローラーの23番目の脚に接続されているLEDが点灯します。 これは、プログラマーが正常にフラッシュされ、作業の準備ができていることの確実な兆候になります。



ドライバーのインストール


インストールは、Windows 7を搭載したマシンで実行され、問題は発生しませんでした。 初めてコンピューターに接続すると、新しいデバイスが検出されたことを示すメッセージが表示され、ドライバーをインストールするように勧められます。 指定された場所からインストールを選択します。







fireがあるフォルダーを選択し、「次へ」をクリックします







フラッシュでは、インストールされたドライバーにソフトドライバーのデジタル署名がないことを警告するウィンドウが表示されます。







警告を打ってインストールを続行します。しばらくすると、ドライバーのインストール操作が正常に完了したことを知らせるウィンドウが表示されます







すべて、これでプログラマーは働く準備ができました。



Khazama AVRプログラマー


プログラマーと協力するために、私はKhazama AVR Programmerを選択しました 。 最小限のインターフェースを備えた素晴らしいプログラム。



実行中のすべてのAVRマイクロコントローラーで動作し、フラッシュとeepromのフラッシュ、メモリーの内容の表示、チップの消去、ヒューズビットの構成の変更が可能です。 一般に、完全に標準的なセット。 ヒューズは、ドロップダウンリストからクロックソースを選択することで設定されるため、誤って水晶をロックする可能性が大幅に減少します。 Fusionは、下部フィールドにジャックドーを配置することで変更できますが、存在しない構成ではジャックドーを配置できません。これは、セキュリティの面でも大きなプラスです。







ご想像のとおり、ミクロン単位のメモリ内のヒューズの記録は、[すべて書き込み]ボタンを押すことで実行されます。 「保存」ボタンは現在の構成を保存し、「ロード」は保存された構成を返します。 確かに、これらのボタンの実用的なアプリケーションを思い付くことができませんでした。 Defaultボタンは、工場のマイクロコントローラー(通常は内部RCから1 MHz)が使用するようなヒューズの標準構成を記録するために使用されます。

一般的に、このプログラマーを使用している間は常に、安定性と速度の面で最高の側面から自分自身を示しました。 古代の固定PCと新しいラップトップの両方で問題なく機能しました。



SprintLayoutのPCBファイルはここからダウンロードできます







まあ、すべてがそうであるように、質問が生じた場合、私は答えようとします。



All Articles