• 大小: 4.09MB
    文件类型: .rar
    金币: 2
    下载: 1 次
    发布日期: 2023-09-29
  • 语言: 其他
  • 标签: STC89C52RC  

资源简介

本人毕业设计的一部分 keil + STC89C52RC + 超声传感器 + 蓝牙串口模块+红外壁障模块 实现多功能智能车的单片机控制,以上模块功能均能实现,可实现电脑上位机的蓝牙无线控制,已亲自验证修改,keil中能够直接编译运行。带有多个开发应用文档,可以参考。

资源截图

代码片段和文件信息

#include
#include 

#define uint unsigned int 
#define uchar unsigned char 
sbit den=P3^6;
sbit an1=P2^4;
sbit an2=P2^5;
sbit an3=P2^6;
sbit an4=P2^7;

#define left P0_0
#define right P0_1
#define go P0_2
#define back P0_3
#define stop P0_4

#define leftdata 0x41
#define rightdata 0x44
#define godata 0x57
#define backdata 0x53
#define stopdata 0x45

unsigned char abflag1;

#define  RX  P1_0
#define  TX  P1_1
unsigned int  time=0;
unsigned int  timer=0;
unsigned char posit=0;
unsigned long S=0;
bit      flag =0;
unsigned char const discode[] ={ 0xC00xF90xA40xB00x990x920x820xF80x800x900xBF0xff/*-*/};
unsigned char const positon[3]={ 0xfe0xfd0xfb};
unsigned char disbuff[4]    ={ 0000};

#define Left_moto_go      { P1_4=1P1_5=0; }      //左边两个电机向前走
#define Left_moto_back    { P1_4=0P1_5=1; }    //左边两个电机向后转
#define Left_moto_Stop    { P1_4=0P1_5=0; }      //左边两个电机停转                     
#define Right_moto_go     { P1_6=1P1_7=0; }   //右边两个电机向前走
#define Right_moto_back   { P1_6=0P1_7=1; }   //右边两个电机向前走
#define Right_moto_Stop   { P1_6=0P1_7=0; }   //右边两个电机停转   
sbit Left_led_1=P3^2; 
sbit Right_led_1=P3^3 ;
sbit Left_led_2=P1^2; 
sbit Right_led_2=P1^3; 

void delayms(uint ms);

void Display(void)  //扫描数码管
{
 if(posit==0)
 {P0=(discode[disbuff[posit]])&0x7f;}
 else
 {P0=discode[disbuff[posit]];}
  P2=positon[posit];

  if(++posit>=3)
  posit=0;
}
     
void  run(void)
    {
 Left_moto_go ;
 Right_moto_go ;
    } 

void Conut(void)
{
 time=TH0*256+TL0;
 TH0=0;
 TL0=0;

 S=(time*1.7)/100;     //算出来是CM
 if((S>=700)||flag==1) //超出测量范围显示“-“
 {  
  flag=0;
  disbuff[0]=10;    //“-“
  disbuff[1]=10;    //“-“
  disbuff[2]=10;    //“-“
 }
 else
 {
  disbuff[0]=S%1000/100;
  disbuff[1]=S%1000%100/10;
  disbuff[2]=S%1000%10 %10;
 }
}

     void zd0() interrupt 1   //T0中断用来计数器溢出超过测距范围
  {
    flag=1;  //中断溢出标志
  }

   void  zd3()  interrupt 3   //T1中断用来扫描数码管和计800MS启动模块
  {
 TH1=0xf8;
 TL1=0x30;
 Display();
 timer++;
 if(timer>=400)
 {
  timer=0;
  TX=1;                 //800MS  启动一次模块
  _nop_(); 
  _nop_(); 
  _nop_(); 
  _nop_(); 
  _nop_(); 
  _nop_(); 
  _nop_(); 
  _nop_(); 
  _nop_(); 
  _nop_(); 
  _nop_(); 
  _nop_(); 
  _nop_(); 
  _nop_(); 
  _nop_(); 
  _nop_(); 
  _nop_();
  _nop_(); 
  _nop_(); 
  _nop_(); 
  _nop_();
  TX=0;
 } 
  }

