历史上的今天

今天是:2024年09月22日(星期日)

正在发生

2020年09月22日 | STC15W408AS单片机LCD1602-4线接法源程序

发布者:Lihua521 来源: 51hei关键字:STC15W408AS  单片机  LCD1602-4线接法 手机看文章 扫描二维码
随时随地手机看文章

#include "STC15F-15W.h"

#include "LCD16024L1.h"


/******** 数据定义 ******/

unsigned char code uctech[] = {"0123456789ABCDEF"};

unsigned char code net[] = {"www.51hei.com"};

void main(void)

{

delay_ms(300); //启动等待,等 LCD 讲入工作状态

LCD_init();  //初始化

delay_ms(5);  //延时片刻 (可不要 )

LCD_str(0, 0, uctech);

LCD_str(0, 1, net);

while(1);

}


/*这两个程序通过了STC15W408AS单片机系统的验证,主频11.0592NHz时。请坛友指正!*/

#ifndef __LCD16024L1_H__

#define __LCD16024L1_H__

unsigned char bdata C;  //在位寻址区定义字符变量C

sbit C7=C^7;

sbit C6=C^6;

sbit C5=C^5;

sbit C4=C^4;

sbit C3=C^3;

sbit C2=C^2;

sbit C1=C^1;

sbit C0=C^0;

sbit RS=P5^5;

//sbit RW=P1^2;

sbit EN=P5^4;

sbit I4=P3^4;

sbit I5=P3^5;

sbit I6=P3^6;

sbit I7=P3^7;

/****************延时***************/

void delay_ms(unsigned int i)

{

  unsigned int t;

while(i--)

{

  for(t=0;t<123;t++);

}

}

/***用LCD1602高四位数据线写入命令**/

void write_com(unsigned char command)

{

  C=command;

  RS=0;

//RW=0;

EN=0;   //写命令

delay_ms(1);

I7=C7;

I6=C6;

I5=C5;

I4=C4;

EN=1;

delay_ms(6); //延时

EN=0;   //下降沿将数据写入LCD1602

delay_ms(1);

I7=C3;

I6=C2;

I5=C1;

I4=C0;

EN=1;

delay_ms(1); //延时

EN=0;   //下降沿将数据写入LCD1602

}

/**用LCD1602高四位数据线写入数据**/

void write_dat(unsigned char dat)

{

  C=dat;

  RS=1;

//RW=0;

EN=0;

delay_ms(1);

I7=C7;

I6=C6;

I5=C5;

I4=C4;

EN=1;

delay_ms(6);  //延时

EN=0;

delay_ms(1);

I7=C3;

I6=C2;

I5=C1;

I4=C0;

EN=1;

    delay_ms(1);  //延时

EN=0;

}

/********LCD1602初始化*************/

void LCD_init(void)

{

write_com(0x02);         

write_com(0x28);         

write_com(0x0c);         

write_com(0x80);         

write_com(0x01);  //清屏

}

/*******设置LCD1602列、行**********/

void LCD_sor(unsigned char x,unsigned y)

{

  unsigned char address;

if(y==0)

  address=0x80+x;

else

  address=0xC0+x;

write_com(address);

}

/*******************/

void LCD_str(unsigned x,unsigned char y,unsigned char *str)

{

  LCD_sor(x,y);

while((*str)!='')

{

  write_dat(*str);

  str++;

}

}

  #endif

关键字:STC15W408AS  单片机  LCD1602-4线接法 引用地址:STC15W408AS单片机LCD1602-4线接法源程序

上一篇:51单片机交流电检测程序 单相工频电参数测量仪
下一篇:单片机汇编语言的点阵显示源码

推荐阅读

