1: 2009-07-06 (月) 15:09:50 takaboo[5] [6] | 現: 2013-12-26 (木) 23:06:00 takaboo[5] [7] | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | TITLE:AVR Bootloader | + | TITLE:AVR Bootloader |
#norelated | #norelated | ||
#contents | #contents | ||
**はじめに [#m3cef047] | **はじめに [#m3cef047] | ||
- | Atmega168, Atmega32, Atmega644, Atmega128, AT90CAN128マイコンボードシリーズに対応した弊社オリジナルブートローダです。~ | + | Atmega168, Atmega32, Atmega32A, Atmega644, Atmega128, Atmega128A, AT90CAN128マイコンボードシリーズに対応した弊社オリジナルブートローダです。~ |
マイコンに備わったUARTを経由してホストからマイコンボードのフラッシュROMへユーザプログラムを転送及び書き込んだり、書き込まれたユーザプログラムを実行するといった機能を持ちます。~ | マイコンに備わったUARTを経由してホストからマイコンボードのフラッシュROMへユーザプログラムを転送及び書き込んだり、書き込まれたユーザプログラムを実行するといった機能を持ちます。~ | ||
付属のバッチファイルにてソースプログラムからコンパイルでき、ユーザ自身による改造も可能です。~ | 付属のバッチファイルにてソースプログラムからコンパイルでき、ユーザ自身による改造も可能です。~ | ||
ファイルの送受信にはXMODMプロトコルを使用しますが、全てのXMODEMに対応したターミナルクライアントに対応するものではありません。 | ファイルの送受信にはXMODMプロトコルを使用しますが、全てのXMODEMに対応したターミナルクライアントに対応するものではありません。 | ||
+ | |||
**基本仕様 [#z016a91a] | **基本仕様 [#z016a91a] | ||
***適用コンパイラとコンパイル方法 [#abd18765] | ***適用コンパイラとコンパイル方法 [#abd18765] | ||
弊社提供のGCC Developer Lite最新版のインストール先に「C:\Program Files\BestTech」フォルダを指定し、インストールコンポーネントとして「ATMEGAxxxでのみ使用」、もしくは「フルインストール」が選択されている必要があります。 | 弊社提供のGCC Developer Lite最新版のインストール先に「C:\Program Files\BestTech」フォルダを指定し、インストールコンポーネントとして「ATMEGAxxxでのみ使用」、もしくは「フルインストール」が選択されている必要があります。 | ||
***ソースのダウンロード [#DOWNLOAD] | ***ソースのダウンロード [#DOWNLOAD] | ||
+ | -V1.3.1 | ||
+ | #ref(AVR_BL_1.3.1.ZIP) | ||
+ | 公開日: 2013/12/26~ | ||
+ | 更新内容:AT90CAN128,ATmega128Aの未対応を修正 | ||
+ | |||
+ | -V1.3 | ||
+ | #ref(AVR_BL_1.3.ZIP) | ||
+ | 公開日: 2013/8/22~ | ||
+ | 更新内容:コマンドモードへの遷移方法をハードリセットに統一 | ||
+ | |||
+ | -V1.2 | ||
#ref(AVR_BL_1.2.ZIP) | #ref(AVR_BL_1.2.ZIP) | ||
公開日: 2009/6/21 | 公開日: 2009/6/21 | ||
Line 21: | Line 33: | ||
***ブートローダの動作フロー [#g0458e4a] | ***ブートローダの動作フロー [#g0458e4a] | ||
+ | マイコンがリセットされるとユーザプログラムへ実行が遷移するか、ブートローダがコマンドモードになるかの2つの状態に動作が分岐します。条件は以下の通りです。 | ||
+ | -V1.2以前~ | ||
#ref(AVR_UART_BOOT_FLOW.vsd,100%) | #ref(AVR_UART_BOOT_FLOW.vsd,100%) | ||
- | マイコンがリセットされるとユーザプログラムへ実行が遷移するか、ブートローダがコマンドモードになるかの2つの状態に動作が分岐します。 | + | ユーザプログラムへ実行が遷移する前にユーザ自らの操作でコマンドモードに遷移させる場合は、リセット直後に'!'を素早く3回入力する必要があります。ユーザプログラムが書き込まれていなければ、常にコマンドモードとなります。それ以外は全てユーザプログラムが実行されます。 |
- | ユーザプログラムへ実行が遷移する前にユーザ自らの操作でコマンドモードに遷移させる場合は、リセット直後に'!'を素早く3回入力する必要があります。ユーザプログラムが書き込まれていなければ、常にコマンドモードとなります。 | + | -V1.3以降~ |
+ | #ref(AVR_V1.3_BOOT_FLOW.png,100%) | ||
+ | 電源印加状態でリセットボタンの押下、もしくはユーザプログラムが書き込まれていなければ、コマンドモードとなります。それ以外は全てユーザプログラムが実行されます。 | ||
**使用方法 [#d6e29a48] | **使用方法 [#d6e29a48] | ||
[[SIMPLE TERM>GDL#STERM]]からのキー入力にて各種機能を実行します。 | [[SIMPLE TERM>GDL#STERM]]からのキー入力にて各種機能を実行します。 | ||
Line 54: | Line 71: | ||
フラッシュROMに書き込まれたプログラムを実行します。 | フラッシュROMに書き込まれたプログラムを実行します。 | ||
**その他 [#j44a4324] | **その他 [#j44a4324] | ||
+ | ***ヒューズビット [#l2d95a31] | ||
+ | 付属のブートローダを書き込むバッチファイルでは、JTAGインターフェースを内蔵するターゲットに限りJTAGENビットを禁止に設定しています。これはJTAGに必要な端子がGPIOを兼用しており、許可状態では汎用的に使用できる端子が少なくなってしまうための措置となります。~ | ||
+ | なお、弊社のAVRマイコンボードシリーズでJTAGを使用するには、JTAGではなくシリアルプログラミング(ISP)でのみ本JTAGENビットを許可できます。 |
(This host) = http://www.besttechnology.co.jp