12864串行接法与ST7920控制芯片应用
需积分: 3 185 浏览量
更新于2024-09-11
收藏 22KB DOC 举报
"12864串行接法与代码示例"
在嵌入式系统或微控制器应用中,12864通常指的是128x64点阵的液晶显示器(LCD)。这种显示屏常用于显示文本和简单图形,尤其在小型设备和仪表上。在本案例中,12864串行接法是通过ST7920控制芯片实现的,该芯片支持SPI(Serial Peripheral Interface)通信协议,允许通过较少的引脚进行高效的数据传输。
ST7920是一款专为驱动点阵LCD设计的控制器,它支持串行和并行两种工作模式。由于串行模式只需要三到四条线(时钟、数据、片选和可能的方向控制),相比于并行模式(通常需要十几条数据线)而言,可以节省硬件资源,特别适合于资源有限的微控制器平台。
在提供的代码中,可以看到以下关键部分:
1. `#define` 预处理指令用于定义变量类型和常用端口,如`uchar`(无符号字符型)和`uint`(无符号整型),以及`P2^4`、`P2^5`和`P2^6`分别定义了片选(CS)、串行数据(SID)和串行时钟(SCLK)引脚。
2. `Lcd_Init()` 函数初始化LCD,包括设置ST7920的控制寄存器和配置SPI接口。这个函数可能包含初始化时钟频率、设置控制信号电平等操作。
3. `convent()` 和 `hanzi_Disp()` 函数可能分别用于数值转换和汉字显示。`convent()` 可能将距离值转换为字符串,而`hanzi_Disp()` 在指定位置显示汉字。
4. `Lcd_WriteCmd()` 和 `Lcd_WriteData()` 函数分别向LCD发送命令和数据。例如,`Lcd_WriteCmd(0x9b)` 和 `Lcd_WriteData('0'+sp_bai)` 分别发送控制命令和显示数据。
5. `addr_tab[]` 是汉字的地址表,用于查找特定汉字在内部ROM中的位置。每个地址对应一行汉字的起始位置。
6. `while(1)` 循环中,程序不断地更新LCD显示。`hanzi_Disp()` 和 `Lcd_WriteData()` 被用来显示距离和时间戳,这表明这个应用可能是用于测量和显示距离的。
7. `sp_wan`、`sp_qian`、`sp_bai`、`sp_shi` 和 `sp_ge` 是用于存储十进制数字的个位、十位、百位、千位和万位的变量,它们被用来动态生成数值字符串。
12864串行接法是通过ST7920控制芯片和SPI接口实现的,通过编写特定的控制代码,可以在LCD上显示汉字和数值。这种方法简化了硬件连接,降低了系统复杂性,同时也为开发提供了更多的灵活性。在实际应用中,可以根据具体需求调整和扩展这些基本功能,例如增加颜色支持、增强图形功能或者优化显示性能。
109 浏览量
262 浏览量
2023-09-05 上传
2023-05-27 上传
2023-07-28 上传
2023-07-02 上传
2024-09-29 上传
2023-07-24 上传
huimengyoux
- 粉丝: 0
- 资源: 7
最新资源
- Aspose资源包:转PDF无水印学习工具
- Go语言控制台输入输出操作教程
- 红外遥控报警器原理及应用详解下载
- 控制卷筒纸侧面位置的先进装置技术解析
- 易语言加解密例程源码详解与实践
- SpringMVC客户管理系统:Hibernate与Bootstrap集成实践
- 深入理解JavaScript Set与WeakSet的使用
- 深入解析接收存储及发送装置的广播技术方法
- zyString模块1.0源码公开-易语言编程利器
- Android记分板UI设计:SimpleScoreboard的简洁与高效
- 量子网格列设置存储组件:开源解决方案
- 全面技术源码合集:CcVita Php Check v1.1
- 中军创易语言抢购软件:付款功能解析
- Python手动实现图像滤波教程
- MATLAB源代码实现基于DFT的量子传输分析
- 开源程序Hukoch.exe:简化食谱管理与导入功能