Atmel Studio入門:ファームウエアの書き込みとヒューズ設定

AVRISP mkIIやJTAGICE3といったライタやデバッガをパソコンにつなげば、Atmel Studioからファームウエアの書き込みとヒューズ設定が行えます。

デバイスのインストール

はじめてライタやデバッガをパソコンつないだ時、デバイスのインストールが開始されます。

(Device Settings)
ast_write_mkii_1
デバイスのインストールが正常に終了してから使用します。

“Properties”の”Tool”設定

デバッガやライタ(プログラマ)の設定は、”Project”→”(Project Name) Properties”の”Tool”タブで行えます。

“Selected debugger/programmer”でAVRISP mkIIなどのライタかJTAGICE3などのデバッガを選択します。

(Selected debugger/programmer)
ast_write_mkii_2

パソコンに接続しているライタかデバッガしかリストに表示されません。数字の部分はシリアル番号で変わります。

デバッガやライタの選択が終わったら、”Interface”の設定を行います。なおAVRISP mkIIなどのライタでは、”ISP”しか選択できない場合もあります。

(Tool Settings)
ast_write_mkii_4

ターゲットデバイスのクロック周波数の4分の1以下に、クロック・スピードを設定しておく必要があります。この例では、”ISP Clock”ですが、デフォルトは十分低くなっています。

(Tool Settings, All)
ast_write_mkii_4
設定が終了したら、忘れずに設定を保存しておきます。

(Save Selected Items)
ast_write_mkii_3

以上で”Project”→”Properties”の”Tool”の設定は終了です。

ライタやデバッガの更新

ライタやデバッガのファームウエアも定期的に更新されます。

ライタやデバッガを接続した状態で、”Tools”→”Device Programming”を選択します。
(Tool s→ Device Programming)
ast_write_mkii_5

“Device Programming Window”が表示されます。

(Device Programming Window)
ast_write_mkii_6

更新がある場合、”Firmware Upgrage”が表示されます。”Upgrade”ボタンをクリックしてアップグレードを行いますが、パソコンの電源が切れたり、USBケーブルが外れない様に注意して行いましょう。

(Firmware Upgrade)
ast_write_mkii_7

ファームウエアの更新が終了すると、”(Debuuger/Programmer Name) is updated”と表示されるので、”Close”ボタンをクリックします。

(Firmware Upgrade, Close)
ast_write_mkii_8
以上でアップグレード作業は終了です。

Atmel Studioの”Device Programming”設定

話を元に戻して、Atmel Studioからファームウエアを書き込む方法について説明していきます。”Tools”→”Device Programming”を選択します。

(Tool s→ Device Programming)
ast_write_mkii_5

“Device Programming”ウインドウが表示されます。
“Tool”、”Device”、”Interface”の設定があっている事を確認して、”Apply”ボタンをクリックします。

(Device Programming Window)
ast_write_mkii_6

ライタやデバッガとの接続が正常に確立されると設定が可能になります。

“Interface settings”では、書き込み時のクロック・スピードの設定が行えます。ターゲットデバイスのクロック周波数の4分の1以下か確認しておきます。

(Interface Settings)
ast_write_mkii_interface_x

“Tool information”では、接続しているライタやデバッガの情報を確認できます。

(Tool information)
ast_write_mkii_tool_x

“Device information”で、ターゲットデバイスの情報を確認できます。

(Device information)
ast_write_mkii_dev_x

“Oscillator Calibration”の設定メニューもあります。必要に応じて設定します。

(Oscillator Calibration)
ast_write_mkii_osc_x

“Memories”で、Flashへファームウエアをターゲットデバイスに書き込む事ができます。

(Memories)
ast_write_mkii_mem_x

“Fuses”では、ヒューズビットの設定を行えます。

(Fuses)
ast_write_mkii_fuses_x

その他にも、”Lock bits”と”Production File”の設定メニューがありますので、必要に応じて設定を行います。

ファームウエアの書き込みを行う”Memories”とヒューズ設定を行う”Fuses”は使用頻度が非常に高いので、もう少し詳しく見ていく事にします。

Atmel Studioでのファームエア書き込み

Flashへのファームウエアの書き込みは、”Memories”から行います。

(Memories)
ast_write_mkii_mem_x

書き込みに使用するelfファイルやhexファイルは、”…”ボタンをクリックして指定する事ができます。通常デフォルトでプロジェクトのものが指定されていますが、複数のプロジェクトを開いて作業している時などは念のため確認しておきます。

(elf or hex file)
ast_write_mkii_mem_1

elfファイルと、hexファイルを指定できますが、通常、elfファイルがデフォルトで指定されている様です。

(Select elf or hex file)
ast_write_mkii_mem_2

指定したelfファイルやhexファイルは、”Program”ボタンをクリックするとターゲットデバイスに書き込まれます。

(Flash, Program)
ast_write_mkii_mem_3

下部に書き込み状況が表示されます。
Erasing Device… OK
Programming Device… OK
Verifying Flash… OK
と表示され、最下段にも”Verifying Flash…OK”と表示されれば正常に書き込みとベリファイが終了した事になります。

(Flash, Verifying Flash… OK)
ast_write_mkii_mem_4
Flash書き込みは、ケーブルが外れたりしない様に注意して行ってください。

Atmel Studioでのヒューズ設定

Atmelマイコンでは、ヒューズビットの設定でクロック周波数を始めとするデバイスの設定を行いますが、これらは、”Fuses”から行います。

(Fuses)
ast_write_mkii_fuses_x

設定は、”Fuse Name”の項目にチェックを入れるか、リストから選択するかで行っていきます。なお”Fuse Name”の設定項目は、ターゲットデバイスのヒューズ仕様により変わります。

(Fuse Settings)
ast_write_mkii_fuses_1

その下段には、”Fuse Register”の設定値が16進数で表示されています。この例の場合、”EXTENDED”、”HIGH”、”LOW”のビットが各々の16進数の値に設定されています。

“Program”ボタンをクリックするとデバイスのヒューズビットの設定が開始されます。

(Fuse, Program)
ast_write_mkii_fuses_2

ヒューズ設定の場合も、正常にビットが書き込まれてベリファイも終了すると、最下段に”Verify registers … OK”と表示されます。

(Fuse, Verify Registers… OK)
ast_write_mkii_fuses_3

以上がファームウエア書き込みとヒューズ設定の手順となります。実際の開発においては、この作業の前に、ライタ/デバッガとターゲットデバイスを正しく接続しておく必要があります。LPCXpresso等のデバッガ(ライタ兼)とターゲットマイコンが一体化したボードは、この点が初心者にとって「やさしい」と言えます。Atmelマイコンとライタやデバッガとの接続については、後日取り上げたいと思います。

→その他のAtmelマイコン関連情報

Sponsored Link