|
本帖最后由 陈哲东 于 2021-7-1 09:17 编辑
1-硬件概述
HT1621 是用来对 MCU 的 I/O 口进行扩展的外围设备。显示矩阵为 32×4,是一个 128 点阵式存储器映射多功能 LCD 驱动电路。 HT1621 的软件特性使它很适合应用于LCD显示,包括 LCD 模块和显示子系统。在主控制器和 HT1621 之间的接口应用只需要 3 或 4 个端口。Power down 命令可以减少电源损耗。
2-引脚定义
3-电路原理图
4-硬件连接
5-图形化模块
1.HT1621初始化
2.HT1621写入数据
3.HT1621连续写入数据
4.HT1621清屏
6-范例代码
- #define HT1621_CS P1_4
- #define HT1621_CS_MODE {P1M1&=~0x10;P1M0&=~0x10;}//P1_4双向IO口
- #define HT1621_RD P1_5
- #define HT1621_RD_MODE {P1M1&=~0x20;P1M0&=~0x20;}//P1_5双向IO口
- #define HT1621_WR P0_2
- #define HT1621_WR_MODE {P0M1&=~0x04;P0M0&=~0x04;}//P0_2双向IO口
- #define HT1621_DATA P0_3
- #define HT1621_DATA_MODE {P0M1&=~0x08;P0M0&=~0x08;}//P0_3双向IO口
- #include <STC8HX.h>
- uint32 sys_clk = 24000000;//设置PWM、定时器、串口、EEPROM频率参数
- #include "mylib/ht1621.h"
- uint8 _E5_88_86_E9_92_9F = 1;
- uint8 _E7_A7_92_E9_92_9F = 0;
- uint8 seg[]={0xfa, 0x60, 0xbc, 0xf4, 0x66, 0xd6, 0xde, 0x70, 0xfe, 0xf6};
- uint8 wei[]={23, 25, 27, 29};
- void setup()
- {
- ht1621_init();//ht1621初始化
- ht1621_clear();//清屏
- }
- void loop()
- {
- ht1621_wr_one_data(wei[(int)(0)],(seg[(int)(_E5_88_86_E9_92_9F / 10)]>>4)); //数据为低四位有效
- ht1621_wr_one_data(wei[(int)(1)],(seg[(int)(_E5_88_86_E9_92_9F % 10)]>>4)); //数据为低四位有效
- ht1621_wr_one_data(wei[(int)(2)],(seg[(int)(_E7_A7_92_E9_92_9F / 10)]>>4)); //数据为低四位有效
- ht1621_wr_one_data((wei[(int)(2)] - 1),(seg[(int)(_E7_A7_92_E9_92_9F / 10)]|0x01)); //数据为低四位有效
- ht1621_wr_one_data(wei[(int)(3)],(seg[(int)(_E7_A7_92_E9_92_9F % 10)]>>4)); //数据为低四位有效
- }
- void main(void)
- {
- setup();
- while(1){
- loop();
- }
- }
复制代码
手册资料:
HT1621.PDF
(2.3 MB, 下载次数: 68)
|
|