Simula no Tinkercad Circuits antes de soldar:
Ligações:
D9(PWM) → 1kΩ → Base BC547
Coletor BC547 → Motor(−)
Motor(+) → 5V (ou alimentação externa)
VCC → Ânodo 1N4007 → Cátodo 1N4007 → Coletor BC547
Emissor BC547 → GND
D2 → 10kΩ pull-up → Botão → GND (controlo manual)Liga VCC e GND do header às power rails da protoshield — primeira ligação sempre.
Solda resistências e condensadores antes dos semicondutores.
LEDs, transístores, CIs — com atenção à polaridade.
Headers por último — não obstruem o acesso aos outros componentes.
Multímetro em continuidade em cada ligação antes de ligar ao Arduino.
#define MOTOR_PWM 9
#define BTN 2
void setup() {
pinMode(MOTOR_PWM, OUTPUT);
pinMode(BTN, INPUT_PULLUP);
Serial.begin(9600);
}
void loop() {
// Aumentar velocidade ao premir o botão
static int vel = 0;
if (digitalRead(BTN) == LOW) {
vel = (vel + 64) % 256; // 0→64→128→192→0
analogWrite(MOTOR_PWM, vel);
Serial.print("Velocidade: "); Serial.println(vel);
delay(300);
}
}