Showing
1 changed file
with
47 additions
and
0 deletions
example/lab2-5_2.c
0 → 100644
1 | +#include <wiringPi.h> // GPIO Access Library 헤더파일 선언 | ||
2 | +#include <softPwm.h> // Software PWM library 헤더파일 선언 | ||
3 | +// Motor 핀 설정 | ||
4 | +#define MOTOR_MT_N_PIN 17 | ||
5 | +#define MOTOR_MT_P_PIN 4 | ||
6 | +// Motor 회전 방향 정의 | ||
7 | +#define LEFT_ROTATE 1 | ||
8 | +#define RIGHT_ROTATE 2 | ||
9 | +// Motor 정지 함수 | ||
10 | +void MotorStop() | ||
11 | +{ | ||
12 | + softPwmWrite(MOTOR_MT_N_PIN, 0); | ||
13 | + softPwmWrite(MOTOR_MT_P_PIN, 0); | ||
14 | +} | ||
15 | +// Motor 속도 조절 함수 | ||
16 | +void MotorControl(int speed) | ||
17 | +{ | ||
18 | + digitalWrite(MOTOR_MT_P_PIN, LOW); | ||
19 | + softPwmWrite(MOTOR_MT_N_PIN, speed); | ||
20 | +} | ||
21 | +int main(void) | ||
22 | +{ | ||
23 | + if (wiringPiSetupGpio() == -1) | ||
24 | + return 1; | ||
25 | + // Motor 핀 출력으로 설정 | ||
26 | + pinMode(MOTOR_MT_N_PIN, OUTPUT); | ||
27 | + pinMode(MOTOR_MT_P_PIN, OUTPUT); | ||
28 | + // Motor 핀 PWM 제어 핀으로 설정 | ||
29 | + // 주기: 100ms | ||
30 | + softPwmCreate(MOTOR_MT_N_PIN, 0, 100); | ||
31 | + softPwmCreate(MOTOR_MT_P_PIN, 0, 100); | ||
32 | + while (1) { | ||
33 | + MotorControl(25); // Duty Cycle 25% 동작 | ||
34 | + delay(2000); | ||
35 | + MotorStop(); // Motor 정지 | ||
36 | + delay(2000); | ||
37 | + MotorControl(50); // Duty Cycle 50% 동작 | ||
38 | + delay(2000); | ||
39 | + MotorStop(); // Motor 정지 | ||
40 | + delay(2000); | ||
41 | + MotorControl(75); // Duty Cycle 75% 동작 | ||
42 | + delay(2000); | ||
43 | + MotorStop(); // Motor 정지 | ||
44 | + delay(2000); | ||
45 | + } | ||
46 | + return 0; | ||
47 | +} | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
-
Please register or login to post a comment