Proteus中1602液晶显示的仿真实例

发布者:和谐共融最新更新时间:2017-01-22 来源: eefocus关键字:Proteus  液晶显示 手机看文章 扫描二维码
随时随地手机看文章

 首先,给出1602的Proteus中的连线图,如下:

Proteus中1602液晶显示的仿真实例

说明:

1.Proteus里面的1602液晶显示的元件名是:LM016L(在元件查找里面可以找到)这个元件不要进行什么设置,只要按要求连线

2.数据端口D0-D7我是与51单片机I/O口中4个中的一个连接(这里我是和P0口连接的),为了看起来很清晰,我使用了公共端连线方式,连在一起的线,公共端同名(在线上右键选Place Wire lable放置公共端名)。

3.RS是 数据和命令的选择 端,RW我直接接地了,我不进行数据的读取,我只进行写数据(通过用延时函数来跳过读写检查)。

显示初始化函数init()

   1.液晶显示使能端E清零(因为上电默认是高电平,所以开始要清零)

   1.显示模式设置:com(0x38);38是以2行16字的5*7的点阵方式显示

   2.显示开关:com(0x0f);0f是开显示,且开光标闪烁

                         0e开显示,且开光标,光标不闪烁

                         0c只是开显示

   3.显示模式设置:com(0x06);06屏幕不移动显示(静态屏幕显示)

                             05整屏右移(效果我没用出来)

                             07整屏左移(效果我没用出来)

   4.清屏:com(0x01);01显示清屏,数据指针也清屏

void init()
{
 en=0;
 write_com(0x38);//显示设置
 write_com(0x0f);//显示开关
 write_com(0x06);//屏幕不移动
 write_com(0x01);//清屏
}

写数据子函数date()

void date(uchar dat)
{
 rs=1;
 delay(1);
 P0=dat;
 delay(1);
 en=1;
 delay(1);
 en=0;
 delay(1); 
}

写命令自函数com()

void com(uchar com)
{
 rs=0;
 delay(1);
 P0=com;
 delay(1);
 en=1;
 delay(1);
 en=0;
 delay(1);

}

主函数

void main()

{

   init();

   com(要输入的命令的16进制码);

   date('要输入的字符')

}

常见问题:

1.实物的1602液晶显示和Proteus的LM016L有什么区别:

答:LM016L液晶显示的主控芯片是HD44780,如果实物1602芯片的主控芯片也是HD44780或HD44780芯片兼容的1602液晶显示,那么可以说基本上LM016L等价于1602了,但是细微的具体命令控制上可能有细微差别。

就我目前发现了一个差别,就是屏幕移动的问题

命令代码       1602       LM016L

0x18        字符逐列左移字符逐列右移

0x1c       字符逐列右移 字符逐列左移

使用方法:

for(i=0;i<16;i++)把列 逐个的往左或右移动了16次
 {
  com(0x1c);在实物1602右移,在Proteus是左移
  delay(20);
 }

参考完整代码下载地址(代码是实现了2行i like MCU的左移,可在Proteus下仿真)

CSDN:http://download.csdn.net/source/1948231

 

1602/LM016L液晶显示的使用手册(一篇中文,一篇英文)

CSDN下载地址: http://download.csdn.net/source/1948273

 


关键字:Proteus  液晶显示 引用地址:Proteus中1602液晶显示的仿真实例

上一篇:51单片机中XTYBE的使用及外围设备扩展地址编址的方法
下一篇:Proteus通过虚拟串口程序仿真51单片机串口的实现

推荐阅读最新更新时间:2024-03-16 15:32

