基于51单片机的蓝牙小车设计 下载本文

蓝牙小车设计与制作

6.2设计的总结

参考文献 附 录A

C? Cap 30pf C? 2 U1 VCC Y? XTAL 19 XTAL1 18 XTAL2 40 VCC VCC L298N +5V +12V IN1 IN2 M-A2 IN3 M-A1 IN4 M-B1 GNDM-B2 μ??ú?????£?é +12V

1 30pf R? Cap Res2 10K S? SW-PB C? 0.1uF Cap Pol1 HC-06 VCC +5V 4 3 GND TXD 2 RXD 1 à??à?£?é 9 RST 31 EA/VPP 29 PSEN 30 ALE 10 11 12 13 14 15 16 17 P3.0/RxD P3.1/TxD P3.2/INT0 P3.3/INT1 P3.4/T0 P3.5/T1 P3.6/WR P3.7/RD 39 P0.0/AD0 38 P0.1/AD1 37 P0.2/AD2 36 P0.3/AD3 35 P0.4/AD4 34 P0.5/AD5 33 P0.6/AD6 32 P0.7/AD7 1 P1.0/T2 2 P1.1/T2EX 3 P1.2 4 P1.3 5 P1.4 6 P1.5 7 P1.6 8 P1.7 P2.0/A8 21 22 P2.1/A9 23 P2.2/A10 24 P2.3/A11 25 P2.4/A12 26 P2.5/A13 27 P2.6/A14 28 P2.7/A15 M-A1 M-A2

M-A1 M-B1 M-B2

M-A M-A2 M Motor M-B1 M-B M-B2 M Motor +12V +11.1V 20 VSS STC 89C52 18650

图12:蓝牙小车电路原理图

16

蓝牙小车设计与制作

附录B

图13:整车实物图

17

蓝牙小车设计与制作

附录C

设计程序:程序仅为参考,具体设计请自行编写

/********************************************************/ #include \

sbit motor_control_1 = P0^0;//左轮前进 sbit motor_control_2 = P0^1;//左轮后退 sbit motor_control_3 = P0^2;//右轮前进 sbit motor_control_4 = P0^3;//右轮后退 unsigned char ucBluetoothData = 230; void initial_myself(); void initial_peripheral(); void T0_time();

void usart_service(void);

void delay_long(unsigned int uiDelayLong); void go_forward(void);//前进 void fall_back(void);//后退 void turn_left(void);//左转 void turn_right(void);//右转 void stop(); void main() {

initial_myself();

18

蓝牙小车设计与制作

delay_long(100); initial_peripheral(); while(1) {

usart_service(); } }

//串口服务函数 void usart_service() {

switch(ucBluetoothData) {

case 0x41: //case 0x04://前进 ucBluetoothData = 0x02; go_forward(); break;

case 0x42 : // case 0x05://左转 ucBluetoothData = 0x02; turn_left(); break;

case 0x44: // case 0x06://右转 ucBluetoothData = 0x02;

19