历史上的今天
返回首页

历史上的今天

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

正在发生

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

2020-09-22 来源:51hei

#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

推荐阅读

史海拾趣

C.K Magma公司的发展小趣事

在追求经济效益的同时,C.K Magma公司也积极履行社会责任。他们注重绿色发展和可持续经营,通过采用环保材料和工艺、优化生产过程等方式,降低产品对环境的影响。此外,公司还积极参与公益事业,为社会做出贡献。这些举措不仅提升了公司的社会形象,也为公司的长远发展提供了有力保障。

这五个故事展示了C.K Magma公司在电子行业中的发展历程和取得的成就。通过技术突破、市场拓展、国际合作、创新产品和绿色发展等方面的努力,公司逐渐在行业中崭露头角,成为了一家具有影响力和竞争力的企业。

虹冠电子(Champion)公司的发展小趣事

随着电竞产业的快速发展,虹冠电子敏锐地捕捉到了这一市场的巨大潜力。公司投入大量资源研发电竞电源供应器产品,凭借其卓越的性能和稳定性,迅速在电竞领域树立了良好的品牌形象。同时,虹冠电子还积极与电竞行业内的知名企业和赛事组织合作,共同推动电竞产业的繁荣发展。

广东华裕(GDHY)公司的发展小趣事

虹冠电子自成立以来,一直将技术创新作为公司发展的核心动力。早期,虹冠电子就投入大量资源研发AC-DC模拟电源IC,成功推出了一系列高效能、低能耗的产品,迅速在市场上建立了良好的口碑。随着技术的不断迭代,虹冠电子在电源管理技术方面取得了显著优势,尤其在电竞电源供应器领域,凭借卓越的性能和稳定性,赢得了众多专业用户和消费者的认可。

Harris公司的发展小趣事

进入20世纪30年代,Hammond迎来了其发展历程中的一个重要转折点。在1930年代初,Hammond成为加拿大第一家生产两柱式机架和窄柜系列产品的公司,这些产品迅速获得了广播和通讯行业的青睐。这一创举不仅巩固了Hammond在业内的地位,还为其后续在电气、电子行业的全面发展铺平了道路。

富士康(FOXCONN)公司的发展小趣事

FMS深知合作的重要性,积极与行业内外的优秀企业建立长期合作关系。公司现已与伟创力、TCL、比亚迪、OPPO、京东方等多家知名企业建立了良好的合作关系,共同推动电子行业的发展。这些合作不仅为FMS带来了稳定的订单来源,也促进了双方在技术、市场等方面的深入交流与合作。

Global Power Technologies Group公司的发展小趣事
注意电阻和电容的匹配问题,避免因参数不匹配导致电路性能下降。

问答坊 | AI 解惑

关于mega16的T0工作模式的疑问

在马潮老师的书上看到有讲解,MEAG16的T0工作模式部分讲解为有四种模式,对应有四种计数方式,例子题目是“N分 频系统的设计”,程序如下: /********************************************* File name         & ...…

查看全部问答>

ARM、DSP、FPGA的技术特点和区别

本帖最后由 paulhyde 于 2014-9-15 04:01 编辑 ARM(Advanced RISC Machines)是微处理器行业的一家知名企业,设计了大量高性能、廉价、耗能低的RISC处理器、相关技术及软 件。ARM架构是面向低预算市场设计的第一款RISC微处理器,基本是32位单片机 ...…

查看全部问答>

辩论一下---8位单片机已过时,16位单片机成不了气候,32位单片机是大势所趋?

前不久在一本书上看到作者对单片机的一个评语,作者认为:8位单片机已过时,16位单片机成不了气候,32位单片机是大势所趋。 不知道大家对这个观点有什么看法? [ 本帖最后由 tiankai001 于 2010-7-8 08:30 编辑 ]…

查看全部问答>

WINCE6移植TD-Modem驱动问题

最近做项目需要把TD模块给加上,是走PCIE接口的,就是USB吧。 我把模块厂商那边提供的驱动(一个REG文件,一个DLL文件) 移植到WINCE上,(REG就直接粘贴过去了,DLL就跟Image一起捆绑) 但我发现,WINCE开机后,没看到设备驱动被加载。现在非常 ...…

查看全部问答>

请教大家一个问题。s3c2440+wince 5.0+摄像头,能实时采集视频,并进行图像处理吗?

主要是对采集到的视频进行实时图像处理,如边缘检测,二值化等等。请大家指点,谢谢。…

查看全部问答>

承接硬件控制接口软件的开发。熟悉RS232/RS485,TCP/IP接口技术

8年的软件开发和项目管理经验,有多个大型项目的成功开发,管理经验。本人承一:接项目范围: 1.企业管理类软件有:进销存,人事管理,考勤计粮,制造业生产管理,工厂计件管理, 2.安全类有:监控,入侵检测,软件防火墙。 3.终端控制软件类:RS ...…

查看全部问答>

求助,仿真万年历遇到的时钟实时显示问题!急求~

不知道怎样才能显示实时的时钟~请高手帮忙啊~ 东西在附件里面~万分感谢~…

查看全部问答>

精流塔磁翻板液位计与dcs显示问题

今天我公司和利时MACS V 1.1.0+SP2dcs出现奇怪的故障,现场一个精流塔磁翻板液位计与dcs显示不对,仪表工在现场液位计把dcs 过来的两根线拆除(两根线测量过有24vdc电压),可是在dcs上还有液位显示,再在模块卡件上两根线拆除,还是有液位显示,请 ...…

查看全部问答>

请教关于中断向量和中断服务函数的问题

中断初始化时的中断向量xxx_IRQn是如何与xxx_IRQHandler()中断服务函数对应起来的?例如USART1中断: 中断设置函数 void NVIC_Configuration(void) { NVIC_InitStructure.NVIC_IRQChannel = USART1_IRQn;   NVIC_InitStruct ...…

查看全部问答>