El TPA3110 es un módulo amplificador de audio estéreo de clase D pensado para controlar dos canales de altavoz. Usa las entradas analógicas izquierda/derecha (L y R) con masa, alimenta el módulo en VIN+ y VIN-, y conecta los altavoces a las salidas diferenciales (L+/L- y R+/R-).
| Pin | Señal | Descripción |
|---|---|---|
L |
analog | Left-channel line-level audio input to the amplifier. |
GND |
ground | Audio input ground/reference for the L and R input signals. |
R |
analog | Right-channel line-level audio input to the amplifier. |
VIN+ |
power | Positive DC supply input for the amplifier, typically 8–24 V. |
VIN- |
ground | Negative DC supply input / power ground return. |
L+ |
analog | Positive amplified speaker output for the left channel. |
L- |
analog | Negative bridged speaker output for the left channel. |
R+ |
analog | Positive amplified speaker output for the right channel. |
R- |
analog | Negative bridged speaker output for the right channel. |
| Desde | Hasta | Cable |
|---|---|---|
board:5V |
x1:VIN+ |
red |
board:GND |
x1:VIN- |
black |
board:D9 |
x1:L |
green |
board:D10 |
x1:R |
blue |
board:GND.1 |
x1:GND |
black |
Este ejemplo se escribió y verificó por compilación para arduino-uno. Codey Online lo adapta a cualquier otra placa compatible.
// Canonical beginner example for the TPA3110 2x15W Amplifier
// This sketch generates a simple left/right test tone using PWM on pins 9 and 10.
// Connect the amplifier inputs to the Arduino, and wire speakers to the amplifier outputs.
const int leftPin = 9; // Connect to L
const int rightPin = 10; // Connect to R
void setup() {
pinMode(leftPin, OUTPUT);
pinMode(rightPin, OUTPUT);
}
void loop() {
// A basic stereo test: left channel gets a pulse train, right channel stays quiet,
// then the roles swap. The amplifier board will filter the PWM into an audible tone.
// Left channel active
for (int i = 0; i < 200; i++) {
analogWrite(leftPin, 180);
analogWrite(rightPin, 128);
delayMicroseconds(400);
analogWrite(leftPin, 0);
analogWrite(rightPin, 128);
delayMicroseconds(400);
}
delay(300);
// Right channel active
for (int i = 0; i < 200; i++) {
analogWrite(leftPin, 128);
analogWrite(rightPin, 180);
delayMicroseconds(400);
analogWrite(leftPin, 128);
analogWrite(rightPin, 0);
delayMicroseconds(400);
}
delay(300);
}
Describe lo que quieres construir. Codey Online escribe el codigo, dibuja el esquema de conexiones, lo compila y graba tu placa directamente desde el navegador.
Empieza gratis