• 大小: 782KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-06-11
  • 语言: C/C++
  • 标签: 智能小车  

资源简介

51c语言代码循迹智能小车+proteus仿真

资源截图

代码片段和文件信息

#include
#include “1602.h“
#include

void LCD_Init()
{
DelayMs(15); //延迟15ms,等待LCD电源稳定使其进入工作状态
LCD_IO = 0x00;
LCD_Write_Command(LCD_DISPLAY_DOUBLE_LINE); 
DelayMs(5); 
LCD_Write_Command(LCD_DISPLAY_DOUBLE_LINE); 
DelayMs(5); 
LCD_Write_Command(LCD_DISPLAY_DOUBLE_LINE); //显示模式设置为两行显示,8位数据接口,5*8点阵
DelayMs(5);
LCD_Write_Command(LCD_AC_AUTO_INCREMENT | LCD_MOVE_DISENABLE); //数据读、写操作后AC自动增一画面不动
DelayMs(5);
LCD_Write_Command(LCD_DISPLAY_ON | LCD_CURSOR_OFF); //显示开,光标不显示
DelayMs(5);
LCD_Write_Command(LCD_CLEAR_SCREEN); //清除LCD显示内容 
}
/************延迟函数*******************************/
void DelayUs(uchar us)//delay us
{
unsigned char uscnt;
uscnt=us>>1; /* Crystal frequency in 12MHz*/
while(--uscnt);
}
void DelayMs(uchar ms)//delay Ms
{
while(--ms)
{
DelayUs(250);
DelayUs(250);
DelayUs(250);
DelayUs(250);
}
}
/************LCD1602写指令*******************************/
void LCD_Write_Command(uchar com)
{
LCD_Check_Busy();
LCD_RS = LOW;
LCD_RW = LOW;
_nop_(); //一个_nop_();是一个机器周期,是1us
LCD_EN = HIGH;
LCD_IO = com;
LCD_EN = LOW;
}
/********************************************************/
/*****************LCD1602写数据**************************/
void LCD_Write_Data(uchar dat)
{
LCD_Check_Busy();
LCD_RS = HIGH;
LCD_RW = LOW;
_nop_();
LCD_EN=HIGH;
LCD_IO=dat;
LCD_EN=LOW;
}
/********************************************************/
/**********************显示一个字节**************************/
void LCD_Char(uchar x uchar line uchar dat) //从第x开始写一个字节
{
unsigned char address;
if (line == LINE1) // line=0,为第一行
address = LINE1_HEAD + x;
else // 否则为第二行
address = LINE2_HEAD + x;
LCD_Write_Command(address); 
LCD_Write_Data(dat);
}
/********************************************************/
/******************LCD1602显示字符串*********************/
void LCD_Str(uchar xuchar lineuchar *Str) //从第line行的第x位置开始显示字符串
{
uchar i = x;

if (line == LINE1)
{
while( *Str != ‘\0‘)
LCD_Char(i++ 0 *Str++);
}
else 
{
while( *Str != ‘\0‘)
LCD_Char(i++ 1 *Str++);
}
}
/***************************LCD忙碌状态*******************************/
void LCD_Check_Busy(void) //检测LCD状态看它是不是还在忙呢
{
do
{
LCD_EN=0;
LCD_RS=0;
LCD_RW=1;
LCD_IO=0xff;
LCD_EN=1;
}
while (LCD_BUSY==1);

LCD_EN=0;
}
/*****************屏幕闪烁********************/
void LCD_Flash(uchar time)

//控制停留时间
LCD_Write_Command(LCD_DISPLAY_OFF); //关闭显示
DelayMs(time); 
//延时
LCD_Write_Command(LCD_DISPLAY_ON); //开显示
DelayMs(time);
LCD_Write_Command(LCD_DISPLAY_OFF); //关闭显示
DelayMs(time); 
//延时
LCD_Write_Command(LCD_DISPLAY_ON); //开显示
DelayMs(time);
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2014-04-05 11:06  循迹小车+仿真\
     目录           0  2014-03-30 20:29  循迹小车+仿真\HARDWARE\
     文件        2881  2013-12-28 16:51  循迹小车+仿真\HARDWARE\1602.c
     文件        2462  2014-03-30 19:20  循迹小车+仿真\HARDWARE\1602.h
     文件        1612  2013-08-20 12:58  循迹小车+仿真\HARDWARE\pid.c
     文件         728  2013-08-20 12:58  循迹小车+仿真\HARDWARE\pid.h
     文件        1528  2014-03-30 19:55  循迹小车+仿真\HARDWARE\pwm.c
     文件         265  2014-03-30 18:32  循迹小车+仿真\HARDWARE\pwm.h
     文件        1085  2014-03-30 20:22  循迹小车+仿真\HARDWARE\xunji.c
     文件          81  2014-03-30 19:42  循迹小车+仿真\HARDWARE\xunji.h
     文件         399  2011-04-23 10:24  循迹小车+仿真\keilkilll.bat
     文件      119998  2014-03-30 20:23  循迹小车+仿真\Last Loaded 循迹.DBK
     文件      920155  2014-04-05 11:05  循迹小车+仿真\QQ截图6.jpg
     目录           0  2014-04-05 11:14  循迹小车+仿真\USER\
     文件         554  2014-03-30 17:38  循迹小车+仿真\USER\1602 .lst
     文件         114  2014-03-30 17:38  循迹小车+仿真\USER\1602 .__i
     文件        6149  2014-03-30 19:20  循迹小车+仿真\USER\1602.lst
     文件       10551  2014-03-30 19:20  循迹小车+仿真\USER\1602.obj
     文件         111  2014-03-30 19:20  循迹小车+仿真\USER\1602.__i
     文件         591  2014-04-05 11:46  循迹小车+仿真\USER\main.c
     文件        1861  2014-04-05 11:14  循迹小车+仿真\USER\main.LST
     文件        5066  2014-04-05 11:14  循迹小车+仿真\USER\main.OBJ
     文件          62  2014-04-05 11:14  循迹小车+仿真\USER\main.__i
     文件        4393  2014-03-30 19:55  循迹小车+仿真\USER\pwm.lst
     文件        6973  2014-03-30 19:55  循迹小车+仿真\USER\pwm.obj
     文件         108  2014-03-30 19:55  循迹小车+仿真\USER\pwm.__i
     文件        6376  2009-05-07 14:37  循迹小车+仿真\USER\STARTUP.A51
     文件       14048  2014-03-30 17:31  循迹小车+仿真\USER\STARTUP.LST
     文件         749  2014-03-30 17:31  循迹小车+仿真\USER\STARTUP.OBJ
     文件        3725  2014-03-30 20:22  循迹小车+仿真\USER\xunji.lst
     文件        6895  2014-03-30 20:22  循迹小车+仿真\USER\xunji.obj
............此处省略12个文件信息

评论

共有 条评论