Components and supplies
1
Dual H-Bridge motor drivers L298
1
HC-06 Bluetooth Module
Tools and machines
1
Screwdriver
Apps and platforms
1
Bluetooth SPP
Project description
Code
The code that uses the L298 controling the car.
c_cpp
1#define IN1 4 2#define IN2 5 3#define IN3 6 4#define IN4 7 5void forward(); 6void back(); 7void turnLeft(); 8void turnRight(); 9void turnbackLeft(); 10void turnbackRight(); 11void turnLeftOrigin(); 12void turnRightOrigin(); 13void _stop(); 14void setup() 15{ pinMode(IN1,OUTPUT); 16pinMode(IN2,OUTPUT); 17pinMode(IN3,OUTPUT); 18pinMode(IN4,OUTPUT); 19Serial.begin(9600); 20} 21int i; 22void loop() 23{ if(Serial.available()) 24{ i= Serial.read(); 25switch(i) 26{ case'1':{ turnLeft();break;} 27case'2':{ forward();break;} 28case'3':{turnRight();break;} 29case'4':{turnLeftOrigin();break;} 30case'5':{_stop();break;} 31case'6':{turnRightOrigin();break;} 32case'7':{turnbackLeft();break;} 33case'8':{back();break;} 34case'9':{turnbackRight();break;} 35} 36} 37} 38void forward() 39{ digitalWrite(IN1,HIGH); 40digitalWrite(IN2,LOW); 41digitalWrite(IN3,HIGH); 42digitalWrite(IN4,LOW); 43} 44void back() 45{ digitalWrite(IN1,LOW); 46digitalWrite(IN2,HIGH); 47digitalWrite(IN3,LOW); 48digitalWrite(IN4,HIGH); 49} 50void turnLeft() 51{ digitalWrite(IN1,LOW); 52digitalWrite(IN2,LOW); 53digitalWrite(IN3,HIGH); 54digitalWrite(IN4,LOW); 55} 56void turnbackLeft() 57{ digitalWrite(IN1,LOW); 58digitalWrite(IN2,LOW); 59digitalWrite(IN3,LOW); 60digitalWrite(IN4,HIGH); 61} 62void turnRight() 63{ digitalWrite(IN1,HIGH); 64digitalWrite(IN2,LOW); 65digitalWrite(IN3,LOW); 66digitalWrite(IN4,LOW); 67} 68void turnbackRight() 69{ digitalWrite(IN1,LOW); 70digitalWrite(IN2,HIGH); 71digitalWrite(IN3,LOW); 72digitalWrite(IN4,LOW); 73} 74void turnLeftOrigin() 75{ digitalWrite(IN1,LOW); 76digitalWrite(IN2,HIGH); 77digitalWrite(IN3,HIGH); 78digitalWrite(IN4,LOW); 79} 80void turnRightOrigin() 81{ digitalWrite(IN1,HIGH); 82digitalWrite(IN2,LOW); 83digitalWrite(IN3,LOW); 84digitalWrite(IN4,HIGH); 85} 86void _stop() 87{ digitalWrite(IN1,LOW); 88digitalWrite(IN2,LOW); 89digitalWrite(IN3,LOW); 90digitalWrite(IN4,LOW); 91}
To set up the hc-06
c_cpp
1#define AT 2 2#define LED 13 3void setup() 4{ 5pinMode(LED,OUTPUT); 6pinMode(AT,OUTPUT); 7digitalWrite(AT,HIGH); 8Serial.begin(9600); 9delay(100); 10Serial.println("AT"); 11delay(100); 12Serial.println("AT+NAME=smart car"); 13delay(100); 14Serial.println("AT+ROLE=S"); 15delay(100); 16Serial.println("AT+PIN=1234"); 17delay(100); 18Serial.println("AT+BAUD=9600"); 19delay(100); 20Serial.println("AT+RMAAD"); 21void loop() 22{ 23digitalWrite(LED, HIGH); 24delay(500); 25digitalWrite(LED, LOW); 26delay(500); 27}
The code that uses the L298 controling the car.
c_cpp
1#define IN1 4 2#define IN2 5 3#define IN3 6 4#define IN4 7 5void forward(); 6void back(); 7void turnLeft(); 8void turnRight(); 9void turnbackLeft(); 10void turnbackRight(); 11void turnLeftOrigin(); 12void turnRightOrigin(); 13void _stop(); 14void setup() 15{ pinMode(IN1,OUTPUT); 16pinMode(IN2,OUTPUT); 17pinMode(IN3,OUTPUT); 18pinMode(IN4,OUTPUT); 19Serial.begin(9600); 20} 21int i; 22void loop() 23{ if(Serial.available()) 24{ i= Serial.read(); 25switch(i) 26{ case'1':{ turnLeft();break;} 27case'2':{ forward();break;} 28case'3':{turnRight();break;} 29case'4':{turnLeftOrigin();break;} 30case'5':{_stop();break;} 31case'6':{turnRightOrigin();break;} 32case'7':{turnbackLeft();break;} 33case'8':{back();break;} 34case'9':{turnbackRight();break;} 35} 36} 37} 38void forward() 39{ digitalWrite(IN1,HIGH); 40digitalWrite(IN2,LOW); 41digitalWrite(IN3,HIGH); 42digitalWrite(IN4,LOW); 43} 44void back() 45{ digitalWrite(IN1,LOW); 46digitalWrite(IN2,HIGH); 47digitalWrite(IN3,LOW); 48digitalWrite(IN4,HIGH); 49} 50void turnLeft() 51{ digitalWrite(IN1,LOW); 52digitalWrite(IN2,LOW); 53digitalWrite(IN3,HIGH); 54digitalWrite(IN4,LOW); 55} 56void turnbackLeft() 57{ digitalWrite(IN1,LOW); 58digitalWrite(IN2,LOW); 59digitalWrite(IN3,LOW); 60digitalWrite(IN4,HIGH); 61} 62void turnRight() 63{ digitalWrite(IN1,HIGH); 64digitalWrite(IN2,LOW); 65digitalWrite(IN3,LOW); 66digitalWrite(IN4,LOW); 67} 68void turnbackRight() 69{ digitalWrite(IN1,LOW); 70digitalWrite(IN2,HIGH); 71digitalWrite(IN3,LOW); 72digitalWrite(IN4,LOW); 73} 74void turnLeftOrigin() 75{ digitalWrite(IN1,LOW); 76digitalWrite(IN2,HIGH); 77digitalWrite(IN3,HIGH); 78digitalWrite(IN4,LOW); 79} 80void turnRightOrigin() 81{ digitalWrite(IN1,HIGH); 82digitalWrite(IN2,LOW); 83digitalWrite(IN3,LOW); 84digitalWrite(IN4,HIGH); 85} 86void _stop() 87{ digitalWrite(IN1,LOW); 88digitalWrite(IN2,LOW); 89digitalWrite(IN3,LOW); 90digitalWrite(IN4,LOW); 91}
Downloadable files
L298
How to link this.
L298

L298
How to link this.
L298

Comments
Only logged in users can leave comments