Q) 아두이노의 5번핀에 LED가 연결되어 있을 경우 1초 간격으로 깜박이는 프로그램을 작성해줘.
A)
void setup() {
pinMode(5, OUTPUT); // 5번 핀을 출력으로 설정
}
void loop() {
digitalWrite(5, HIGH); // 5번 핀에 전압 인가
delay(1000); // 1초 대기
digitalWrite(5, LOW); // 5번 핀에 전압 끄기
delay(1000); // 1초 대기
}
위 코드를 사용하면 1초 간격으로 LED가 깜박입니다.
Q) 아두이노의 I2C에 LCD가 연결된 경우 "Hello world"를 표시하는 프로그램을 작성해줘.
A)
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);
void setup() {
lcd.init();
lcd.backlight();
lcd.clear();
lcd.print("Hello world!");
}
void loop() {
}
위 코드를 사용하면 I2C를 이용하여 연결된 LCD에 "Hello world"가 표시됩니다.
LiquidCrystal_I2C.h 라이브러리를 추가해야 하며, 사용하는 LCD의 I2C 주소를 확인해야 할 수 있습니다.
Q) 아두이노로 DC모터를 제어하는 프로그램을 작성해줘.
A)
#include <Adafruit_MotorShield.h>
#include "utility/Adafruit_MS_PWMServoDriver.h"
Adafruit_MotorShield AFMS = Adafruit_MotorShield();
Adafruit_DCMotor *myMotor = AFMS.getMotor(1);
void setup() {
AFMS.begin();
myMotor->setSpeed(255); // set the speed to 255
myMotor->run(FORWARD); // run the motor forward
myMotor->run(RELEASE); // stop the motor
}
void loop() {
myMotor->run(FORWARD); // run the motor forward
delay(1000); // wait for 1 second
myMotor->run(BACKWARD); // run the motor backward
delay(1000); // wait for 1 second
myMotor->run(RELEASE); // stop the motor
}
위 코드를 사용하면, Adafruit Motor Shield 라이브러리를 사용하여 1번 모터를 제어하며, 1초마다 방향을 바꾸어 DC모터를 제어 할 수 있습니다.
모터의 방향을 제어하기 위해서는 아래 구문 사용 가능
myMotor->run(FORWARD); // run the motor forward
myMotor->run(BACKWARD); // run the motor backward
myMotor->run(RELEASE); // stop the motor
모터 속도를 제어하기 위해서는 아래 구문 사용 가능
myMotor->setSpeed(255); // set the speed to 255
(모터 속도는 0~255 사이의 값을 사용 가능)
라이브러리는 아두이노 IDE에서 Adafruit Motor Shield V2 for Arduino library를 설치해야 합니다.
'chatGPT' 카테고리의 다른 글
Q) 'a와 b가 서로소이면, a^2과 b도 서로소이다'라는 명제를 증명해줘 (0) | 2023.01.22 |
---|---|
Q) rust와 go언어의 장단점을 비교해줘 (0) | 2023.01.21 |
Q) write python code to get prime numbers. (0) | 2023.01.21 |
윤동주의 서시를 영어로 번역해 달라고 chatGPT에서 부탁했더니 (0) | 2023.01.20 |
요즘 화제인 chatGPT에 대해서 chatGPT에 물어봤다. (0) | 2023.01.20 |