桌面履带蓝牙4.0 -小车程序
20171017-XHS
现在把小车的Arduino代码分享给大家,小车比较简单,没有对电机进行调速控制,直接差动转弯。
- /*****************************************
- 二轮蓝牙小车
- 2017.08.23
- 作者:XHS
- *****************************************/
- #define IN1 4
- #define IN2 5 //定义In1接arduino的4引脚,In2接5引脚
- #define IN3 6
- #define IN4 7 //定义IN3接arduino的6引脚,IN4接7引脚
- void forward( );
- void back( );
- void turnLeft( );
- void turnRight( );
- void _stop(); //这里是把我们用到的函数都声明一遍
- void setup()
- {
- pinMode(IN1,OUTPUT);
- pinMode(IN2,OUTPUT);
- pinMode(IN3,OUTPUT);
- pinMode(IN4,OUTPUT);
- Serial.begin(9600);
- }
- int incomingByte = 0;
- void loop()
- {
- if(Serial.available())
- {
- incomingByte = Serial.read();
- switch(incomingByte)
- {
- case 0x05 :
- {turnLeft( ); break; }
- case 0x04:
- {forward( ); break;}
- case 0x06:
- {turnRight( ); break;}
- case 0x08:
- {_stop(); break;}
- case 0x07:
- {back( ); break;}
- }
- }
- }
- /**************************************************
- forward子函数——前进子函数
- 函数功能:控制车前进
- **************************************************/
- void forward( )
- {
- digitalWrite(IN1,HIGH);
- digitalWrite(IN2,LOW); //左轮前进
- digitalWrite(IN3,HIGH);
- digitalWrite(IN4,LOW); //右轮前进
- }
- /**************************************************
- back子函数——后退子函数
- 函数功能:控制车后退
- **************************************************/
- void back( )
- {
- digitalWrite(IN1,LOW);
- digitalWrite(IN2,HIGH); //左轮后退
- digitalWrite(IN3,LOW);
- digitalWrite(IN4,HIGH); //右轮后退
- }
- /**************************************************
- turnLeft子函数——左转子函数
- 函数功能:控制车左转
- **************************************************/
- void turnLeft( )
- {
- digitalWrite(IN1,LOW);
- digitalWrite(IN2,LOW); //左轮静止不动
- digitalWrite(IN3,HIGH);
- digitalWrite(IN4,LOW); //右轮前进
- }
- /**************************************************
- turnRight子函数——右后转弯转子函数
- 函数功能:控制车右后转弯
- **************************************************/
- void turnRight( )
- {
- digitalWrite(IN1,HIGH);
- digitalWrite(IN2,LOW); //左轮前进
- digitalWrite(IN3,LOW);
- digitalWrite(IN4,LOW); //右轮静止不动
- }
- /**************************************************
- stop子函数—停止子函数
- 函数功能:控制车停止
- **************************************************/
- void _stop()
- {
- digitalWrite(IN1,LOW);
- digitalWrite(IN2,LOW); //左轮静止不动
- digitalWrite(IN3,LOW);
- digitalWrite(IN4,LOW); //右轮静止不动
- }
复制代码这些代码也是参考论坛大佬的设计,通过串口读数据,检测到不同的数据值,可以进行不同的动作。大家可以通过以前的帖子,下载安卓软件,直接使用。
|