12864液晶显示程序:单片机与汉字显示
需积分: 1 170 浏览量
更新于2024-09-14
收藏 41KB DOC 举报
"该资源是关于使用单片机控制12864液晶显示屏的汇编语言程序,主要实现汉字显示功能,不依赖字库。程序包括初始化、设定起始行、写指令到液晶模块(LCM)、写数据到LCM以及设置XY坐标的子程序。"
这篇内容介绍了一个基于单片机的12864液晶显示时钟的汇编程序。12864液晶屏是指具有128列和64行的显示区域的图形液晶显示器。在这个程序中,液晶屏被分为左右两个部分,通过不同的片选信号(CS1 和 CS2)进行控制。此外,程序还定义了其他控制引脚,如数据输入/输出(DIBIT)、读写选择(RWBIT)、使能信号(EBIT)以及复位信号(RSTBIT)。
程序的主要功能包括:
1. **初始化**:`lcd_init`子程序负责初始化液晶屏,设置必要的参数以使能显示功能。
2. **设定起始行**:`set_startline`子程序允许用户指定显示的起始行,这在处理多行显示时非常有用。
3. **写指令到LCM**:`w_code`子程序用于将控制指令写入液晶模块。在调用此子程序前,需先设定片选信号,并将指令存储在累加器A中。
4. **写数据到LCM**:`w_data`子程序用于写入显示数据,同样需要预先设定片选信号,然后将数据放入累加器A。
5. **设置XY坐标**:`set_xy`子程序用来设置显示位置,接收X和Y坐标作为输入,转换后写入适当的地址,以便在指定位置显示数据。
在示例代码中,程序展示了如何在特定位置显示汉字,例如使用`disp_hz`子程序来显示汉字,并在不同位置交替显示来自`tab1`和`tab2`的数据显示缓冲区的内容。
值得注意的是,程序中没有提到具体的单片机型号,但通常这类应用会使用8位微控制器如8051系列。汇编语言是直接对硬件操作的低级语言,因此这种程序设计需要对单片机硬件有深入理解,包括其内存结构、I/O端口操作等。
此外,由于没有字库,程序可能采用了点阵编码的方式,即每个汉字由其点阵编码表示,直接存储在程序的表格中(如`tab1`和`tab2`),然后通过`disp_hz`子程序将这些编码转化为液晶屏上的图像。
总结起来,这个程序提供了一套基础的框架,可以用来扩展和实现更多基于12864液晶屏的单片机应用,如数字时钟、信息显示、简单图形界面等。对于学习单片机编程和液晶显示控制的初学者来说,这是一个很好的实践案例。
658 浏览量
841 浏览量
894 浏览量
2018-07-04 上传
526 浏览量
354 浏览量
109 浏览量
500 浏览量
2011-08-31 上传

骄傲之罪
- 粉丝: 0
最新资源
- Linux平台PSO服务器管理工具集:简化安装与维护
- Swift仿百度加载动画组件BaiduLoading
- 传智播客C#十三季完整教程下载揭秘
- 深入解析Inter汇编架构及其基本原理
- PHP实现QQ群聊天发言数统计工具 v1.0
- 实用AVR驱动集:IIC、红外与无线模块
- 基于ASP.NET C#的学生学籍管理系统设计与开发
- BEdita Manager:官方BEdita4 API网络后台管理应用入门指南
- 一天掌握MySQL学习笔记及实操练习
- Sybase数据库安装全程图解教程
- Service与Activity通信机制及MyBinder类实现
- Vue级联选择器数据源:全国省市区json文件
- Swift实现自定义Reveal动画播放器效果
- 仿53KF在线客服系统源码发布-多用户版及SQL版
- 利用Android手机实现远程监视系统
- Vue集成UEditor实现双向数据绑定