``` When I try to Upload this code, i get an error message saying "Servo" does not name a type" How do I fix this and how to I understand the code and the error messages that appear?
// constants won't change
const int BUTTON_PIN = 7; // Arduino pin connected to button's pin
const int SERVO_PIN = 9; // Arduino pin connected to servo motor's pin
const int LED_PIN = 3;
Servo servo; // create servo object to control a servo
// variables will change:
int angle = 0; // the current angle of servo motor
int lastButtonState; // the previous state of button
int currentButtonState; // the current state of button
void setup() {
Serial.begin(9600); // initialize serial
pinMode(BUTTON_PIN, INPUT_PULLUP); // set arduino pin to input pull-up mode
servo.attach(SERVO_PIN); // attaches the servo on pin 9 to the servo object
// initialize digital pin LED_BUILTIN as an output.
pinMode(LED_PIN, OUTPUT);
servo.write(angle);
currentButtonState = digitalRead(BUTTON_PIN);
}
void loop() {
lastButtonState = currentButtonState; // save the last state
currentButtonState = digitalRead(BUTTON_PIN); // read new state
if(lastButtonState == HIGH && currentButtonState == LOW) {
Serial.println("The button is pressed");
// change angle of servo motor
if(angle == 0)
angle = 180;
else
if(angle == 180)
angle = 0;
// control servo motor arccoding to the angle
servo.write(angle);
digitalWrite(LED_PIN, HIGH); // turn the LED on (HIGH is the voltage level)
delay(1000); // wait for a second
digitalWrite(LED_PIN, LOW); // turn the LED off by making the voltage LOW
delay(0); // wait for a second
}
}
Maybe insert a
#include "Servo.h"
You have not #included the Servo library
#include <Servo.h>
thanks so much.
it worked
This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.