void serial() interrupt 4 //中断法
{
flag1=1;
b=SBUF;
RI=0;//中断标志
}

void main()
{        
  while(1)
  {
   if(an1==0)
   {    
    den=0;
   delayms(50);
den=1;
delayms(50);
    TMOD=0x11;    //设T0为方式1,GATE=1;
TH0=0;
TL0=0;          
TH1=0xf8;    //2MS定时
TL1=0x30;
ET0=1;             //允许T0中断
ET1=1;    //允许T1中断
TR1=1;    //开启定时器
EA=1;    //开启总中断

while(1)
{
 while(

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       6631  2014-01-13 20:55  多功能小车 单片机\Car.c

     文件      51712  2012-05-23 08:17  多功能小车 单片机\完整程序.doc

     文件    1115862  2012-05-10 14:10  多功能小车 单片机\论文\流程图、结构图\循黑线.bmp

     文件    1033358  2012-05-10 16:26  多功能小车 单片机\论文\流程图、结构图\总体流程图.bmp

     文件      37888  2012-05-10 16:26  多功能小车 单片机\论文\流程图、结构图\总体流程图.doc

     文件      41472  2012-05-10 18:59  多功能小车 单片机\论文\流程图、结构图\总体结构图.doc

     文件    1017018  2012-05-10 14:09  多功能小车 单片机\论文\流程图、结构图\超声波测距.bmp

     文件    1115862  2012-05-10 14:10  多功能小车 单片机\论文\流程图、结构图\避障.bmp

     文件    1446822  2012-05-07 20:23  多功能小车 单片机\论文\原理图、PCB\PCB 3D效果.bmp

     文件    1511022  2012-05-07 20:15  多功能小车 单片机\论文\原理图、PCB\PCB彩图.bmp

     文件     775595  2012-05-07 20:18  多功能小车 单片机\论文\原理图、PCB\processor.pdf

     文件      33764  2012-05-07 10:10  多功能小车 单片机\参考图片\参考图片\共阳极数码管尺寸.jpg

     文件      23364  2012-05-07 10:01  多功能小车 单片机\参考图片\参考图片\数码管驱动电路.gif

     文件     501923  2012-05-09 14:35  多功能小车 单片机\使用硬件\L293N.pdf

     文件    1016320  2012-05-10 09:46  多功能小车 单片机\使用硬件\四路红外传感器.doc

     文件    1589248  2012-05-10 10:39  多功能小车 单片机\使用硬件\小车底盘.doc

     文件     185344  2012-05-10 22:18  多功能小车 单片机\使用硬件\红外释热传感器.doc

     文件      79360  2012-05-09 21:44  多功能小车 单片机\使用硬件\超声波模块.doc

     文件      79872  2012-05-10 10:35  多功能小车 单片机\使用硬件\金属探测.doc

     文件     382976  2012-05-10 10:33  多功能小车 单片机\使用硬件\驱动模块.doc

     目录          0  2014-01-13 21:03  多功能小车 单片机\论文\流程图、结构图

     目录          0  2014-01-13 21:03  多功能小车 单片机\论文\原理图、PCB

     目录          0  2014-01-13 21:03  多功能小车 单片机\参考图片\参考图片

     目录          0  2014-01-13 21:03  多功能小车 单片机\论文

     目录          0  2014-01-13 21:03  多功能小车 单片机\参考图片

     目录          0  2014-01-13 21:03  多功能小车 单片机\使用硬件

     目录          0  2014-01-13 21:03  多功能小车 单片机

----------- ---------  ---------- -----  ----

             12045413                    27



............此处省略0个文件信息

评论

共有 条评论