1 / 23

项目九按键设置液晶电子钟

项目九按键设置液晶电子钟. 单片机产品实战. 项目九 按键设置 液晶电子钟. 终极目标 : 进一步掌握 AT89S52 单片机、液晶屏应用,完成液晶电子钟的设计、安装、调试。 促成目标 : 了解液晶屏的结构和工作原理; 进一步掌握单片机 C 语言程序设计; 掌握液晶电子钟电路和程序设计。. 液晶电子钟的工作任务. 功能实现 能显示日历、星期、时钟; 可以通过键盘对年、月、日、时、分秒进行设置。. 认识液晶屏. LCD 液晶显示有显示容量大、耗能低、人机交流界面友好等优点。 现在液晶显示广泛应用于便携式仪器仪表、智能电器、消费类电子产品等领域。

oki
Télécharger la présentation

项目九按键设置液晶电子钟

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 项目九按键设置液晶电子钟 单片机产品实战

  2. 项目九 按键设置液晶电子钟 终极目标: 进一步掌握AT89S52单片机、液晶屏应用,完成液晶电子钟的设计、安装、调试。 促成目标: 了解液晶屏的结构和工作原理; 进一步掌握单片机C语言程序设计; 掌握液晶电子钟电路和程序设计。

  3. 液晶电子钟的工作任务 功能实现 能显示日历、星期、时钟; 可以通过键盘对年、月、日、时、分秒进行设置。

  4. 认识液晶屏 • LCD液晶显示有显示容量大、耗能低、人机交流界面友好等优点。 • 现在液晶显示广泛应用于便携式仪器仪表、智能电器、消费类电子产品等领域。 • RT12864是一种将液晶显示器件、连接件、集成电路、PCB线路板、背光源、结构件装配在一起的组件。

  5. RT12864功能 RT12864 系列是一种图形点阵型液晶显示模块。 主要由行驱动器与列驱动器组成,可显示128(列)64(行)点阵。 可完成图形显示,也可显示32个(16*16点阵)汉字。 七条控制指令 ,与CPU接口采用8位数据总线并口输入输出方式。

  6. LCD引脚 • RT12864液晶显示模块有20条引脚

  7. 引脚功能

  8. RT12864内部结构 • IC1控制模块的右半屏,IC2控制模块的左半屏。 • IC1和IC2为列驱动器; • IC3为行驱动器。 • 了解行、列驱动器所包含的主要功能器件,对模块编程非常有利。

  9. 了解如下器件有利于模块编程 • 指令寄存器(IR ): • 当D/I(RS )=0时,在E信号下降沿的作用下,指令码写入IR。 • 数据寄存器(DR ): • 当D/I (RS )=1时,在E信号下降沿作用下,图形显示数据写入DR; • 在E信号高电平作用下由DR读到DB7~DB0数据总线。 • 忙标志BF: • BF=1时,此时模块不接受外部指和数据; • BF=0时,模块为准备状态,随时可接受外部指令和数据; • 利用STATUS READ指令,可以将BF读到DB7总线,从而检验模块之工作状态。

  10. 了解如下器件有利于模块编程 • 显示控制触发器DFF: • 此触发器是用于模块屏幕显示开和关的控制 • DFF=1为开显示 • DFF=0为关显示 • XY地址计数器: • XY地址计数器是一个9位计数器 • 高3位是X地址计数器,X地址计数器是没有记数功能的 • 低6位为Y地址计数器,Y地址计数器具有循环计数功能 • 显示数据RAM(DDRAM ): • DDRAM是存储图形显示数据的。 • 数据为1表示显示选择,数据为0表示显示非选择。

  11. 控制指令及相应代码 • 显示开关控制(DISPLAY ON/OFF) • 设置显示起始行(DISPLAY START LINE) • 设置页地址(SET PAGE “X ADDRESS”) • 设置Y地址(SET Y ADDRESS) • 读状态(STATUS READ) • 写显示数据(WRITE DISPLAY DATE) • 向LCD发送命令

  12. 显示开关控制 • 显示开关控制命令字格式如下: • D=1:开显示(DISPLAY ON),即显示器可以进行各种显示操作; • D=0:关显示(DISPLAY OFF),即不能对显示器进行各种显示操作。 • 显示开关控制相应代码 • void Set_OnOff(uchar onoff) • { • onoff=0x3e | onoff; //0011 111x • Writ_Comd(onoff); • }

  13. 设置显示起始行 • 设置显示起始行命令字格式如下: • 指定显示屏从DDRAM中哪一行开始显示数据,起始行的地址可以是0~63的任意一行。 • 设置显示起始行相应代码 • void Set_StartLine(uchar startline) //0~63 • { • startline=startline & 0x07; • startline=startline | 0xc0; //1100 0000 • Writ_Comd(startline); • }

  14. 设置页地址 • 设置页地址命令字格式如下: • 所谓页地址就是DDRAM的行地址,8行为一页,模块共64行(即8页) • 页地址由本指令或RST信号改变复位后页地址为0 • 设置页地址相应代码 • void Set_Line(uchar line) • { • line=line & 0x07; // 0<=line<=7 • line=line|0xb8; //1011 1xxx • Writ_Comd(line); • }

  15. 设置Y地址 • 设置Y地址命令字格式如下: • 此指令的作用是将Y地址送入Y地址计数器,作为DDRAM的Y地址指针。 • 在对DDRAM进行读写操作后,Y地址指针自动加1,指向下一个DDRAM单元。 • 设置Y地址相应代码 • void Set_Column(uchar column) • { • column=column & 0x3f; // 0=<column<=63 • column=column | 0x40; // 01xx xxxx • Writ_Comd(column); • }

  16. 读状态 • 液晶只有在不忙的时候才可以进行下一步操作,读状态命令字格式如下: • 当R/W=1和D/I=0时,在E信号为“H”的作用下,状态分别输出到数据总线(DB7~DB0)的相应位。 • 各位状态如下: • BUSY:1为忙;0为空闲。 • RST:1为复位;0为正常。 • ON/OFF:1为显示开;0为显示关。

  17. 读状态相应代码 • void Check_Busy(void) • { • uchar dat; • DI=0; • RW=1; • Do • { • DataPort=0x00; • EN=1; //在E为高电平时读操作有效 • dat=DataPort; //读LCD状态 • EN=0; • dat=0x80 & dat; //仅当第7位为0时才可操作(判别busy信号) • } • while(!(dat==0x00)); //直到不忙结束循环 • }

  18. 写显示数据 • 写入要显示的内容,写显示数据命令字格式如下: • 此指令是把要显示的数据写入相应的DDRAM单元,Y地址指针自动加1。 • 写显示数据相应代码 • void Write_Dat(uchar dat) • { • Check_Busy(); //要确认其在不忙时才可写数据 • RW=0;DI=1; • DataPort=dat; • EN=1; EN=0; //写数据 • }

  19. 向LCD发送命令 • 要想让液晶完成某一操作就必须先向其写入一命令字,告诉其应该作什么。写命令字格式如下: • 向LCD发送命令相应代码 • void Writ_Comd(uchar command) • { • Check_Busy(); //要确认其在不忙时才可写命令 • RW=0;DI=0; • DataPort=command; • EN=1; EN=0; //写命令 • }

  20. 液晶电子钟电路设计

  21. 按键功能 • LEFT: • 运行模式/设置模式切换 • UP: • 设置模式下设置值加一 • DOWN: • 设置模式下设置值减一 • RIGHT: • 设置模式下设置项切换

  22. LCD取模设置 • 取模软件: • PCtoLCD2002完美版 • 阴码、逆向、列行式、C51格式 • 汉字字体: • 楷体_GB2312 • 字符字体: • MingLiu

  23. 液晶电子钟C语言程序设计 • 头文件 • main.h • lcd.h • 液晶电子钟主程序 • main.c • 液晶电子钟显示程序 • Lcd.c

More Related