Mục lục:

Điều khiển động cơ DC với L298N bằng vi điều khiển CloudX: 3 bước
Điều khiển động cơ DC với L298N bằng vi điều khiển CloudX: 3 bước

Video: Điều khiển động cơ DC với L298N bằng vi điều khiển CloudX: 3 bước

Video: Điều khiển động cơ DC với L298N bằng vi điều khiển CloudX: 3 bước
Video: Tự học lập trình Arduino Tập 27 | điều khiển tốc độ động cơ bằng driver L298N và Arduino p1 2024, Tháng bảy
Anonim
Điều khiển động cơ DC với L298N sử dụng vi điều khiển CloudX
Điều khiển động cơ DC với L298N sử dụng vi điều khiển CloudX
Điều khiển động cơ DC với L298N sử dụng vi điều khiển CloudX
Điều khiển động cơ DC với L298N sử dụng vi điều khiển CloudX

Trong dự án này, chúng tôi sẽ giải thích cách sử dụng cầu H L298N để tăng và giảm tốc độ của động cơ DC. Mô-đun cầu H L298N có thể được sử dụng với động cơ có điện áp từ 5 đến 35V DC.

Ngoài ra còn có bộ điều chỉnh 5V trên bo mạch, vì vậy nếu điện áp cung cấp của bạn lên đến 12V, bạn cũng có thể cấp nguồn 5V từ bo mạch.

Bước 1: Các thành phần

Các thành phần
Các thành phần
Các thành phần
Các thành phần
Các thành phần
Các thành phần
  • Bộ vi điều khiển CloudX
  • Thẻ mềm CloudX
  • Cáp USB V3
  • Cầu chữ H L298N
  • Breadboard
  • Dây nhảy
  • Động cơ DC
  • Điện trở 10k
  • 4 * nút nhấn

bạn có thể trực tuyến ở đây

Bước 2: Sơ đồ mạch

Sơ đồ mạch
Sơ đồ mạch

theo mạch lên

Bước 3: Mã

sao chép mã này vào CloudX IDE của bạn

#include #include

ký char i, j;

cờ bit;

cài đặt(){

// thiết lập ở đây for (i = 1; i <5; i ++) {pinMode (i, INPUT); } PWM1_Init (5000); PWM2_Init (5000); PWM1_Start (); PWM2_Start (); PWM1_Duty (0); PWM2_Duty (0); i = j = 0; loop () {// Chương trình ở đây if (! readPin (1)) {delayMs (200); if (flag == 0) {PWM1_Duty (i); PWM2_Duty (0); } if (flag == 1) {PWM2_Duty (j); PWM1_Duty (0); } flag = ~ cờ; } if (! readPin (2)) {delayMs (200); if (flag == 1) {// i - = 10; tôi--; if (i <= 0) i = 0; PWM1_Duty (i); PWM2_Duty (0); } if (flag == 0) {// j - = 10; NS--; if (j <= 0) j = 0; PWM2_Duty (j); PWM1_Duty (0); }} if (! readPin (3)) {delayMs (200); if (flag == 1) {// i + = 10; i ++; nếu (i> = 100) i = 100; PWM1_Duty (i); PWM2_Duty (0); } if (flag == 0) {// j + = 10; j ++; if (j> = 100) j = 100; PWM2_Duty (j); PWM1_Duty (0); }}

if (! readPin (4)) {

delayMs (200); PWM1_Duty (0); PWM2_Duty (0); i = 0; j = 0; }

}

}

Đề xuất: