使用HD44780读写单片机的C51程序详细概述

发布时间:2023-05-23  

下面我给大家介绍一个HD44780读写单片机c51程序

#include 《reg51.h》

#include 《intrins.h》

sbit GND_LCD=P1^7;

sbit rs=P1^0;

sbit rw=P1^1;

sbit e=P1^2;

unsigned char busy(void);

void ctrl(unsigned char);

void wd_h(unsigned char);

void wd_l(unsigned char);

unsigned char rd(void);

void write(unsigned char);

void init(void);

void NOP(void);

void disp(unsigned char);

unsigned int time;

void int_t0 (void) interrupt 1 {

TL0=TL0+30;TH0=0xfb;

time++;

}

void wait(unsigned int w){

time=0;

while (time《w) {}

}

void init(void) {

unsigned char i;

P1=0;

for (i=0;i《2;i++) {

wd_l(0x30);

wait(5);

}

wd_h(0x20);

ctrl(0x28);

ctrl(0x8);

ctrl(3);

ctrl(6);

disp(0);

ctrl(1);

ctrl(8);

ctrl(0xe);

ctrl(0x80);

}

unsigned char busy(void){

P1=0;

return(rd());

}

unsigned char rd(void) {

unsigned char dat0,dat1;

rw=1;

rs=0;

P1=P1|0x78;

e=1;

dat0=P1;

e=0;

e=1;

dat1=P1;

P1=0;

return(((dat0《《1)&0xf0) | ((dat1》》3)&0xf) );

}

void ctrl(unsigned char dat){

while (busy()》0x7f) {};

rw=rs=0;

wd_h(dat);

wd_l(dat);

}

void wd_h(unsigned char dat){

e=1;

P1=P1|((dat&0xf0)》》1);

e=0;

P1=P1&0x87;

}

void wd_l(unsigned char dat){

e=1;

P1=P1|((dat&0xf)《《3);

e=0;

P1=0;

}

void write(unsigned char dat) {

while (busy()》0x7f) {};

rw=0;

rs=1;

wd_h(dat);

wd_l(dat);

}


//===============HD44780读写程序====================================

void disp(unsigned char i) {

unsigned char j;

ctrl(1);

ctrl(0x80);

for (j=0;j《6;j++) write(d[i][j]);

write(‘ ’);


文章来源于:电子工程世界    原文链接
本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。

相关文章

    8051单片机有哪些复位方法;问题:8051单片机复位后,各寄存器的初始状态如何?复位方法有几种? 解答:8051单片机复位后机器的初始状态,即各寄存器的状态:PC之外,复位......
    单片机的发展有哪几个阶段;单片机发展历史 单片机(Microcontrollers)诞生于1971年,早期的SCM单片机都是8位或4位的。其中最成功的是INTEL的8051,此后在8051上发......
    学习的 4 个阶段: (一)整体了解 要知道 单片机是什么?单片机有何用?如何系统学习单片机单片机系统设计的流程是怎样的,需要掌握哪些辅助软件? 了解这些之后,我们的学习就有了目标和方向。 (二)揭秘......
    技术。   注:“双功能下载线”在百度文库里有详细的使用说明,并且上位机会定期更新以支持更多的单片机。   单片机学习的4个阶段:   一、整体了解   要知道 单片机是什么?单片机有......
    80c51是几位单片机 80c51单片机有几个中断源;  80c51是几位单片机   80C51是一种8位微处理器,也被称为8051,由Intel公司推出。它是最早的商用单片机之一,由于......
    大部分人都是使用32位单片机来驱动,还有就是很多资料和我使用的屏不是同一种型号,找了很久,就是没有找到一个能完美匹配我现状的资料。很是苦恼。不是屏型号不对头,就是单片机不对,还有......
    单片机有什么用?单片机自学网有哪些?;单片机这个词对大多数人来说都是陌生的,我一直喜欢把单片机比喻成蜡烛:燃烧自己,照亮众人。 用单片机做的产品可以说是铺天盖地,拿家电来说:冰箱、空调、电饭......
    8051单片机由什么组成 8051单片机有多少管脚;8051单片机介绍 8051单片机是一款广泛应用于嵌入式系统中的8位单片机,由Intel公司在1980年推出,是当时业界最先进的8位单片机......
    单片机基础课程有哪些;文章所坑。 这些文章存在的问题主要有: 1. 过于夸大这个技术所需要学的东西。 2. 推荐的学习路径不成体系。 3. 过度贬低这个行业。 很多新手,没有经验的情况下,很容......
    STM32单片机有哪几种常见的开发环境?;STM32单片机是一款广泛应用于嵌入式系统开发的单片机,针对其开发,有以下几种常见的方式: STM32单片机有哪几种常见的开发环境? Keil MDK......

我们与500+贴片厂合作,完美满足客户的定制需求。为品牌提供定制化的推广方案、专属产品特色页,多渠道推广,SEM/SEO精准营销以及与公众号的联合推广...详细>>

利用葫芦芯平台的卓越技术服务和新产品推广能力,原厂代理能轻松打入消费物联网(IOT)、信息与通信(ICT)、汽车及新能源汽车、工业自动化及工业物联网、装备及功率电子...详细>>

充分利用其强大的电子元器件采购流量,创新性地为这些物料提供了一个全新的窗口。我们的高效数字营销技术,不仅可以助你轻松识别与连接到需求方,更能够极大地提高“闲置物料”的处理能力,通过葫芦芯平台...详细>>

我们的目标很明确:构建一个全方位的半导体产业生态系统。成为一家全球领先的半导体互联网生态公司。目前,我们已成功打造了智能汽车、智能家居、大健康医疗、机器人和材料等五大生态领域。更为重要的是...详细>>

我们深知加工与定制类服务商的价值和重要性,因此,我们倾力为您提供最顶尖的营销资源。在我们的平台上,您可以直接接触到100万的研发工程师和采购工程师,以及10万的活跃客户群体...详细>>

凭借我们强大的专业流量和尖端的互联网数字营销技术,我们承诺为原厂提供免费的产品资料推广服务。无论是最新的资讯、技术动态还是创新产品,都可以通过我们的平台迅速传达给目标客户...详细>>

我们不止于将线索转化为潜在客户。葫芦芯平台致力于形成业务闭环,从引流、宣传到最终销售,全程跟进,确保每一个potential lead都得到妥善处理,从而大幅提高转化率。不仅如此...详细>>