C51---LCD1602显示一行字符
创始人
2024-06-02 18:40:04
0

1.器件:C51、LCD1602

2.code:

#include "reg52.h"
#include "intrins.h"
#define     databuffer  P0//定义8位数据线,Po端口组

sbit        RS = P1^0;
sbit        RW = P1^1;
sbit        EN = P1^4;

void check_busy()
{
    char tmp = 0x80;
    databuffer = 0x80;
    
    while (tmp & 0x80 ){
        RS  = 0;
        RW  = 1;
        EN  = 0;
        _nop_();
        EN  = 1;
        _nop_();
        _nop_();
    tmp = databuffer;
        EN = 0;
        _nop_();
    }

}

void Write_Cmd_Func(char cmd)
{
    check_busy();
        RS  = 0;
        RW  = 0;
    
        EN  = 0;
        _nop_();
    databuffer = cmd;
        EN  = 1;
        _nop_();
        _nop_();
        EN = 0;
        _nop_();
    
}

void Write_Data_Func(char dataShow)
{
        check_busy();
        RS  = 1;
        RW  = 0;
    
        EN  = 0;
        _nop_(); 
    databuffer = dataShow;
        _nop_();
        EN  = 1; 
        _nop_();
        _nop_();
        EN = 0;
        _nop_();

}

void Delay15ms()        //@11.0592MHz
{
    unsigned char i, j;

    i = 27;
    j = 226;
    do
    {
        while (--j);
    } while (--i);
}

void Delay5ms()        //@11.0592MHz
{
    unsigned char i, j;
    i = 9;
    j = 244;
    do
    {
        while (--j);
    } while (--i);
}


void LCD1602_INIT()
{
     //延时15ms
    Delay15ms();
    //写指令38H(不检测忙信号)
    Write_Cmd_Func(0x38);
    //延时5ms
    Delay5ms();
    //以后每次写指令,读/写数据操作均需要检测忙信号
    //写指令38H,显示模式设置
    Write_Cmd_Func(0x38);
    //写指令08H,显示关闭
    Write_Cmd_Func(0x08);
    //写指令01H,显示清屏
    Write_Cmd_Func(0x01);
    //写指令06H,显示光标移动设置
    Write_Cmd_Func(0x06);
    //写指令0CH,显示开光标设置
    Write_Cmd_Func(0x0C);
}

void LCD1602_showline(char row,char col,char *string)
{
         switch(row){
            
             case 1:
             Write_Cmd_Func(0x80+col);
                while(*string){
                            Write_Data_Func(*string);
                            string++;
                }
                break;
                
              case 2:
                Write_Cmd_Func(0x80+0x40+col); 
                while(*string){
                            Write_Data_Func(*string);
                            string++;
                }
                break;
    }
}

void main()
{
    char position = 0x80+0x05;
    //char dataShow = 'C';
    LCD1602_INIT();
    LCD1602_showline(1,5,"NO.1");
    LCD1602_showline(2,0,"Tayminy Fuo");
    //Write_Cmd_Func(position);//选择要显示的地址
    //Write_Data_Func(dataShow);//发送要显示的字符
}
    
    
     
    
    
    
    
    
    
    
    

3.效果

 

 

相关内容

热门资讯

浙江官宣:蒋移祥被查 转自:上观新闻浙江省纪委省监委网站5月17日消息,浙江省盐业集团有限公司原党委书记、董事长蒋移祥涉嫌...
多地强化政策支持 外贸产品转内... 转自:中国发展网外贸产品转内销提速增量记者 杨阳腾 刘 畅 杨开新 王金虎为应对当前复杂多变的国际形...
仙乐健康:公司产品涉及NAD+... 投资者提问:董秘您好!请问公司有麦角硫因及其原料、中间体、产成品或应用吗?如有,是什么产品?有什么用...
广西县级及以上城市有望2027... 中新网南宁5月18日电(涂丽莎)2025年世界电信和信息社会日大会暨《广西“万兆启航 智赋八桂”高质...
京东买药618大促升级:每下一... 日前,京东宣布,又好又便宜的京东618将于5月底正式开启,消费者将享受延续一夏的极致低价和惊喜狂欢。...
看到宇宙更能看到人 ◆朱 光 一位上海音乐人对错过日前在梅赛德斯-奔驰文化中心上演的汉斯·季默电影音乐会现场懊恼...
上海市民排队“扫货”热情高涨 随着申城气温的节节攀高,购物热情也在本周末爆发。5月17日—18日,新世界大丸百货十周年店庆启动,截...
重构青年与电影的时空契约 “轻... 中新网盐城5月18日电(谷华)当电影与青春碰撞,当艺术与城市交融,一座城正用“轻舟计划”重构青年与电...
王永利:金融科技发展需解决重复...   5月18日金融一线消息,以“共享未来:构建开放包容的经济与金融体系”为主题的2025清华五道口全...
更大力度“引长钱”!上交所,最... 上交所近日举办商业银行理财公司权益类资金入市专题培训。证券时报记者获悉,此次培训旨在构建“长钱长投”...
最新!墨海军帆船撞上纽约布鲁克... 每经编辑|毕陆名 据CCTV国际时讯18日援引美国媒体报道,当地时间5月17日晚撞...
注意啦!武警制服不能这样穿! 新修订的共同条令对军队人员着装的时机场合与标准要求进行了系统规范前期我们已经为大家整理了一份武警常用...
沪上博物馆成入境游“第一站中的... 今天是国际博物馆日,上海文化遗产季同时启幕。上海,正在努力成为“中国入境游第一站”;而沪上博物馆,正...
新疆能源双城共振 清洁电力“闪... 转自:中国发展网中新社克拉玛依5月18日电 题:新疆能源双城共振 清洁电力“闪送”全国中新社记者 关...
中国外贸企业订单“暴涨” 美国... 转自:央视网央视网消息:随着中美互降关税,广东佛山的不少外贸企业也迅速重启美国市场供应,这几天,他们...
大佬集体加仓中国资产!巴菲特、... 美股机构投资者一季度持仓数据披露完毕,大佬们不约而同的加仓中国资产,减持美股!高瓴旗下HHLR Ad...
北邮2025招生新政:志愿“6... 中国青年报客户端讯(中青报·中青网记者 张茜)5月17日,在 “世界电信日”当天,由北京教育考试院、...
执行规范化改革,让胜诉权益“零... 执行规范化改革,让胜诉权益“零延迟”——访河北省高级人民法院党组书记、院长黄明耀图为4月21日,河北...
仙乐健康:美国子公司Best ... 投资者提问:公司有麦角硫因相关技术或产品么?公司美国子公司BestFormulations具备制造N...