ATMEGA328PをArduinoとして動かす回路。

Arduino UNO to ATmega328Pの資料

Arduino UNO(R3)はブレドボードにATmega328Pを挿して周辺回路を揃えた状態なので、SketchをUploadしたMCUを抜き取って少しの変更で小型のボードに移植することが出来ます。
むしろその使い方が個人的には「普通」です。最小部品で小さく出来るのですからそうします。
日本では秋月電子がArduino Bootloader書込済(5V 16MHz仕様) ATmega328Pを440円で販売。



これはフラットパッケージ版や互換機では出来ません。Arduino UNO R4は無理なんです。
あとMCUが外せるようにソケットで付いている事が条件です。

そう、Arduino UNO R3純正はソケットなんです。そう。
埃がすげーな


Seed Studio Seeduino XIAOもありますが今度はピン数が14なのでこれは変更なしでそのまま開発するでしょう。

変換表はこれ。


Arduino UNO to ATmega328P Pinout Conversion Table
Uno #Uno Name328P #328P Name備考・特殊機能
RD8デジタルピン 02PD0RX (シリアル受信)
RD7デジタルピン 13PD1TX (シリアル送信)
RD6デジタルピン 24PD2外部割り込み INT0
RD5デジタルピン 35PD3外部割り込み INT1 / PWM
RD4デジタルピン 46PD4
RD3デジタルピン 511PD5PWM
RD2デジタルピン 612PD6PWM
RD1デジタルピン 713PD7
RU10デジタルピン 814PB0
RU9デジタルピン 915PB1PWM
RU8デジタルピン 1016PB2PWM / SPI (SS)
RU7デジタルピン 1117PB3PWM / SPI (MOSI)
RU6デジタルピン 1218PB4SPI (MISO)
RU5デジタルピン 1319PB5SPI (SCK) / 内蔵LED
LD1アナログピン A023PC0アナログ入力
LD2アナログピン A124PC1アナログ入力
LD3アナログピン A225PC2アナログ入力
LD4アナログピン A326PC3アナログ入力
LD5,RU2アナログピン A427PC4I2C (SDA)
LD6,RU1アナログピン A528PC5I2C (SCL)
RU3AREF21-アナログリファレンス電圧
LU3Reset1PC6リセット (リセットボタン接続)
LU43.3V--ATmega328Pには直接関係なし (Uonoのレギュレータ出力)
LU55V7VCC電源 (5V入力)
LU6,LU7,RU4GND8, 22GNDグランド
LU8VIN--ATmega328Pには直接関係なし (Unoの電源入力)
LU2IOREF--ATmega328Pには直接関係なし
RU6ICSP (MISO)18PB4表内「デジタルピン12」と同じ
RU5ICSP (SCK)19PB5表内「デジタルピン13」と同じ
RU7ICSP (MOSI)17PB3表内「デジタルピン11」と同じ
LU3ICSP (RESET)1PC6表内「Reset」と同じ
Onboard水晶振動子 (接続先)9XTAL116MHz水晶振動子の接続ピン
Onboard水晶振動子 (接続先)10XTAL216MHz水晶振動子の接続ピン
LU5AVCC20AVCCアナログ電源 (5Vに接続)

LDは左下、RUは右上で読みます。
必ず必要なパーツは16MHzのXTALとReset部分です。精密なクロックの必要性があれば水晶。そうでないならセラミックを使います。Resetは+5Vに10KΩを繋ぎ、Resetピンとタクトスイッチに繋ぎ、タクトスイッチの先はGNDに繋ぎます。


Arduino UNO R3の使いどころ。

世代交代してしまったR3ですがPIC16よりは使いやすい点も多く、クロック16MHzで使えそうな所にどんどん使うべきです。PWMを使うか、アナログ入力にボリュームを繋げるか、複雑なSWや分周器として使うか、何か電圧と比較して演算させるか、多くのシンセサイザーに使える可能性を秘めています。
なにせ5Vでコンパクトに動く。これが一番強いのです。(PIC16も概ねそうです。)
シリアルにMIDI信号を入れてクロックも取り出せるのでRolandの好きなスタッターゲート生成器が作れますし、
デフォルトでPWMの周波数が980Hzで256で指定すると知った時はショックでしたが62.5kHzまで上げられるのでクロックからコードアルペイジエイターを作るくらいは速攻で出来ますね。
0.08333Vステップ(1oct/V)をオペアンプで調整して再現すればいいのです。88keyを軽く超えてます。
ただメモリーが少ないので複雑すぎる作業や演算は出来ません。8bitですもの。16bitや32bitなら掛け算・割り算が簡単ですが8bitならあきらめます。
足し算・引き算・比較・タイミング変更程度と考えましょう。

逆にR4がRaspberry PI Picoに大きさで負けて使い道に困るのです。
PicoのPWMはクロックが凄いです。ただアナログ入力が3つという所が困りますね。
UNO QはMCUとは言えない領域なので使う気になりません。

じゃあRaspberry PI Picoは使わないの?


使います。無理に5Vで使いませんのでそれなりの電圧レベル変換が必要です。それ以外はかなりのスペックですので使わないのは勿体ないです。ちなみに5Vに変換したからと言って電流が低くてLチカ出来ませんよ。
そのうち公開もするでしょう。

コメント