标题: 智能小车相关模块程序 [打印本页]

作者: cxd18788834053    时间: 2018-6-2 20:33
标题: 智能小车相关模块程序
附录   其余各模块的程序
1 蓝牙模块参数设置程序
void InitUART(void)
{
TMOD=0x20; //
定时器1
TH1=0xfd; //
装入初值
TL1=0xfd;
TR1=1; //
启动定时器1
SM0=0; //
设置串口方式1
SM1=1;
REN=1; //
接收使能
EA=1; //
打开总中断开关
ES=1; //
打开串口中断开关
}
2蓝牙发送程序接收程序和中断程序
void Print_Char(uchar dat)
{
    SBUF = dat;           //
写数据到UART数据寄存器
while(TI!=1); //等待发送完毕
    TI=0; //
软件清零
}
void Print_Str(uchar *s)//发送字符串(uchar *s)
{   ES=0;
    while (*s)                  //
检测字符串结束标志
    {
        Print_Char(*s++);
delay(2);       //
发送当前字符
    }
ES=1;
}
void Uart() interrupt 4 using 1
{
    if (RI)
    {
        RI = 0;                 //
清除RI
      aa= SBUF;            //P0
显示串口数据
    }
}
3自动避障及灯光声音控制程序设计
void avoid_thing()
{
if(d0==0||d1==0)
{
  P1=right;
  rightled=1;
  leftled=0;
  beep=0;
   }
beep=1;
if(d3==0||d2==0)
{
  P1=left;
  rightled=0;
  leftled=1;  
  beep=0;
  }
  beep=1;
if(d0==0&&d1==0&&d2==0&&d3==0)
  {
   P1= stop;
rightled=1;
   leftled=1;
  }
if(d0==1&&d1==1&&d2==1&&d3==1)
  {
   P1= up;
rightled=0;
   leftled=0;
  }
if(moshi==0)
{
  flag=0;
  }

}
4 液晶显示程序设计
#include "reg52.h"
#include <intrins.h>
typedef unsigned char uchar;
typedef unsigned int  uint;

#define nop(); {_nop_();_nop_();_nop_();_nop_();};
#define DataPort P0                             //
定义P0口为LCD通讯端口
sbit RS=P2^7;  //
数据/命令端
sbit RW=P2^6;  //
/写选择端
sbit E=P2^5;
sbit RST=P2^4;
sbit PSB=P2^2;
sbit Busy=DataPort^7;

void lcd_busy(void)
{
   DataPort=0xff;
   RS=0;
   RW=1;
   E=1;
   while(Busy==1);
   E=0;
}

void lcd_com(uchar com)
{
   lcd_busy();
    E=0;
   RS=0;
   RW=0;  
    E=1;
   DataPort=com;
   nop();
   E=0;
}

void lcd_dat(uchar dat)
{
   lcd_busy();
   E=0;
   RS=1;
   RW=0;  
    E=1;
   DataPort=dat;
   nop();
   E=0;
}

void lcd_init(void)
{
  RST=1;
  PSB=1;
  lcd_com(0x30);  /*30---
基本指令动作*/   
  lcd_com(0x01);  /*
清屏,地址指针指向00H*/
  lcd_com(0x06);  /*
光标的移动方向*/
  lcd_com(0x0c);  /*
开显示,关游标*/
}

void lcd_disp(uchar y,uchar *str,uchar len) //
向第y  写入字符串
{
   uchar i;
   lcd_com(0x30);
   lcd_com(y);
   for(i=0;i<len;i++)
   {
     lcd_dat(*str);
str++;
   }

附录程序.doc

31 KB, 下载次数: 4, 下载积分: 黑币 -5

智能小车相关程序


作者: feiji666    时间: 2018-6-2 22:19
很好用,感谢





欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1