找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 4042|回复: 3
收起左侧

lcd1602.h单片机源代码

[复制链接]
ID:557394 发表于 2019-6-12 00:45 | 显示全部楼层 |阅读模式
这几天刚好用51做了一个lcd1602显示的温度器,过程还算顺利,现在附上1602的源代码
引脚都是根据开发板上定义的,lcd1602的显示较数码管可以说更为简单,在初始化之后,只要先写入指令,然后再直接写入数据就行,
相对于数码管需要段码和位码选择显示方便了很多,显示的功能也更为强大


lcd1602.h
#ifndef _1602_H_
#define _1602_H_

#include "reg52.h"

#define uint unsigned int
#define uchar unsigned char
#define LCD P0

sbit RS = P2^6;
sbit RW = P2^5;
sbit E = P2^7;

void delay(uint c);
void Init_1602();
void write_com(uchar com);   
void write_dat(uchar dat);   
void Init1();
void Init2();

#endif

lcd1602.c
#include"lcd1602.h"

void delay(uint c)
{
    uchar a,b;
    for (; c>0; c--)
    {
         for (b=199;b>0;b--)
         {
              for(a=1;a>0;a--);
         }      
    }
}

void write_com(uchar com)   
{
    E = 0;   
    RS = 0;   
    RW = 0;   
   
    LCD = com;   
    delay(1);
   
    E = 1;     
    delay(5);
    E = 0;
}

void write_dat(uchar dat)   
{
    E = 0;   
    RS = 1;   
    RW = 0;   
   
    LCD = dat;
    delay(1);
   
    E = 1;     
    delay(5);
    E = 0;
}

void Init_1602()
{
    delay(10);
    write_com(0x38);   
    delay(5);
    write_com(0x0c);   
    delay(5);
    write_com(0x06);   
    delay(5);
    write_com(0x01);   
    delay(5);
    write_com(0x80);   
    delay(5);
}

void Init1()
{
    write_com(0x80);
    write_dat('T');
    write_com(0x81);
    write_dat('e');
    write_com(0x82);
    write_dat('m');
    write_com(0x83);
    write_dat('p');
    write_com(0x84);
    write_dat(':');
}

void Init2()
{
    write_com(0xc1);
    write_dat('T');
    write_com(0xc2);
    write_dat('H');
    write_com(0xc3);
    write_dat(':');
    write_com(0xc8);
    write_dat('T');
    write_com(0xc9);
    write_dat('L');
    write_com(0xca);
    write_dat(':');
}

评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

回复

使用道具 举报

ID:328014 发表于 2019-6-12 06:53 | 显示全部楼层
楼主能分享下工程文件吗?
回复

使用道具 举报

ID:557774 发表于 2019-6-12 09:22 来自手机 | 显示全部楼层
谢谢,正需要
回复

使用道具 举报

ID:468878 发表于 2019-6-12 15:07 | 显示全部楼层
支持楼主!我也没怎么好好玩过1602.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表