找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 5644|回復(fù): 0
收起左側(cè)

Arduino與L298N驅(qū)動2個直流電機(jī)實現(xiàn)正轉(zhuǎn),反轉(zhuǎn)的資料與源碼

[復(fù)制鏈接]
ID:308500 發(fā)表于 2018-4-15 13:13 | 顯示全部樓層 |閱讀模式
L298N驅(qū)動模塊,可以驅(qū)動2個直流電機(jī),可分別實現(xiàn)正轉(zhuǎn),反轉(zhuǎn)功能.
20160509173331347.jpg
Bom表

Arduino Uno       * 1
L298N驅(qū)動模塊  * 1
直流電機(jī)             * 2
9v 電池               * 1
跳線                    若干


Arduino uno + L298N 驅(qū)動模塊接線

20160509195006230.jpg
注意:如果電壓不夠,電機(jī)有可能不會轉(zhuǎn)哦,所以要外置7V-12V電源.


程序源碼
這里選用IO口為5,6,9,10,這四個均支持PWM,可以通過占空比代碼實現(xiàn)控制轉(zhuǎn)動速度的快慢.

  1. //LingShun Lab

  2. int input1 = 5; // 定義uno的pin 5 向 input1 輸出
  3. int input2 = 6; // 定義uno的pin 6 向 input2 輸出
  4. int input3 = 9; // 定義uno的pin 9 向 input3 輸出
  5. int input4 = 10; // 定義uno的pin 10 向 input4 輸出



  6. void setup() {
  7. //  Serial.begin (9600);
  8. //初始化各IO,模式為OUTPUT 輸出模式
  9. pinMode(input1,OUTPUT);
  10. pinMode(input2,OUTPUT);
  11. pinMode(input3,OUTPUT);
  12. pinMode(input4,OUTPUT);

  13. }

  14. void loop() {
  15.   //forward 向前轉(zhuǎn)
  16.   digitalWrite(input1,HIGH); //給高電平
  17.   digitalWrite(input2,LOW);  //給低電平
  18.   digitalWrite(input3,HIGH); //給高電平
  19.   digitalWrite(input4,LOW);  //給低電平
  20.   delay(1000);   //延時1秒

  21. //stop 停止
  22. digitalWrite(input1,LOW);
  23. digitalWrite(input2,LOW);  
  24. digitalWrite(input3,LOW);
  25. digitalWrite(input4,LOW);  
  26. delay(500);  //延時0.5秒

  27.   
  28.   //back 向后轉(zhuǎn)
  29.   digitalWrite(input1,LOW);
  30.   digitalWrite(input2,HIGH);  
  31.   digitalWrite(input3,LOW);
  32.   digitalWrite(input4,HIGH);  
  33.   delay(1000);   

  34. }
復(fù)制代碼


評分

參與人數(shù) 1黑幣 +5 收起 理由
girder + 5

查看全部評分

回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表