Arduino/ATMega328のピン配置
DIP版 ATmega328p
Arduino/ピン配置
ピン番号に14~19を指定すると、アナログ入力ピンに割り当たっていた各ピンをデジタルピンとして使用することが出来るように なります pinで指定したピンが入力モードになっている時にこのdigitalWriteでHIGHを出力すると、入力プルアップが オンになります。
| スケッチはArduinoのピン番号をそのままAtmega328Pのピン番号にできる。(同じスケッチでOK)Arduino/ATMega328のピン配置 | ||
|---|---|---|
| ピン対応表 | ||
| Arduino→ATMega328(168) | ||
| PD0はポートDの最下位ビットの意。 | ||
| Ardiono基盤上のピン表記 | ATMega328/168でのピン | |
| Digital 0 | Rx | 2 (PD0) |
| Digital 1 | Tx | 3 (PD1) |
| Digital 2 | 4 (PD2) | |
| Digital 3 | Analog out,PWM | 5 (PD3) |
| Digital 4 | 6 (PD4) | |
| Digital 5 | Analog out,PWM | 11 (PD5) |
| Digital 6 | Analog out,PWM | 12 (PD6) |
| Digital 7 | 13 (PD7) | |
| Digital 8 | 14 (PB0) | |
| Digital 9 | Analog out,PWM | 15 (PB1) |
| Digital 10 | Analog out,PWM, SPI:SS | 16 (PB2) |
| Digital 11 | Analog out,PWM SPI:MOSI | 17 (PB3) |
| Digital 12 | SPI:MISO | 18 (PB4) |
| Digital 13 | 内蔵LEDに接続, SPI:SCK | 19 (PB5) |
| GND | 8,22 (GND) | |
| AREF | アナログ入力で使われる参照電圧を設定) | 21 (AREF?) |
| SDA | I2C:SDA (Analog in 4と同じ。Arduino Uno R3で追加) | 27 (PC4/ADC4) |
| SCL | I2C:SCL (Analog in 5と同じ。Arduino Uno R3で追加) | 28 (PC5/ADC5) |
| Ardiono基盤上のピン表記 | ATMega328/168でのピン | |
| Analog in 0 | 23 (PC0/ADC0) | |
| Analog in 1 | 24 (PC1/ADC1) | |
| Analog in 2 | 25 (PC2/ADC2) | |
| Analog in 3 | 26 (PC3/ADC3) | |
| Analog in 4 | I2C:SDA | 27 (PC4/ADC4) |
| Analog in 5 | I2C:SCL | 28 (PC5/ADC5) |
| IOREF | IOピンの電圧レベルを出力(Arduino Uno R3で追加) | |
| RESET | 1 (PC6/RESET) | |
| 3.3V | 50mAまで。(Arduino UnoはLP2985が搭載されたので150mA) | - |
| 5V | レギュレータで生成された5V、またはUSBからの5V | 20 (AVcc) |
| GND | 8,22 (GND) | |
| GND | 8,22 (GND) | |
| Vin | 外部電源を接続,ACアダプタ接続時はそのままの電圧が出力される | - |
| ATMega328(168)→Arduino | ||
| ATMega328/168でのピン | Ardiono基盤上のピン表記 | |
| PB0 | DIGITAL 8 | |
| PB1 | DIGITAL 9 (PWM) | |
| PB2 | DIGITAL 10 (PWM) | |
| PB3 | DIGITAL 11 (PWM) | |
| PB4 | DIGITAL 12 | |
| PB5 | DIGITAL 13 | |
| ATMega328/168でのピン | Ardiono基盤上のピン表記 | |
| PD0(※) | DIGITAL 0 (RX) | |
| PD1(※) | DIGITAL 1 (TX) | |
| PD2 | DIGITAL 2 | |
| PD3 | DIGITAL 3 (PWM) | |
| PD4 | DIGITAL 4 | |
| PD5 | DIGITAL 5 (PWM) | |
| PD6 | DIGITAL 6 (PWM) | |
| PD7 | DIGITAL 7 | |
| (※)Arduinoではブートローダー起動時にPD0とPD1がシリアル通信に使われるように設定される。 | ||
| これを解除するには、"UCSR0B = 0;"をプログラム冒頭に入れる。 | ||
| ATMega328/168でのピン | Ardiono基盤上のピン表記 | |
| PC0 | ANALOG IN 0 | |
| PC1 | ANALOG IN 1 | |
| PC2 | ANALOG IN 2 | |
| PC3 | ANALOG IN 3 | |
| PC4 | ANALOG IN 4 | |
| PC5 | ANALOG IN 5 | |
| PC6 | RESET | |
Arduino UNO単体利用回路 回路図
特徴
こちらの回路の特徴としましては、
「基板上のArduinoにシリアル通信モジュールを接続して書き換えられる」
といった構成になっています。
外付けで秋月電子で取り扱っているようなシリアル変換モジュールを接続して、オンボードでプログラムを書き換えることを想定しています。
FT232RL USBシリアル変換モジュールキット
http://akizukidenshi.com/catalog/g/gK-06693/
Atmega328P-PUのリセットの部分に、シリアル変換モジュールからのDTR信号が入りますが、ここは必要な理由があって0.1uFのコンデンサ(C3)が入っています。
また、このC3があるために過電圧保護の目的でダイオードD1も入っています。極性に注意。
水晶振動子の部分は、水晶とコンデンサの部品を1個ずつ並べていますが、まとめてセラロックでも可能と思います。
注意事項
注意事項です。
D0とD1はスケッチの書き込みに使われますが、このピンに何かしら回路を接続していると、書き込みが正常に行えない恐れがあります。
このため、基本的にはD0とD1を使わないスタンスです。
SMD版(TQFP32)ATmega328p-AU
| Pin No | ATmega328P SMD | Arduino Nano |
|---|---|---|
| 1 | PD3 (INT1) | D3 |
| 2 | PD4 (T0) | D4 |
| 3 | GND | GND |
| 4 | VCC | 5V |
| 5 | GND | GND |
| 6 | VCC | 5V |
| 7 | PB6 (XTAL1) | Crystal |
| 8 | PB7 (XTAL2) | Crystal |
| 9 | PD5 (T1) | D5 |
| 10 | PD6 (AIN0) | D6 |
| 11 | PD7 (AIN1) | D7 |
| 12 | PB0 (ICP1) | D8 |
| 13 | PB1 (OC1A) | D9 |
| 14 | PB2 (OC1B) | D10 |
| 15 | PB3 (MOSI) | D11 |
| 16 | PB4 (MISO) | D12 |
| 17 | PB5 (SCK) | D13 |
| 18 | AVCC | AVCC |
| 19 | ADC6 | A6 |
| 20 | AREF | AREF |
| 21 | GND | AGND |
| 22 | ADC7 | A7 |
| 23 | PC0 (ADC0) | A0 |
| 24 | PC1 (ADC1) | A1 |
| 25 | PC2 (ADC2) | A2 |
| 26 | PC3 (ADC3) | A3 |
| 27 | PC4 (ADC4) | A4 |
| 28 | PC5 (ADC5) | A5 |
| 29 | PC6 (RESET) | RESET |
| 30 | PD0 (RXD) | D0 |
| 31 | PD1 (TXD) | D1 |
| 32 | PD2 (INT0) | D2 |