历史上的今天
今天是:2025年06月25日(星期三)
2018年06月25日 | 单片机 液晶显示实验 (原理图加代码)
2018-06-25 来源:eefocus
本实验回顾:是关于字符型LCD的显示原理的学习以及掌握字符型LCD显示字符的用法。
1.使用LCD显示两行字符,第一行显示“hello + 英文名字”,第二行显示时间(正确的年月日)
!注意,这里使用1602是无法显示汉字的,只能显示大小写和阿拉伯数字。
(万年历实验之后有空再更新)
-------------------------------------------------------------------------分割线
原理图附上:

这里有几个主要注意:
1.如果D0-D7要接在P0口的话,必须接上拉电阻,否则仿真时会出现灰色的电平,然而直接接P2口便不需要上拉电阻。51芯片一直要注意这个问题。
2.本实验用到的LM016L虽然只有14个引脚,而实物是16个,但是这没什么关系,就少了个背光电池的引脚,其他功能一样,也就是仿真用LM016L就是1602。
3.芯片上E(使能端)直接接P3.4,RS接P3.5,RW可以直接接地,因为是读写控制端,然而本实验不需要从液晶屏读取什么,所以直接低电平即可。VDD接电源,VSS接地,D0-D7接P2。
效果图如下:

代码如下:
#include
#define uchar unsigned char
#define uint unsigned int
uchar code table[]="HELLO HONORWH";
uchar code table1[]="2018 5 6";
sbit dula=P2^6;
sbit wela=P2^7;
sbit lcden=P3^4;
sbit lcdrs=P3^5;
sbit rw=P3^6;
uchar num;
void delayms(uint z)
{
uint x,y;
for(x=z;x>0;x--)
for(y=0;y<110;y++);
}
void write_com(uchar com)
{
lcdrs=0;
P2=com;
delayms(5);
lcden=1;
delayms(5);
lcden=0;
}
void write_data(uchar date)
{
lcdrs=1;
P2=date;
delayms(5);
lcden=1;
delayms(5);
lcden=0;
}
void init()
{
dula=0;
wela=0;
lcden=0;
rw=0;
write_com(0x38);
write_com(0x0c);
write_com(0x06);
write_com(0x01);
}
void main()
{
init();
write_com(0x80);
for(num=0;num<13;num++)
{
write_data(table[num]);
delayms(5);
}
write_com(0x80+0x40);
for(num=0;num<8;num++)
{
write_data(table1[num]);
delayms(5);
}
while(1);
}
---------------------------------------------------------分割线
史海拾趣
|
鸡毛蒜皮之一:成本节约 现象一:这些拉高/拉低的电阻用多大的阻值关系不大,就选个整数5K吧点评:市场上不存在5K的阻值,最接近的是4.99K(精度1%),其次是5.1K(精度5%),其成本分别比精度为20%的4.7K高4倍和2倍。 ...… 查看全部问答> |
|
本帖最后由 jameswangsynnex 于 2015-3-3 19:59 编辑 机构数据显示,09年全球电子阅读器市场达350万台,激增400%,未来4年复合增长率达68%。2010年,美国仍将是电子阅读器的最大市场,而中国市场的成长将是最大热点。我国在文化产业大繁荣和消费升 ...… 查看全部问答> |
|
linux下 vivi的下载命令load flash 的路径是什么! 比如我要用vivi下载内核,用“load flash kernel x”命令,但是这个内核映像文件要放在哪里,我用的是minicom? … 查看全部问答> |
|
求助STM32操作ADS1247,向地址为0X04的寄存器写入0XA3,读出不正确(data_Buf[3]要么是0要么是乱码),代码在内容中,请教高手!void ADS1247_LowLevel_Init(void){ GPIO_InitTypeDef GPIO_InitStructure; /*!< ADS1247_SPI Peri ...… 查看全部问答> |
|
富士通的板子我是第一次接触。给我印象最深的是。富士通的用户手册写的十分特别。条理特别清楚。 通过这次活动我学到了富士的AD及屏幕显示相关。明白了点显示。知道了示波显示的基本原理。 这个芯片十分复杂。不是一天两天就可完全拿下的。日后还 ...… 查看全部问答> |
|
大哥大侠,小妹我在调试电路板时候,AD9824通过SPI接口配置内部寄存器之后,没有输入的情况下就有输出了,这是什么情况,都纠结了一个多月了,内部寄存器配置没问题,我现在在怀疑是不是硬件有问题,但是电路时按datasheet上连的,哎 各种方法都想 ...… 查看全部问答> |




