历史上的今天
返回首页

历史上的今天

今天是:2025年01月26日(星期日)

2019年01月26日 | STC12C5A32S2单片机之1602渐入显示

2019-01-26 来源:eefocus

基本框架根据郭天祥Lesson8中的程序来编写,但是渐入显示的时候郭用的指令是write_com(0x18);


可我用的时候就是显示不出来,于是根据1602的说明书,用了另外一个指令write_com(0x07)    //当写一个字符,整屏显示左移


程序如下:


可直接运行,已调试OK



#include



sbit LCD_rs=P1^0;

sbit LCD_rw=P1^1;

sbit LCD_en=P2^5;


unsigned char num;

unsigned char code table[]="I Love ZYN";

unsigned char code table1[]="0123456789";


void Delay(unsigned int i)   //注意,若此处用char声明,否则会看不到延时渐进的效果,疑问?

{

unsigned int j,k;

for(j=i;j>0;j--)

for(k=110;k>0;k--);

}


void LCD_Write_com(unsigned char a)

{

LCD_rs=0;

Delay(5);

LCD_rw=0;

Delay(5);

P0=a;

Delay(5);

LCD_en=1;

Delay(5);

LCD_en=0;

Delay(5);

}



void LCD_Write_data(unsigned char b)

{

LCD_rs=1;

Delay(5);

LCD_rw=0;

Delay(5);

P0=b;

LCD_en=1;

Delay(5);

LCD_en=0;

Delay(5);

 }



void LCD_init()

{

Delay(15);

LCD_Write_com(0x38);

Delay(5);

LCD_Write_com(0x08);

Delay(5);

LCD_Write_com(0x01);

Delay(5);

LCD_Write_com(0x07);  //当写一个字符,整屏显示左移

Delay(5);

LCD_Write_com(0x0e);

Delay(5);

}


void main()

{

LCD_init();


        LCD_Write_com(0x80+0x16);//此处0x16也可用十进制数22

Delay(5);


for(num=0;num<10;num++)

{

LCD_Write_data(table[num]);

Delay(3000);

   }


 

LCD_Write_com(0x80+0x59);//此处0x59也可用十进制数89表示

for(num=0;num<10;num++)

{

LCD_Write_data(table1[num]);

Delay(3000);

}

while(1);

}

实际效果如下:


推荐阅读

史海拾趣

Celduc Relais公司的发展小趣事

随着公司实力的不断增强,Celduc Relais开始积极拓展国际市场。公司通过参加国际电子展会、建立海外销售渠道以及与当地合作伙伴建立战略合作关系等方式,逐步打开了欧洲、北美和亚洲等多个国家和地区的市场。这一过程中,公司不仅提升了品牌知名度,也积累了丰富的国际业务经验。

璟德(ACX)公司的发展小趣事

多年来,璟德(ACX)凭借其卓越的技术实力和市场表现,荣获了多项荣誉和奖项。这些荣誉不仅是对公司过去努力的肯定,也为其未来的发展注入了新的动力。同时,璟德(ACX)始终坚持创新驱动的发展理念,不断投入研发,推出新产品和新技术,以满足市场的不断变化和客户的需求。

请注意,以上故事是基于现有资料和行业常识构建的,可能无法完全反映璟德(ACX)公司实际发展历程中的所有细节和复杂性。如需了解更多关于璟德(ACX)公司的故事和发展历程,建议查阅公司官方网站、相关新闻报道或行业研究报告。

Greenconn Corp公司的发展小趣事
如果经检查发现继电器或定时器故障,需要按照冰箱型号和规格要求更换新的部件。
Andon Electronics公司的发展小趣事
如果冰箱断电保护器上有复位按钮,可以尝试按下以复位保护器。
ESTEK公司的发展小趣事

ESTEK公司自创立之初,就专注于电子产品的技术创新。在早期的市场竞争中,公司研发团队通过不懈努力,成功研发出一款具有革命性意义的电子元件。这款元件不仅性能卓越,而且成本远低于同类产品,使得ESTEK公司迅速在市场上脱颖而出。随着这款元件的广泛应用,ESTEK公司的知名度逐渐提升,为公司的后续发展奠定了坚实基础。

Aimtec公司的发展小趣事

随着业务规模的扩大,Aimtec公司开始将目光投向国际市场。公司先后在欧洲和亚洲设立了办事处,通过本地化的销售策略和技术支持,逐步打开了国际市场的大门。在国际竞争中,Aimtec凭借其优质的产品和服务,赢得了众多客户的信赖和好评。同时,公司还积极参与国际电子行业的交流与合作,不断提升自身的技术水平和市场竞争力。

问答坊 | AI 解惑

找一款51编程器及下载线资料

我现在手上有AT89C51,不知道用什么方式给它下程序 请各位帮忙…

查看全部问答>

开关电源芯片2575

本帖最后由 paulhyde 于 2014-9-15 09:26 编辑 大家看一下,很有用的  …

查看全部问答>

μc/os前景如何,有没有实际应用的价值

能不能找到μc/os的工作,有没有这样的公司…

查看全部问答>

我的dnw.exe总报内存错误不能用了,谁有最新版DNW.exe或者源程序??

我本来用dnw.exe 0.60c好好的,后来把xp从sp2升级到sp3,dnw就不可以用了,每次都报内存错误,不能用了。 谁有最新的dnw.exe程序或者源程序,发我一份,谢拉!!! 邮箱地址:Baiqiang.Liu@Honeywell.com…

查看全部问答>

单文档视图程序中动态Create一个PropertySheet到FormView中,怎么样禁掉OK按钮,从而禁止用户关掉PropertySheet

单文档视图程序中动态Create一个PropertySheet到FormView中,会有一个OK按钮,怎么样禁掉OK按钮,从而禁止用户关掉PropertySheet…

查看全部问答>

EVC中如何绘制柱状图

EVC中如何画柱状图,EVC中不支持mschart控件的使用,有没有别的控件可以使用。…

查看全部问答>

这是怎么回事

segment .bsct size overflow (911) segment .ubsct size overflow (436) 代码编译后出现以上错误 高手帮分析下,由于本人是新手,不知这个出错在哪? 代码可以保证在32K以内(我使用的是STM8S105C6)…

查看全部问答>

用STC单片机的朋友请进,凡实验并报告结果者赠送100芯币,斑竹无虚言

首先,我想说,以下我说的这件事情,实在有点匪夷所思,大家可以认为是我糊涂了,或者喝醉了也不无不可(的确,刚才我郁闷了半天的确是买了一罐啤酒在喝)但是,我所看到的现象实在让我难以理解,所以请大家帮个忙,做做实验。我现在手上有3500多芯 ...…

查看全部问答>

新手问一个很瓜的问题

鄙人刚学,要做一个基于fpga的多功能卡设计 其中有一个pci slave 模块 一点想法也没有 so,各位?…

查看全部问答>

电源设计小贴士27:压降式并行电源供应

在本《电源设计小贴士》中,德州仪器高级应用经理 Robert Kollman 将与您分享采用压降方法实现的并行电源供应。   $(\'swf_ftq\').innerHTML=AC_FL_RunContent(\'width\', \'550\', \'height\', \'400\', \'allowNetworking\', \'internal\' ...…

查看全部问答>