• 大小: 277KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-05-20
  • 语言: 其他
  • 标签:

资源简介

超声波资料 开发超声波就要它

资源截图

代码片段和文件信息

SMC1602A(16*2)模拟口线接线方式
连接线图:
       ---------------------------------------------------
       |LCM-----51   | LCM-----51   | LCM------51      |
       --------------------------------------------------|
       |DB0-----P1.0 | DB4-----P1.4 | RW-------P3.4    |
       |DB1-----P1.1 | DB5-----P1.5 | RS-------P3.3    |
       |DB2-----P1.2 | DB6-----P1.6 | E--------P3.5    |
       |DB3-----P1.3 | DB7-----P1.7 | VLCD接1K电阻到GND|
       ---------------------------------------------------
接线:模块TRIG接 P2.6  ECH0 接P2.7

本程序源码只供学习参考,不得应用于商业用途,如有需要请联系作者。

[注:AT89x51使用12M或11.0592M晶振实测使用11.0592M]
=============================================================*/
#include  //器件配置文件
#include 
#define  RX  P2_7
#define  TX  P2_6

#define LCM_RW  P3_4 //定义LCD引脚
#define LCM_RS  P3_3
#define LCM_E   P3_5
#define LCM_Data  P1

#define Key_Data P2_0 //定义Keyboard引脚
#define Key_CLK  P3_2

#define Busy    0x80 //用于检测LCM状态字中的Busy标识

void LCMInit(void);
void DisplayOneChar(unsigned char X unsigned char Y unsigned char DData);
void DisplayListChar(unsigned char X unsigned char Y unsigned char code *DData);
void Delay5Ms(void);
void Delay400Ms(void);
void Decode(unsigned char ScanCode);
void WriteDataLCM(unsigned char WDLCM);
void WriteCommandLCM(unsigned char WCLCMBuysC);

unsigned char ReadDataLCM(void);
unsigned char ReadStatusLCM(void);
unsigned char code mcustudio[] ={“mcustudio.com.cn“};
unsigned char code email[] =    {“fhwxaoo@163.com “};
unsigned char code Cls[] =      {“                “};
unsigned char code ASCII[15] =    {‘0‘‘1‘‘2‘‘3‘‘4‘‘5‘‘6‘‘7‘‘8‘‘9‘‘.‘‘-‘‘M‘};

static unsigned char DisNum = 0; //显示用指针   
       unsigned int  time=0;
   unsigned long S=0;
   bit      flag =0;
   unsigned char disbuff[4]    ={ 0000};


//写数据
void WriteDataLCM(unsigned char WDLCM) 
{
ReadStatusLCM(); //检测忙
LCM_Data = WDLCM;
LCM_RS = 1;
LCM_RW = 0;
LCM_E = 0; //若晶振速度太高可以在这后加小的延时
LCM_E = 0; //延时
LCM_E = 1;
}

//写指令
void WriteCommandLCM(unsigned char WCLCMBuysC) //BuysC为0时忽略忙检测
{
if (BuysC) ReadStatusLCM(); //根据需要检测忙
LCM_Data = WCLCM;
LCM_RS = 0;
LCM_RW = 0;
LCM_E = 0;
LCM_E = 0;
LCM_E = 1;
}

//读数据
unsigned char ReadDataLCM(void)
{
LCM_RS = 1; 
LCM_RW = 1;
LCM_E = 0;
LCM_E = 0;
LCM_E = 1;
return(LCM_Data);
}

//读状态
unsigned char ReadStatusLCM(void)
{
LCM_Data = 0xFF; 
LCM_RS = 0;
LCM_RW = 1;
LCM_E = 0;
LCM_E = 0;
LCM_E = 1;
while (LCM_Data & Busy); //检测忙信号
return(LCM_Data);
}

