手机蓝牙遥控智能小车_第1页
手机蓝牙遥控智能小车_第2页
手机蓝牙遥控智能小车_第3页
手机蓝牙遥控智能小车_第4页
手机蓝牙遥控智能小车_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

模块化蓝牙遥控、超声波避障及人体检测智能小车说明书实用创造协会:徐鹏王鹏一﹑小车说明1小车采用传统51单片机控制,能实现蓝牙遥控﹑超声波避障及人体检测功能,各种状态能在LCD1602液晶屏上直观的显示出来。2小车地盘采用四个直流电机驱动,装有蓝牙模块一个﹑超声波模块一个﹑单片机系统板一块﹑STC89C52RC单片机一块电池一块﹑LCD1602液晶屏一块﹑L9110电机驱动模块两块﹑稳压模块一块﹑人体红外传感器模块两块及装饰LED。二﹑模块说明 1蓝牙模块:核心模块使用HC-06从模块,接口电平3.3V,可以直接连接各种单片机,配对以后当全双工串口使用,仅支持8位数据位、1位停止位、无奇偶校验的通信格式,自身的TXD直接连接到单片机RXD,RXD接单片机TXD。 2超声波模块:使用电压5V,静态电流小于2mA,电平输出高5V低0V,感应角度不大于15度,探测距离2cm-450cm。 3STC89C52RC:STC89C52RC是STC公司生产的一种低功耗、高性能CMOS8位微控制器,具有以下标准功能:8k字节Flash,512字节RAM,32位I/O口线,看门狗定时器,内置4KBEEPROM,MAX810复位电路,3个16位定时器/计数器,4个外部中断,一个7向量4级中断结构〔兼容传统51的5向量2级中断结构〕,全双工串行口。另外STC89X52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。最高运作频率35MHz,6T/12T可选。 4L9110电机驱动模块:

模块供电电压2.5-12V,电机工作电压2.5v-12V之间,最大工作电流0.8A,可以同时驱动2个直流电机,或者1个4线2相式步进电机。通过单片机给逻辑电压从而控制直流电机的正反转。 5LM2596S稳压模块:输入直流电压3V至40V,输出直流电压1.5V至35V电压连续可调,高效率最大输出电流为3A。使用SANYO固态电容,高Q值大功率电感。6单片机系统板:全部引出P0﹑P1﹑P2及P3接口,P0带上拉电阻,有5V电源接口,12MHz晶振,有RXDTXD

