Aduin(アルドゥイーノ)・マイコンボードの自作

Arduino(アルドゥイーノ) マイコンボードを自作回路で実験をしてみました。 マイコンボードの RESET 端子に入る信号は下表に示します。 回路の注意点は

@RS-232C の RST か DTR を コンデンサ (0.1μF) を介し PC6 (RESET) につなぎます。
Aシステムクロックは 16MHz にします。
BCPU は ATmega328P を使用します。
ブートローダの書き込みは AVRISPmkU を使用しました。

水晶発振器(16MHz)を使用の ATmega328P AVR 基板にプログラムのを書くとき Fuse は 0xFD、 0xD9、0xF7 としています。(このプログラムのを書くとき Fuse 値の組合せは沢山あるので、ブートローダの書き込み用 Fuse 値 も沢山できてしまいます。)

詳しい内容は
水晶発振器(16MHz)を使用の ATmega328P AVR 基板にプログラムのを書くとき Fuse は 0xFD、 0xD9、0xF7 としています。
そのFuseの値に下記の@ABを施しますとブートローダの書き込み Fuse が得られます。
@BODLEVEL bitを立てる(Brown-out detection at VCC=2.7V)
ASPIEN bitを立てる
BBOOTSZ bitを立てるですが既にその bit はたっているのでなにもしません(Boot Flash size=2048 words start address=$3800)


ブートローダの書き込み Fuse

EXTENDED 0xFD
HIGH 0xD8
LOW 0xF7

Lock Bits は 0xFF のままでも良さそうです。

ブートローダ・プログラム ATmegaBOOT_168_atmega328.hexは
Arduino IDE (統合開発環境)1.0.5
の場合は、
C:/arduino-1.0.5/hardware/arduino
/bootloders/atmega/ATmegaBOOT_168_atmega328.hex
に有ります。

Arduino IDE (統合開発環境)1.6.5
の場合は、
C:/Program File(x86)/arduino/hardware/arduino
/avr/bootloders/atmega/ATmegaBOOT_168_atmega328.hex
に有ります。

Arduino IDE (統合開発環境)1.8.5
の場合は、
C:/Program File(x86)/arduino/hardware/arduino
/avr/bootloders/atmega/ATmegaBOOT_168_atmega328.hex
に有ります。

Arduino IDE (統合開発環境)1.8.10
の場合は、
C:/Program File(x86)/arduino/hardware/arduino
/avr/bootloders/atmega/ATmegaBOOT_168_atmega328.hex
に有ります。

これで用意した
@Fuse;0xFD, 0xD9, 0xF7
ALock Bits:0xFF
BATmegaBOOT_168_atmega328.hex (5533バイト、ヘキサファイル)を
ATMEL STUDIO 7 で書き込みます。



Arduino IDE (統合開発環境)1.8.5を立ち上げて
ツール→ボード:"Arduino/Genuino Uno"でブートローダを書き込むボードを選びます。を選びます。

回路図のように13番ピンにLEDをつなぎ、ファイル→スケッチ例→01 Basics→Blinkを読み込み、 '↓'ボタンをクリックすと(コンパイル、書き込み、実行すると)LEDが点滅します。

これで Arduino 基板の準備できました。
Arduino IDE (統合開発環境)1.0.5又は1.6.5を立ち上げて
ツール→マイコンボード→でブートローダを書き込むボードを選びます。

回路図のように9番ピンにLEDをつなぎ、ファイル→スケッチ例→01 Basics→Fadeを読み込み、 '↓'ボタンをクリックすと(コンパイル、書き込み、実行すると)LEDがフェードします。

RESET信号
マイコンボードRESET端子に入る信号(SW)
Arduino Duemilanove w/ ATmega328 (注)DTR
Arduino Nano w/ ATmega328RTS
Arduino FioRTS or DTR
LilyPad Arduino w/ ATmega328RTS
Arduino Pro or Pro Mini (5V, 16MHz) w/ ATmega328RTS
Arduino Pro or Pro Mini (3.3V, 8MHz) w/ ATmega328RTS

注:秋月のATmega168/328マイコンボードキットが相当品


arduino_kairo.gif

回路図