纯色硬屏技术诞生 解决液晶显示难题
众所周知,对于液晶电视来说,显示技术是核心,只有不断提升液晶电视的显示效果,才能真正带动彩电产业的快速发展。而这些年,彩电显示技术一直都是液晶电视发展的重要方向。 此前,虽然很多彩电厂商都推出了“液晶显示改良”的解决方案,但在可视角度上无法维持广色域,也让液晶电视一直备受诟病。直到纯色硬屏技术的出现,才打破了液晶领域很少有实质性突破性的局面。 据笔者了解,纯色硬屏技术主要讲究的是对画面色彩的纯净度的改良,是一种画面色彩的“提纯”技术。纯色硬屏面板加入的是纳米材料,专门吸收背光源发出的杂光,以实现提升红绿蓝三原色光纯度的目的,从而使更多的丰富色彩得到更准确、更真实的呈现。 作为目前最新的色彩改良方案,纯色硬屏技术已经被称为是色彩史上
[手机便携]
KeilC51 与 Proteus连接调试 VDM51.dll
1、假若KeilC与Proteus均已正确安装在C:Program Files的目录里,把C:Program FilesLabcenter ElectronicsProteus 6 ProfessionalMODELSVDM51.dll复制到C:Program FileskeilCC51BIN目录中。 2、用记事本打开C:Program FileskeilCC51TOOLS.INI文件,在 栏目下加入: TDRV5=BINVDM51.DLL ( Proteus VSM Monitor-51 Driver ) 其中 TDRV5 中的 5 要根据实际情况写,不要和原来的重复。 (步骤1和2只需在初次使用设置。) 3、进入KeilC
[单片机]
KeilC51 与 <font color='red'>Proteus</font>连接调试 VDM51.dll
proteus软件仿真和编程联调
仿真软件里可以和源程序联调的好处是,可以减少使用其他软件运行程序编译,仿真时也不必每次都得去调用机器码。 第一步:确定有相应的程序和仿真文件在同一个文件夹里 第二步:打开仿真文件 双击单片机,单片机没有加载任何机器码,点击OK退出对话框; 第三步:点击Source菜单,并弹出Add/Remove Source files 弹出对话框 Code Generation Tool下选择ASEM51 点击Source Code Filename下NEW按钮,弹出对话框 选择程序文件并点击 打开 按钮,如下图为操作的结果,并点击OK按钮确定;
[单片机]
<font color='red'>proteus</font>软件仿真和编程联调
Proteus在单片机教学和科技制作中的应用与实践
随着计算机的高速发展,大量EDA软件被引入电子类专业的课程教学中。例如在电路分析、模拟电子技术和数字电子技术课程中经常把EWB仿真软件引入到教学中以提高教学质量。同样,在单片机的领域里也有功能强大的EDA软件可以作为教学的辅助手段。本文将Proteus仿真软件引入到单片机课程的教学改革中,取得了较好的效果。 1 单片机课程现状 1.1 单片机课程的重要性 单片机课程是自动化、嵌入式等工科专业的一门专业方向课,目的是培养实际动手能力强的高技能型人才。掌握单片机基础知识,具备基本应用技能,才能符合当前社会对自动化、嵌入式专业人才的要求。同时,单片机教学的效果对后续课程的学习和专业技能的掌握也具有重要意义。作为一门应用性极强的课程,教师
[单片机]
<font color='red'>Proteus</font>在单片机教学和科技制作中的应用与实践
用FPGA实现DSP与液晶显示器的快速接口
  随着器件集成工艺的发展和Soc器件的出现,现在的数字系统正在越来越多地采用可编程器件设计。这样,不仅开发周期短,而且在价格和使用难易度上也显示了很大的优势。更为重要的是,还能利用器件的现场可编程特性,根据应用的要求对器件进行动态配置,简便易行地完成功能的添加或变化。   在高速的数字信号处理系统中,要涉及到大量的计算,为了提高运算速度,正大量使用DSP器件。目前的可编程器件,其时钟频率可以很高,在高速数字信号处理系统中将发挥越来越大的作用。因此,DSP+FPGA的方案正越来越多地被电子工程师们采用。   在很多的实际数字系统中,往往需要良好的用户界面,其中LCD是被大量采用的显示器件。由于LCD是典型的慢速设备(相对于DS
[应用]
用汇编语言写一个LCD1602驱动显示程序
Fosc_KHZ EQU 22118 ;22118KHZ STACK_POIRTER EQU 0D0H ;堆栈开始地质 P4 DATA 0C0H P5 DATA 0C8H P0M1 DATA 0x93 P0M0 DATA 0x94 P1M1 DATA 0x91 P1M0 DATA 0x92 P2M1 DATA 0x95 P2M0 DATA 0x96 P3M1 DATA 0xB1 P3M0 DATA 0xB2 P4M1 DATA 0xB3 P4M0 DATA 0xB4 P5M1 DATA 0xC9 P5M0 DATA 0xCA P6M1 DATA 0xCB P6M0 DATA 0xCC P7M1 DATA 0xE1 P7M0 DAT
[单片机]
AT89C51单片机驱动液晶显示汉字C语言
此程序的完整工程文件下载:http://www.51hei.com/f/8952lkj_c.rar 上图是 原理图 及其仿真效果. /******************************************************************* AT89C51 单片机 驱动 液晶显示 汉字C语言 ****************************************************************/ #include AT89x51.h #define uchar unsigned char /************************************
[单片机]
AT89C51单片机驱动<font color='red'>液晶显示</font>汉字C语言
LCD1602液晶显示(51单片机c语言)
效果图: 电路图: #include reg52.h #include intrins.h //包含_nop_()函数定义的头文件 #define uchar unsigned char #define uint unsigned int sbit RS=P2^5; //寄存器选择位 sbit RW=P2^6; //读写选择位 sbit E=P2^7; //使能信号位 //sbit BF=P0^7; //忙碌标志位 const uchar string1 ={ mazirong }; const uchar string2 ={ TEL:13297961386 }; /**************************
[单片机]
LCD<font color='red'>1602</font><font color='red'>液晶显示</font>(51单片机c语言)
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
  • 学习ARM开发(16)
    ARM有很多东西要学习,那么中断,就肯定是需要学习的东西。自从CPU引入中断以来,才真正地进入多任务系统工作,并且大大提高了工作效率。采 ...
  • 学习ARM开发(17)
    因为嵌入式系统里全部要使用中断的,那么我的S3C44B0怎么样中断流程呢?那我就需要了解整个流程了。要深入了解,最好的方法,就是去写程序 ...
  • 学习ARM开发(18)
    上一次已经了解ARM的中断处理过程,并且可以设置中断函数,那么它这样就可以工作了吗?答案是否定的。因为S3C44B0还有好几个寄存器是控制中 ...
  • 嵌入式系统调试仿真工具
    嵌入式硬件系统设计出来后就要进行调试,不管是硬件调试还是软件调试或者程序固化,都需要用到调试仿真工具。 随着处理器新品种、新 ...
  • 最近困扰在心中的一个小疑问终于解惑了~~
    最近在驱动方面一直在概念上不能很好的理解 有时候结合别人写的一点usb的例子能有点感觉,但是因为arm体系里面没有像单片机那样直接讲解引脚 ...
  • 学习ARM开发(1)
  • 学习ARM开发(2)
  • 学习ARM开发(4)
  • 学习ARM开发(6)
何立民专栏 单片机及嵌入式宝典

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

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved