目录

1. 指令介绍

lcd1602常用指令

(1) 清屏指令

(2) 光标归位指令

(3) 进入模式设置指令

(4) 显示开关控制指令

(5) 设定显示屏或光标移动方向指令

(6) 功能设定指令

(7) 设定CGRAM地址指令

(8)  设定DDRAM地址指令

(9) 读取忙信号或AC地址指令

(10)  数据写入DDRAM或CGRAM指令一览

(11) 从CGRAM或DDRAM读出数据的指令

2. 硬件图

3. 软件部分

3.1 初始化

3.2 写命令

3.3 写数据

3.4 写字符串


1. 指令介绍

字符型LCD引脚定义图

引脚说明:

3脚:用于调整LCD1602的显示对比度,一般会外接电位器用以调整偏压信号,注意此脚电压0时可以得到最强对比度;

4脚:RS,数据/命令选择端; 当此脚为高电平时,可以对1602进行数据字节的传输操作; 当为低电平时,用于对1602进行输入指令的传输操作;

5脚:0:向LCD1602写入指令或数据; 1:对LCD1602读数据操作;

6脚:使能信号

lcd1602常用指令

(1) 清屏指令

功能:

指令十进制为: 0x01

<a> 清除液晶显示器,即将DDRAM的内容全部填入"空白"的ASCLL码20H;

为什么是20H?

手册有:字符代码0x00~0x0F为用户自定义的字符图形RAM,也就是CGRAM;

0x20~0x7F为标准的ASCLL码,0xA0~0xFF为日文字符和希腊字符,其余字符码(0x10~0x1F及0x80~0x9F)没有定义;

<b> 光标归位;即将光标测回液晶显示屏的左上方;

<c> 将地址计数器(AC)的值设置为0;

(2) 光标归位指令

功能:

十进制为0x02 或0x03

<a> 把光标测回到显示器的左上方;

<b> 把地址计数器(AC)的值设置为0;

<c> 保存DDRAM的内容不变;

(3) 进入模式设置指令

功能: 设定每次定入1位数据后光标的移位方向,并且设定每次写入的一个字符是否移动;

其中

DB2位     固定为1;

I/D 位       0:写入新数据后光标左移           1:写入新数据后光标右移

S 位         0:写入新数据后显示屏不移动    1:写入新数据后显示屏整体右移一个字符

(4) 显示开关控制指令

功能:控制显示器开/关,光标显示/关闭以及光标是否闪烁;

DB3位   固定为1

D位:      0:显示功能关                1:显示功能开

C位       0:无光标                       1:有光标

B位       0:光标闪烁                 1:光标不闪烁

(5) 设定显示屏或光标移动方向指令

功能:使光标移位或使整个显示屏幕移位.

S/C           R/L

0                0                光标左移1格,且AC值减1;

0                1                光标右移1格,且AC值加1;

1                0                显示器上字符全部左移1格,但光标不动

1                1                显示器上字符全部右移1格,但光标不动;

(6) 功能设定指令

功能: 设定数据总线位数,显示的行数及字型;参数设定情况如下;

DL         0:数据总线为4位                1:数据总线为8位

N           0:显示1行                        1:显示2行

F           0:5x7点阵/每字符            1:5x10点阵/每字符

(7) 设定CGRAM地址指令

功能:设定下一个要存入数据的CGRAM的地址;

DB3~DB5为字符号,也就是你将来要显示该字符时要用到的字符地址;(000~111)能定义8个;

DB0~DB2为行号,(000~111)能定义8行;

(8)  设定DDRAM地址指令

功能:设定下一个要存入数据的DDRAM的地址;

(9) 读取忙信号或AC地址指令

功能:

<a> 读取忙碌信号BF的内容,FB=1表示液晶显示器忙,暂停无法接收单片机发送的数据或指令;当FB=0时,液晶显示器可以接收单片机发送的数据或指令;

<b>  读取地址计数器(AC)的内容

(10)  数据写入DDRAM或CGRAM指令一览

功能:

<a> 将字符码写入DDRAM,以使液晶显示屏显示出相对应的字符;

<b> 将使用者自己设计的图形存入CGRAM;

DB5~DB7可为任何数据,一般为000;

DB0~DB4:对应每行5点的字模数据;

(11) 从CGRAM或DDRAM读出数据的指令

功能:读取DDRAM或CGRAM中的内容

基本操作时序:

读状态:        输入:RS=L,RW=H,E+H                        输出:DB0~DB7=状态字

写指令:        输入:RS=L,RW=L,E=下降沿脉冲,DB0~DB7=指令码        输出:无

读数据:        输入RS=H,RW=H,E=H;                        输出:DB0~DB7=数据

写数据:        输入:RS=H,RW=L,E=下降沿脉冲 ,DB0~DB7=数据             输出:无

2. 硬件图

其中 RS->gpio0

RW接地,保持0;

E使能脚->接gpio1

DB0~DB7 -> gpio2~gpio9

3. 软件部分

3.1 初始化

void LCD1602_Init(void)
{//1.gpio初始化DELAY_US(5000);//延迟5ms//2.设置8位格式,2行,5x7LCD1602_WriteCmd(0x38);//3.关显示,不显示光标,光标不闪烁;LCD1602_WriteCmd(0x08);//4.清除屏幕显示:数据指针清零,所有显示清零;LCD1602_WriteCmd(0x01);//5.设定输入方式,增量不移位LCD1602_WriteCmd(0x06);//6.整体显示,关光标,不闪烁LCD1602_WriteCmd(0x0c);
}

3.2 写命令

RS置为低电平,RW置为低电平,然后将数据送到数据口D0~D7,最后E引脚一个高脉冲将数据写入;

void LCD1602_WriteCmd(unsigned char cmd)
{LCD1602_EN_SETL;LCD1602_RS_SETL;//RS置低,RW引脚已经接地;//左移2位原因:D0~D7在硬件上对应gpio2~gpio9;根据硬件决定;    //#define LCD1602_DATAPORT  (GpioDataRegs.GPADAT.all)LCD1602_DATAPORT=cmd<<2;DELAY_US(500);LCD1602_EN_SETH;//拉高DELAY_US(1000);
}

3.3 写数据

把RS置为高电平,RW置为低电平,然后将数据送到数据口D0~D7,最后E引脚一个高脉冲将数据写入;

void LCD1602_WriteData(unsigned char dat)
{LCD1602_EN_SETL;LCD1602_RS_SETH;//RS置高//或上0x001原因:写数据时要保证RS(gpio0)为高,虽然上一句已经置为高,但是dat<<2位后会时bit0位为0LCD1602_DATAPORT=dat<<2|0x0001;DELAY_US(500);LCD1602_EN_SETH;//使能DELAY_US(1000);//LCD1602_EN_SETL;
}

3.4 写字符串

(1) 只有第一行的00~0f,第二行的40~4F才能显示,其他地址只能用于存储;

(2) 显示地址时要求最高位D7恒定为高电平1;

void LCD1602_DispString(char line,char *str)
{if(line==1)LCD1602_WriteCmd(0x80);//写在0x0处,也就是第一行; 0x8表示显示时D7恒定为1else if(line==2)LCD1602_WriteCmd(0x80+0x40);//写在0x40处,也就是第二行; 0x80表示显示时D7恒定为1elsereturn;while(*str!='\0'){LCD1602_WriteData(*str);DELAY_US(500);  //延时500usstr++;}
}

DSP之LCD1602笔记相关推荐

  1. DSP(TMSF280049C)学习笔记1:软件的安装与新工程的建立

    DSP(TMSF280049C)学习笔记1:软件的安装与新工程的建立 初次接触DSP(TMSF280049C)这款开发板,主要对学习的过程进行记录,因为是初次学习,可能有些地方存在错误,还请各位大神帮 ...

  2. DSP(TMSF280049C)学习笔记2:点亮LED灯

    DSP(TMSF280049C)学习笔记2:点亮LED灯 实验目的:点亮Texas InstrumentsTMSF280049C开发板,LED0与GPIO23相连,下载到FLASH,具体代码如下: # ...

  3. dsp之BF531笔记

    获得更多资料欢迎进入我的网站或者 csdn或者博客园 很久以前的BF531的笔记,觉得有用分享出来.摘自于open dsp 通用Gpio ADSP-BF53x 处理器上有16 个PF 接口,这些接口就 ...

  4. DSP原理学习笔记--第七章--增强直接存储器访问(EDMA)

    第七章 增强直接存储器访问(EDMA) 第七章 增强直接存储器访问(EDMA) DMA 数据传输 EDMA的特点 EDMA控制器的结构 EDMA传输中的术语 EDMA传输方式 同步事件 EDMA通道与 ...

  5. TI DSP TMS320C66x学习笔记之DSP优化经验

    此文是在http://blog.csdn.NET/guanchanghui/article/details/1181851基础上,通过自己的学习理解修改而来.暂且算作是自己的原创吧.如有侵权,联系,立 ...

  6. TI DSP TMS320C66x学习笔记之DSP优化经验(八-1)

    此文是在http://blog.csdn.net/guanchanghui/article/details/1181851基础上,通过自己的学习理解修改而来.暂且算作是自己的原创吧.如有侵权,联系,立 ...

  7. TI DSP TMS320C66x学习笔记之SPI Nor Flash多核程序烧写

    烧写工具链接: https://pan.baidu.com/s/1em4jWjbskpMmNd1uzscjjA 提取码: 82qg 经过一段时间的研究终于把TMS320C6657单核和双核的SPI N ...

  8. DSP原理学习笔记--第六章--外部存储器接口(EMIF)

    第六章 外部存储器接口(EMIF) 第六章 外部存储器接口(EMIF) 6.1 接口信号与控制寄存器 1. EMIF接口信号 2. EMIF接口地址 3. EMIF控制寄存器 GBLCTL寄存器 CE ...

  9. DSP BootLoader 应用笔记(转珠海阿良的blog)

    初学DSP时最头疼的事就是DSP的bootload问题,以前学51时只要把程序写好编译通过后就可以用烧写器直接将*.hex文件烧进单片机运行.但DSP内部不带FLASH RAM,它必须在复位期间将外部 ...

  10. Android 6 ti dsp,TI DSP TMS320C66x学习笔记之内联指令(c6x.h中文注释)(六)

    /*****************************************************************************/ /* C6X.H v7.4.12 */ ...

最新文章

  1. SD-WAN将成为物联网部署中的骨干网—Vecloud
  2. 一份平民化的应用性能优化检查列表(完整篇)--转
  3. googlehelper手机版ios_二次元漫画控iOS苹果手机版下载v1.0.0下载|免费二次元漫画控iOS苹果手机版下载绿色版...
  4. 十种经济的方法帮你建立企业品牌
  5. “元宇宙”究竟是什么?我用最通俗的大白话给IT人说清楚
  6. Hyperworks——Optistruct学习分享
  7. python 大智慧 dll 交易_大智慧自动交易DLL文件
  8. 七牛云上传文件、视频截图、合成gif图
  9. 移动端扫描vin码/车架号识别
  10. Magento查询产品时查询库存状态
  11. java服务器限速下载_Java文件下载限速
  12. 一种插槽式的组件化框架中间件——SCC
  13. unity怎么制作云飘动_【Unity3D】实现云循环漂浮效果
  14. html给页面添加艺术型边框,如何为2016word的页面设置艺术型页面边框
  15. 根据Uniprot ID/PDB ID批处理获取蛋白质.pdb文件
  16. Delphi API
  17. 【答读者问12】如何理解backtrader的line以及对line进行操作?
  18. ISE中启动modelsim时出现了下面的错误
  19. 电子围栏在化工厂定位系统中的应用,化工厂精确定位,减少损失-新导智能
  20. MySQL-高级语句

热门文章

  1. python绘制风玫瑰图_python绘制风向玫瑰图和污染物玫瑰图
  2. 高效扫频水处理器原理介绍
  3. 白嫖亚马逊AWS服务器
  4. 如何创建和共享iGoogle标签
  5. 微型计算机噪声要求国标,中国噪声标准(GB noise standards)
  6. 科技风杂志科技风杂志社科技风编辑部2022年第16期目录
  7. 中国5G牌照或于今日发放 我国将正式进入5G时代
  8. Office2010安装出错(Error1406)
  9. windows 环境 批量下载 小破站 视频 bat 脚本
  10. Redis数据结构之字符串对象