资源简介

【实例简介】超声波测距并用LCD1602进行显示

【接线说明】

 Trig -------  P2^1;
 Echo -------  P2^0;
 VCC  -------- 5v
 GND  -------- GND

请在上电之前,检查好接线是否正确。

【核心代码】

超声波测距(LCD1602显示)

├── 程序
│   ├── lcd.c
│   ├── lcd.h
│   ├── main.c
│   ├── pro
│   ├── pro.hex
│   ├── pro.uvopt
│   └── pro.uvproj
└── 接线说明.txt

1 directory, 8 files


资源截图

代码片段和文件信息

#include“lcd.h“


void Read_Busy()           //忙检测函数,判断bit7是0,允许执行;1禁止
{
    unsigned char sta;      //
    LCD1602_DB = 0xff;
    LCD1602_RS = 0;
    LCD1602_RW = 1;
    do
    {
        LCD1602_EN = 1;
        sta = LCD1602_DB;
        LCD1602_EN = 0;    //使能,用完就拉低,释放总线
    }while(sta & 0x80);
}

void Lcd1602_Write_Cmd(unsigned char cmd)     //写命令
{
    Read_Busy();
    LCD1602_RS = 0;
    LCD1602_RW = 0;
    LCD1602_DB = cmd;
    LCD1602_EN = 1;
    LCD1602_EN = 0;    
}

void Lcd1602_Write_Data(unsigned char dat)   //写数据
{
      Read_Busy();
      LCD1602_RS = 1;
      LCD1602_RW = 0;
      LCD1602_DB = dat;
      LCD1602_EN = 1;
      LCD1602_EN = 0;
}

void LcdSetCursor(unsigned char xunsigned char y)  //坐标显示
{
    unsigned char addr;
    if(y == 0)
        addr = 0x00 + x;
    else
        addr = 0x40 + x;
    
    Lcd1602_Write_Cmd(addr|0x80);
}

//按指定位置显示一个字符
void DisplayOneChar(unsigned char X unsigned char Y unsigned char D

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件         120  2016-10-11 08:59  接线说明.txt
     目录           0  2020-08-02 20:02  程序\
     文件        1696  2016-10-11 08:59  程序\lcd.c
     文件        1291  2016-10-11 08:59  程序\lcd.h
     文件        2494  2016-10-11 08:59  程序\main.c
     文件       13107  2016-10-11 08:59  程序\pro
     文件        4964  2016-10-11 08:59  程序\pro.hex
     文件        5851  2016-10-11 08:59  程序\pro.uvopt
     文件       13923  2016-10-11 08:59  程序\pro.uvproj

评论

共有 条评论