GND接口方便STC单片机的串口下载,有ATMELISP下载端口,方便AT89S系列单片机下载,单片机紧锁座方便更换单片机。7人体红外传感器模块:HC-SR50热释电红外传感器是一种能检测人或动物发射的红外线而输出电信号的传感器,工作电压5v-20v之间,它由陶瓷氧化物或压电晶体元件组成在元件两个外表做成电极,在传感器监测范围内温度有ΔT的变化时,热释电效应会在两个电极上会产生电荷ΔQ,即在两电极之间产生一微弱的电压ΔV。三﹑功能说明 1超声波避障:利用单片机从控制口发一个10US以上的高电平,就可以在接收口等待高电平输出,一有输出就可以开定时器计时,当此口变为低电平时就可以读定时器的值,此时就为此次测距的时间,方可算出距离,如果距离小于设定的值小车采取转弯避障。 2蓝牙遥控:连接小车,通过上位机发送命令控制小车。四﹑操作说明 1接通电源,翻开单片机系统板开关,程序初始化开始。 2翻开蓝牙,翻开遥控软件界面如图1-1,等待和小车连接成功〔蓝牙红色指示灯不再闪烁〕。 3等待LCD1602界面显示selectafunction字样,第一次按键小车开启蓝牙遥控功能,按下操作界面〔图1-1〕对应按键小车即执行相应动作。第一次按键小车开启超声波避障功能此时小车自动前进,并遇到障碍物自动躲开,在执行避障过程中按键小车停止避障停在原地,再一次按键小车继续执行避障功能。图1-1五﹑考前须知 1电池正负极严禁接反。 2严禁乱改动线路。 3严禁卡死轮胎以免烧毁电机。 4严禁小车从高处掉下。 5两个功能之间切换需要复位单片机。 6小车严禁沾到水。 7软件在附带U盘中。附源程序一份:#include<REGX51.H>#defineucharunsignedchar#defineuintunsignedint#defineGPIOP2 //液晶数据输入口uchara,bai,shi,ge,int0,int1;uinttime,dist;sbitLCDE=P3^5; //液晶使能端sbitRW=P3^6; //写入数据与命令选择端sbitRS=P3^7; //读写选择端sbitFLMA=P0^0; //电机逻辑电压接口sbitFLMB=P0^1;sbitFRMA=P0^2;sbitFRMB=P0^3;sbitBLMA=P0^4;sbitBLMB=P0^5;sbitBRMA=P0^6;sbitBRMB=P0^7;sbittrig=P1^0; //触发控制信号输入sbitecho=P1^1; //回响信号输出ucharcodewel[]="Welcomeyouto";//14欢送ucharcodeexp[]="experience!!!"; //13体验ucharcodeini[]="Initialize...";//16初始化ucharcodexup[]="XuPengMade";//16徐鹏制作ucharcodesel[]="Selectfunction"; //15选择功能ucharcodebul[]="BluetoothControl";//16蓝牙控制ucharcodeavo[]="Avoidobstacle";//16避障ucharcodedis[]="Dist:"; //6距离ucharcodefow[]="Forward"; //14前进ucharcodebac[]="Back"; //14后退ucharcodetul[]="Turnleft"; //14左转ucharcodetur[]="Turnright"; //14右转ucharcodesto[]="Stop"; //14停止voiddelay_20us() //延时20us{uchara; for(a=0;a<20;a++);}voidforward() //前进{ FLMA=1; FLMB=0; FRMA=1; FRMB=0; BLMA=1; BLMB=0; BRMA=1; BRMB=0;}voidback() //后退{ FLMA=0; FLMB=1; FRMA=0; FRMB=1; BLMA=0; BLMB=1; BRMA=0; BRMB=1;}voidturnleft() //左转{FLMA=0; FLMB=1; FRMA=1; FRMB=0; BLMA=0; BLMB=1; BRMA=1; BRMB=0;}voidturnright() //右转{FLMA=1; FLMB=0; FRMA=0; FRMB=1; BLMA=1; BLMB=0; BRMA=0; BRMB=1;}voidstop() //停止{FLMA=0; FLMB=0; FRMA=0; FRMB=0; BLMA=0; BLMB=0; BRMA=0; BRMB=0;}voidcl()interrupt4 //串口中断函数{ RI=0; a=SBUF; //上位机为16进制}voidtimer0(void)interrupt1 //定时器0中断函数{ TH0=0; TL0=0;}voidinit_wai0()interrupt0 //外部中断0函数{ int0=1; }voidinit_wai1()interrupt2 //外部中断1函数{ int1=1; }voidcheck() //超声波检测函数{ trig=1; delay_20us(); trig=0; while(echo==0); TR0=1; ET0=1; while(echo==1); TR0=0; ET0=0; time=TH0*256+TL0; //计算时间 TH0=0; TL0=0; TF0=0; dist=(time*1.7)/100; //计算距离} voidDelay1ms(unsignedinta) // 延时1ms函数{ unsignedinti,j; for(i=a;i>0;i--) for(j=110;j>0;j--);}voidLCDCom(unsignedcharcom) //LCD写入命令函数{ RW=0; RS=0; GPIO=com; Delay1ms(10); LCDE=1; Delay1ms(10); LCDE=0; }voidLCDwriteDate(unsignedchardat) //LCD写入数据函数{ RS=1; RW=0; GPIO=dat; Delay1ms(10); LCDE=1; Delay1ms(10); LCDE=0;}voidLCDInit() //LCD初始化函数{ LCDCom(0x38); LCDCom(0x0c); LCDCom(0x06); LCDCom(0x01);}voidmain() //主函数{ uchari; PCON=0x00; //波特率不加倍 SCON=0x50; //设置串口工作方式为1 TMOD=0x21; //定时器T1工作方式2,定时器T0工作方式1 TH1=0xfd; //定时器初值:9600波特率 TL1=0xfd; TH0=0; //付初值 TL0=0; trig=0; TR1=1; //启动定时器1 IT0=1; //外部中断0下降沿触发 IT1=1;//外部中断1下降沿触发 EX0=1;//开外部中断0 EX1=1; //开外部中断1 EA=1; //开中断 ES=1; //允许串口中断 PT0=1; //定时器0中断优先级最高 LCDInit(); LCDCom(0x80); for(i=0;i<14;i++) { LCDwriteDate(wel[i]); } LCDCom(0x80+0x40); for(i=0;i<13;i++) { LCDwriteDate(exp[i]); } Delay1ms(2000); LCDCom(0x01); LCDCom(0x80); for(i=0;i<16;i++) { LCDwriteDate(ini[i]); } LCDCom(0x80+0x40); for(i=0;i<16;i++) { LCDwriteDate(xup[i]); } Delay1ms(2000); LCDCom(0x80); for(i=0;i<15;i++) { LCDwriteDate(sel[i]); }while(1){ if(a==0x0e) { LCDCom(0x80); for(i=0;i<16;i++) { LCDwriteDate(bul[i]); } while(1) { switch(a) { case0x0e:{forward(); Delay1ms(70); LCDCom(0x80+0x40); for(i=0;i<14;i++) { LCDwriteDate(fow[i]); } }break; //前 case0x0c:{back(); Delay1ms(70); LCDCom(0x80+0x40); for(i=0;i<14;i++) { LCDwriteDate(bac[i]); } }break; //后 case0x0b:{turnleft(); Delay1ms(70); LCDCom(0x80+0x40); for(i=0;i<14;i++) { LCDwriteDate(tul[i]); } }break; //左 case0x09:{turnright(); Delay1ms(70); LCDCom(0x80+0x40); for(i=0;i<14;i++) { LCDwriteDate(tur[i]); } }break; //右 case0x04:{stop(); Delay1ms(70); LCDCom(0x80+0x40); for(i=0;i<14;i++) { LCDwriteDate(sto[i]); } }break; //停 default:break; } if((int0==1)||(int1==1)||((int0==1)&&(int1==0))||((int0==0)&&(int1==1))) { int0=0; int1=0; LCDCom(0x80+0x40+0x0E); LCDwriteDate('N'); LCDCom(0x80+0x40+0x0F); LCDwriteDate('P'); } elseif((int0==0)&&(int1==0)) { LCDCom(0x80+0x40+0x0E); LCDwriteDate('H'); LCDCom(0x80+0x40+0x0F); LCDwriteDate('P'); } } } elseif(a==0x0c) { LCDCom(0x80); for(i=0;i<16;i++) { LCDwriteDate(avo[i]); } LCDCom(0x80+0x40); for(i=0;i<6;i++) { LCDwriteDate(dis[i]); } while(1) { check(); if(dist<=40) { stop(); Delay1ms(400); back(); Delay1ms(600); turnright(); Delay1ms(400); forward(); } if(a==0x04) { stop(); } else{forward();} bai=dist/100; shi=dist%100/10; ge=dist%10; LCDCom(0x80+0x46); LCDwriteDate('0'+bai); Delay1ms(10);

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论