全球工业机器人产业正以惊人的速度发展,而协作机器人作为未来的一大趋势,逐步显现出巨大的市场潜力。高度灵活、易于编程的协作机器人可以应用到更多的场景当中,未来的机遇很大,越来越多的企业开始投身其中。近日,在上海举办的第二十届中国国际工业博览会上,众多全球知名机器人企业展示了最新的机器人技术和产品解决方案,而来自丹麦的OnRobot也带来...
说到汽车的安全气囊,每一位朋友应该都再熟悉不过了,它能够在车辆发生碰撞时对车内乘员进行保护,有效降低对人员造成的伤害。不过目前车上搭载的气囊都是安装在车内,今天我们要说的这款气囊就有很大的不同,它直接安装在车辆的侧面外部,而且并不是传统的被动式的展开方式,而是通过感应侧面的障碍物,主动弹出,以此来减缓侧面撞击产生的冲击力,进而减...
<br data-filtered="filtered">其中.asm文件是汇编代码的源文件,.inc文件是包含文件,类似于<a class="replace_word" title="C语言知识库" href="http://lib.csdn.net/base/c" target="_blank">C语言</a>当在的.c文件和.h文件。接下来让我们来分析一下这三个文件。(分析汇编代码最好也要对STM8单片机的启动流程有所了解,可以看我的另一篇博文<a ...
在使用STM8的PWM功能时,一般都是改变占空比来改变输出电压大小。但是有时候不需要改变PWM的占空比,而是需要按照一定的规律改变输出PWM的频率,而占空比保持不变。现在总结一下如何实现STM8单片机输出PWM波时动态改变频率。直接看C代码的实现#include "pwm.h"u16 FRE = 100; //frequency 频率 4M / 100 = 40K void PWM...

史海拾趣

问答坊 | AI 解惑

求高手指教一个高压放在电路的问题

能不能帮我看一个电路,我的电路是这样的,一个高压放大电路,是要将0-2.5V的电压放大到0-150V,我的供电电压是200,也就是图上的+105ISO换成了200V,2N5551换成了MSPA42,R49换成了58K,R50换成了2K,R19换成了130K,可是我现在发现输出在-1.7V ...…

查看全部问答∨

嵌入式系统实验关于大小端转换方法的探讨

摘 要:当前,大多数高校先后开设了嵌入式系统的实验课程。学生在做嵌入式系统的实验时,经常会 遇到字节顺序的大小端转化问题。为能理解大小端的概念并解决相关问题,介绍了大小端及其常用的 转换方法,提出一种无需修改程序而直接将程序移植到 ...…

查看全部问答∨

兄弟想问下,富兰电子的情况,知道的请说下

兄弟想问下,富兰电子待遇情况和工作情况,知道的请说下!,兄弟谢谢拉~…

查看全部问答∨

看了论坛的帖子,有用过900MHz的zigbee芯片吗?效果介绍一下

欧洲,北美ism频段主要是900M,不知道大家有没有考虑过或者已经做过900 zigbee模块的,请介绍一下…

查看全部问答∨

Keil uvision 中怎样导出数据?

求助各位大虾,最近在调一块板子,需要将程序里的一个1000大小的数组的数据导出,但找了半天,无论是watch window 或者memory,都找不到相关的导出或者批量复制的功能,不知道有没有其它办法?…

查看全部问答∨

开发板循环利用之LaunchPad

本帖最后由 ddllxxrr 于 2016-1-7 17:01 编辑 上一次循环利用:学习板循环利用计划之TMS320F28027-48Pin评估板   这一次的循环利用的主角是LaunchPad。 此板非前段时间团购而来的,所以,没有风火轮触摸板。因为有些东西自己暂时用不到, ...…

查看全部问答∨

STM32F105 可以用USB下载程序吗

如题公司开发一个产品需要用的STM32F105,准备使用USB下载程序不知道可不可以,如果可以需要怎样操作才可以下载。希望知道的高人指点下。…

查看全部问答∨

【开心元旦】电源思想大讨论,等你来!

学习电源,不是一朝一幕,需要脚踏实地,扎实基础! 你,还记得第一次接触电源是什么时候的麽,是不是被电到那一次; 你,还收藏有自己做的第一块电源电路的图片麽,+5V稳压电路,熟悉吧,拿出来晒一晒吧,否则年代久了,发霉哦; 你,还记不记 ...…

查看全部问答∨

关于设备调试驱动的问题,很蛋疼都不知道怎么回事,看在我51自愿加班的诚心下求解答!

我现在是调试公司设备用到了两个usb接口,一个是Alter的 一个是usb转串口的,现在问题是这样的,当我电脑上单插一个usb时设备驱动是好的,但是同时插2个的时候就有一个不行了。前后usb插口都试过了,求大神拿点注意。下面是截图: 由图可以看到当 ...…

查看全部问答∨
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
随便看看

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved