Arduino Uno

Pinbelegung

Arduino     ATmega328p          DIL28       ISP6
                                            
RST         PC6/RESET           1           5       button
1 RX        PD0/RXD             2               
2 TX        PD1/TXD             3                   
2           PD2/INT0            4                   
3           PD3/OC2B            5                   
4           PD4                 6                   
5           PD5/OC0B            11                  
6           PD6/OC0A            12                  
7           PD7                 13                  
                                            
8           PB0                 14                 
9           PB1/OC1A            15                 
10          PB2/OC1B            16                 
11          PB3/MOSI/OC2A       17          4       
12          PB4/MISO            18          1       
13          PB5/SCK             19          3       LED      
(20)        PB6/XTAL1           9              
(21)        PB7/XTAL2           10          
                                            
A0          PC0/ADC0            23                  
A1          PC1/ADC1            24             
A2          PC2/ADC2            25          
A3          PC3/ADC3            26          
A4          PC4/ADC4/SDA        27                  
A5          PC5/ADC5/SCL        28                       
                                        
GND         GND                 8           6       
GND         GND                 22          6       
5V          VCC                 7           2
            AVCC                20          
AREF        AREF                21         

Bootloader

Viele aktuelle Boards werden bereits mit einer Version von Optiboot als Bootloader ausgeliefert. Zur Vereinheitlichung empfiehlt sich jedoch die durchgängige Installation der aktuellen Version auf allen Boards. Zur Programmierung eignet sich z. B. der ISP-Programmer von DIAMEX.

git clone https://github.com/Optiboot/optiboot.git
make atmega328
avrdude -P com13 -c stk500 -p m328p -Uflash:w:optiboot_atmega328.hex:i

Gegebenenfalls sollten dann auch noch die Fuses einheitlich gesetzt werden:

avrdude -P com13 -c stk500 -p m328p -U lfuse:w:0xFF:m -U hfuse:w:0xDE:m -U efuse:w:FD:m

(siehe AVR Fuse Calculator)

Multi Function Shield


(Bild: heise.de)

Sehr günstige Aufsteckplatine für schnelle Projekte. Achtung: USB-Stecker Arduino vor der Montage isolieren, ggf. einige Anschlüsse kürzen.

Features

  • 3x Taster + Reset
  • 4x  LED
  • 4x 7-Segment-Digit (über Schieberegister)
  • 1x Spindeltrimmer

Schaltung

Portbelegung

Arduino     ATmega328p          Shield          Anmerkung

A0          PC0/ADC0            Trimmer VR      10k Trimmer + 0.1 µF
A1          PC1/ADC1            Button S1       pull-up 10k via J2
A2          PC2/ADC2            Button S2       pull-up 10k via J2
A3          PC3/ADC3            Button S3       pull-up 10k via J2

13          PB5/SCK             LED D1          via 510 Ohm
12          PB4/MISO            LED D2          via 510 Ohm
11          PB3/MOSI/OC2A       LED D3          via 510 Ohm
10          PB2/OC1B            LED D4          via 510 Ohm

3           PD3/OC2B            Buzzer          via Q1 PNP

4           PD4                 Latch           Schieberegister Display
7           PD7                 Clock           Schieberegister Display
8           PB0                 Data            Schieberegister Display

RESET       PC6/RESET           Button RESET   pull-up 10k

siehe auch