287 lines
8.4 KiB
Markdown
287 lines
8.4 KiB
Markdown
# 🧰 Bauteilliste USB-MIDI-Controller
|
||
|
||
## 📋 Komplette Bauteilliste
|
||
|
||
### Hauptkomponenten
|
||
| Anzahl | Bauteil | Typ | Beschreibung |
|
||
|--------|---------|-----|--------------|
|
||
| 1x | Arduino Pro Micro | MCU | ATmega32u4, 5V/16MHz |
|
||
| 2x | MCP23017 | I2C I/O Expander | 16-Bit, DIP-28 oder SOIC-28 |
|
||
| 1x | CD74HC4067 | Multiplexer | 16-Kanal Analog Mux, DIP-24 |
|
||
| 8x | Potentiometer | B10K | Linear, 10kΩ, mit Knopf |
|
||
| 4x | Schieberegler | 10K | Linear, 10kΩ, 60mm Weg |
|
||
| 20x | Tact Switch | Button | 6x6mm, THT |
|
||
| 20x | LED | 5mm | Rot/Grün/Blau nach Wahl |
|
||
|
||
### Widerstände
|
||
| Anzahl | Wert | Typ | Verwendung |
|
||
|--------|------|-----|------------|
|
||
| 2x | 4.7kΩ | 1/4W, 5% | I2C Pull-Up (SDA/SCL) |
|
||
| 20x | 10kΩ | 1/4W, 5% | Button Pull-Up (falls extern) |
|
||
| 10x | 200Ω | 1/4W, 5% | LED-Vorwiderstände (Weiß) |
|
||
| 4x | 150Ω | 1/4W, 5% | LED-Vorwiderstände (Rot/Weiß Agatige) |
|
||
| 3x | 125Ω | 1/4W, 5% | LED-Vorwiderstände (Grün) |
|
||
| 3x | 110Ω | 1/4W, 5% | LED-Vorwiderstände (Blau) |
|
||
| 4x | 10kΩ | 1/4W, 5% | MCP23017 Pull-Up (optional) |
|
||
|
||
### Kondensatoren
|
||
| Anzahl | Wert | Typ | Verwendung |
|
||
|--------|------|-----|------------|
|
||
| 6x | 100nF | Keramik | Entstörung (Abblockkondensatoren) |
|
||
| 2x | 10µF | Elektrolyt | Spannungsglättung |
|
||
| 1x | 470µF | Elektrolyt | Haupt-Pufferkondensator |
|
||
|
||
### Sonstige Bauteile
|
||
| Anzahl | Bauteil | Beschreibung |
|
||
|--------|---------|--------------|
|
||
| 1x | Breadboard | 830 Kontakte oder größer |
|
||
| 1x | Lochrasterplatine | 10x15cm (für finalen Aufbau) |
|
||
| 1x | USB-Kabel | Micro-USB, Datenübertragung |
|
||
| ~50x | Jumper-Kabel | Verschiedene Längen |
|
||
| 1x | Gehäuse | Kunststoff/Aluminium, nach Wahl |
|
||
|
||
## 🔌 Exakte Widerstand-Platzierung
|
||
|
||
### I2C Pull-Up Widerstände (4.7kΩ)
|
||
```
|
||
R1: 4.7kΩ Pull-Up für SDA
|
||
├── VCC (+5V)
|
||
└── Arduino Pin 2 (SDA) ──── MCP23017 #1 Pin 13 ──── MCP23017 #2 Pin 13
|
||
|
||
R2: 4.7kΩ Pull-Up für SCL
|
||
├── VCC (+5V)
|
||
└── Arduino Pin 3 (SCL) ──── MCP23017 #1 Pin 12 ──── MCP23017 #2 Pin 12
|
||
```
|
||
|
||
### LED-Vorwiderstände (angepasst für Amazon-Buttons)
|
||
```
|
||
HUAZIZ LED-Buttons (B09QQJWTL5) - Verschiedene Farben:
|
||
R3-R12: Weiß LEDs (3.0V, 10mA) ──── 200Ω ──── LED Anode ──── LED Kathode ──── GND
|
||
R13-R15: Rote LEDs (2.0V, 20mA) ──── 150Ω ──── LED Anode ──── LED Kathode ──── GND
|
||
R16-R18: Grüne LEDs (2.5V, 20mA) ──── 125Ω ──── LED Anode ──── LED Kathode ──── GND
|
||
R19-R22: Blaue LEDs (2.8V, 20mA) ──── 110Ω ──── LED Anode ──── LED Kathode ──── GND
|
||
|
||
Agatige LED-Buttons (B09JCH9WVB) - Weiß mit Kabeln:
|
||
R23-R42: Weiße LEDs (2.0V, 20mA) ──── 150Ω ──── LED Anode ──── LED Kathode ──── GND
|
||
|
||
WARNUNG: Diese LEDs haben KEINE eingebauten Vorwiderstände!
|
||
Ohne passende Widerstände brennen die LEDs sofort durch!
|
||
```
|
||
|
||
### Button Pull-Up Widerstände (10kΩ) - Optional
|
||
```
|
||
Falls externe Pull-Ups gewünscht (MCP23017 hat interne):
|
||
|
||
Buttons 0-15:
|
||
R23-R38: VCC ──── 10kΩ ──── MCP23017 #1 Pin [0-15] ──── Button ──── GND
|
||
|
||
Buttons 16-19:
|
||
R39-R42: VCC ──── 10kΩ ──── MCP23017 #2 Pin [0-3] ──── Button ──── GND
|
||
```
|
||
|
||
### MCP23017 Reset Pull-Up (10kΩ) - Optional
|
||
```
|
||
R43: VCC ──── 10kΩ ──── MCP23017 #1 Pin 18 (RESET)
|
||
R44: VCC ──── 10kΩ ──── MCP23017 #2 Pin 18 (RESET)
|
||
```
|
||
|
||
## ⚡ Exakte Kondensator-Platzierung
|
||
|
||
### Abblockkondensatoren (100nF)
|
||
```
|
||
C1: Arduino Pro Micro
|
||
├── VCC Pin
|
||
└── GND Pin
|
||
(Platzierung: So nah wie möglich an VCC/GND Pins)
|
||
|
||
C2: MCP23017 #1
|
||
├── Pin 9 (VDD)
|
||
└── Pin 10 (VSS)
|
||
(Platzierung: Direkt am Chip, kurze Leitungen)
|
||
|
||
C3: MCP23017 #2
|
||
├── Pin 9 (VDD)
|
||
└── Pin 10 (VSS)
|
||
(Platzierung: Direkt am Chip, kurze Leitungen)
|
||
|
||
C4: CD74HC4067
|
||
├── Pin 24 (VCC)
|
||
└── Pin 12 (GND)
|
||
(Platzierung: Direkt am Chip, kurze Leitungen)
|
||
|
||
C5: Potentiometer-Spannungsversorgung
|
||
├── VCC Rail (bei Potis)
|
||
└── GND Rail (bei Potis)
|
||
(Platzierung: Zentral bei den analogen Reglern)
|
||
|
||
C6: LED-Spannungsversorgung
|
||
├── VCC Rail (bei LEDs)
|
||
└── GND Rail (bei LEDs)
|
||
(Platzierung: Zentral bei den LEDs)
|
||
```
|
||
|
||
### Spannungsglättung (10µF Elektrolyt)
|
||
```
|
||
C7: Haupt-Spannungsversorgung Arduino
|
||
├── Arduino VCC
|
||
└── Arduino GND
|
||
(Platzierung: Am Arduino-Eingang, Polarität beachten!)
|
||
|
||
C8: MCP23017 Spannungsversorgung
|
||
├── Gemeinsame VCC-Schiene der MCPs
|
||
└── Gemeinsame GND-Schiene der MCPs
|
||
(Platzierung: Zentral zwischen beiden MCPs)
|
||
```
|
||
|
||
### Pufferkondensator (470µF Elektrolyt)
|
||
```
|
||
C9: Haupt-Pufferkondensator
|
||
├── USB +5V Eingang
|
||
└── USB GND
|
||
(Platzierung: Am USB-Eingang, stabilisiert Spannungsspitzen)
|
||
(WICHTIG: Polarität beachten! + zu +5V, - zu GND)
|
||
```
|
||
|
||
## 🔧 Detaillierte Schaltungsdetails
|
||
|
||
### LED-Schaltung (pro LED)
|
||
```
|
||
MCP23017 Pin ──── R(330Ω) ──── LED Anode (+)
|
||
│
|
||
LED Kathode (-)
|
||
│
|
||
GND
|
||
|
||
Berechnung Vorwiderstand:
|
||
R = (Vcc - Vled) / Iled
|
||
R = (5V - 2.1V) / 8.8mA = 330Ω
|
||
|
||
Bei 20 LEDs: Gesamtstrom = 20 × 8.8mA = 176mA
|
||
```
|
||
|
||
### Button-Schaltung (pro Button)
|
||
```
|
||
VCC
|
||
│
|
||
│ (R = 10kΩ Pull-Up, intern im MCP23017)
|
||
│
|
||
├─── MCP23017 Pin (Input)
|
||
│
|
||
┌────┴────┐ Button (Tact Switch)
|
||
│ │
|
||
GND GND
|
||
|
||
Bei gedrücktem Button: Pin = LOW (0V)
|
||
Bei losgelassenem Button: Pin = HIGH (5V via Pull-Up)
|
||
```
|
||
|
||
### Potentiometer-Schaltung (pro Regler)
|
||
```
|
||
VCC ──── Pin 1 (CCW/Links/Oben)
|
||
|
||
Signal ── Pin 2 (Wiper/Mitte) ──── Multiplexer Kanal
|
||
|
||
GND ──── Pin 3 (CW/Rechts/Unten)
|
||
|
||
Optional: 100nF Kondensator zwischen Signal und GND
|
||
für Entstörung bei langen Leitungen
|
||
```
|
||
|
||
## 📐 Layout-Empfehlungen
|
||
|
||
### Breadboard-Aufbau
|
||
```
|
||
Sektion 1: Arduino Pro Micro
|
||
├── C1 (100nF) direkt an VCC/GND
|
||
├── C7 (10µF) an VCC/GND
|
||
└── C9 (470µF) an USB +5V/GND
|
||
|
||
Sektion 2: I2C-Bus
|
||
├── R1 (4.7kΩ) SDA Pull-Up
|
||
├── R2 (4.7kΩ) SCL Pull-Up
|
||
├── Kurze Verbindungen zu MCPs
|
||
└── Twisted Pair bei längeren Leitungen
|
||
|
||
Sektion 3: MCP23017 #1
|
||
├── C2 (100nF) direkt am Chip
|
||
├── 16× R(330Ω) für LEDs
|
||
└── Buttons mit internen Pull-Ups
|
||
|
||
Sektion 4: MCP23017 #2
|
||
├── C3 (100nF) direkt am Chip
|
||
├── 4× R(330Ω) für LEDs
|
||
└── Buttons mit internen Pull-Ups
|
||
|
||
Sektion 5: CD74HC4067
|
||
├── C4 (100nF) direkt am Chip
|
||
├── C5 (100nF) für Analog-Versorgung
|
||
└── Sternförmige Verteilung zu Potis
|
||
|
||
Sektion 6: Potentiometer/Slider
|
||
├── Saubere VCC/GND-Verteilung
|
||
├── Geschirmte Signalleitungen
|
||
└── C5 (100nF) zentrale Entstörung
|
||
```
|
||
|
||
### PCB-Design Hinweise
|
||
```
|
||
Layer 1 (Top): Komponenten + Signale
|
||
├── Kurze Leitungen für I2C
|
||
├── Sternförmige GND-Verteilung
|
||
└── Abblockkondensatoren nah an ICs
|
||
|
||
Layer 2 (Bottom): Masse-Fläche
|
||
├── Durchgehende GND-Plane
|
||
├── VCC-Flächen getrennt
|
||
└── Thermische Vias bei Stromversorgung
|
||
|
||
Leitungsführung:
|
||
├── I2C: < 10cm, Twisted Pair
|
||
├── Analog: Geschirmt, < 20cm
|
||
├── Digital: Unkritisch, < 50cm
|
||
└── Power: Sternförmig, dicke Leitungen
|
||
```
|
||
|
||
## ⚠️ Wichtige Hinweise
|
||
|
||
### Kondensator-Polarität
|
||
```
|
||
Elektrolytkondensatoren (10µF, 470µF):
|
||
+ (längeres Bein) ──── zu VCC/Plusspannung
|
||
- (kürzeres Bein) ──── zu GND/Masse
|
||
|
||
Keramikkondensatoren (100nF):
|
||
Keine Polarität - können beliebig eingebaut werden
|
||
```
|
||
|
||
### Widerstand-Farbcodes
|
||
```
|
||
4.7kΩ (Gelb-Violett-Rot-Gold): Pull-Up Widerstände
|
||
330Ω (Orange-Orange-Braun-Gold): LED-Vorwiderstände
|
||
10kΩ (Braun-Schwarz-Orange-Gold): Pull-Up Widerstände
|
||
```
|
||
|
||
### Stromverbrauch-Kalkulation
|
||
```
|
||
Arduino Pro Micro: ~40mA
|
||
MCP23017 #1: ~1mA
|
||
MCP23017 #2: ~1mA
|
||
CD74HC4067: ~1mA
|
||
LEDs (20× 8.8mA): ~176mA (alle an)
|
||
GESAMT: ~220mA (bei allen LEDs an)
|
||
|
||
USB 2.0 kann max. 500mA liefern ✓
|
||
```
|
||
|
||
### Einkaufsliste Elektronik
|
||
```
|
||
- Widerstände: Sortiment 1/4W, 5% (E12-Reihe)
|
||
- Kondensatoren: Keramik-Sortiment + Elkos
|
||
- LEDs: 5mm Standard, verschiedene Farben
|
||
- Tact Switches: 6×6mm, THT, >100k Zyklen
|
||
- Potis: Logarithmisch oder linear je nach Anwendung
|
||
- Jumperkabel: Buchse-Buchse, verschiedene Längen
|
||
```
|
||
|
||
Diese detaillierte Aufstellung gibt dir alles was du brauchst, um deinen MIDI-Controller erfolgreich aufzubauen! 🎛️
|