void LCMInit(void) //LCM初始化
{
LCM_Data = 0;
WriteCommandLCM(0x380); //三次显示模式设置,不检测忙信号
Delay5Ms(); 
WriteCommandLCM(0x380);
Delay5Ms(); 
WriteCommandLCM(0x380);
Delay5Ms(); 

WriteCommandLCM(0x381); //显示模式设置开始要求每次检测忙信号
WriteCommandLCM(0x081); //关闭显示
WriteCommandLCM(0x011); //显示清屏
WriteCommandLCM(0x061); // 显示光标移动设置
WriteCommandLCM(0x0F1); // 显示开及光标设置
}

//按指定位置显示一个字符
void DisplayOneChar(unsign

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

     文件      88576  2011-03-21 12:07  超声波资料\使用说明书.doc

     文件       4702  2010-06-20 22:33  超声波资料\超声波PIC单片机C程序\HC-SR04PIC.txt

     文件       5287  2009-12-22 22:40  超声波资料\超声波测距51C程序\51.C

     文件      15396  2010-05-01 20:52  超声波资料\超声波测距LC1602显示\脉宽测量

     文件       6649  2011-02-15 18:23  超声波资料\超声波测距LC1602显示\脉宽测量.c

     文件       5450  2010-05-01 20:52  超声波资料\超声波测距LC1602显示\脉宽测量.hex

     文件         33  2010-05-01 20:52  超声波资料\超声波测距LC1602显示\脉宽测量.lnp

     文件      13847  2010-05-01 20:52  超声波资料\超声波测距LC1602显示\脉宽测量.LST

     文件      17585  2010-05-01 20:52  超声波资料\超声波测距LC1602显示\脉宽测量.M51

     文件      16477  2010-05-01 20:52  超声波资料\超声波测距LC1602显示\脉宽测量.OBJ

     文件       1149  2011-02-15 18:23  超声波资料\超声波测距LC1602显示\脉宽测量.Opt

     文件          0  2011-02-18 13:22  超声波资料\超声波测距LC1602显示\脉宽测量.plg

     文件       1691  2011-02-18 13:22  超声波资料\超声波测距LC1602显示\脉宽测量.Uv2

     文件       1153  2011-02-15 18:23  超声波资料\超声波测距LC1602显示\脉宽测量_Opt.Bak

     文件       1996  2011-02-15 18:08  超声波资料\超声波测距LC1602显示\脉宽测量_Uv2.Bak

     文件      17573  2010-05-01 20:54  超声波资料\超声波测距LCD12864显示\测距程序

     文件      13060  2011-02-15 18:24  超声波资料\超声波测距LCD12864显示\测距程序.C

     文件       8940  2010-05-01 20:54  超声波资料\超声波测距LCD12864显示\测距程序.hex

     文件         48  2010-05-01 20:54  超声波资料\超声波测距LCD12864显示\测距程序.lnp

     文件      21840  2010-05-01 20:54  超声波资料\超声波测距LCD12864显示\测距程序.LST

     文件      19085  2010-05-01 20:54  超声波资料\超声波测距LCD12864显示\测距程序.M51

     文件      19088  2010-05-01 20:54  超声波资料\超声波测距LCD12864显示\测距程序.OBJ

     文件        978  2011-02-15 18:24  超声波资料\超声波测距LCD12864显示\测距程序.Opt

     文件        208  2011-02-15 18:24  超声波资料\超声波测距LCD12864显示\测距程序.plg

     文件       1999  2011-02-15 18:08  超声波资料\超声波测距LCD12864显示\测距程序.Uv2

     文件        975  2011-02-15 18:08  超声波资料\超声波测距LCD12864显示\测距程序_Opt.Bak

     文件       2151  2010-04-21 23:37  超声波资料\超声波测距LCD12864显示\测距程序_Uv2.Bak

     文件      78451  2009-11-01 20:47  超声波资料\超声波测距串口显示\串口接线方式.jpg

     文件      10584  2010-05-01 20:54  超声波资料\超声波测距串口显示\测距程序

     文件       2297  2011-02-15 18:24  超声波资料\超声波测距串口显示\测距程序.C

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

评论

共有 条评论

相关资源