分类: LINUX
2011-10-07 21:51:22
采用24引脚封装,引脚图如下:
寄存器说明:
系统寄存器(SystemReg):地址00H,复位值 11110000B。系统寄存器保存 ZLG7290 的
系统状态,并可对系统运行状态进行配置。
KeyAvi(SystemReg.0):置 1 时表示有效的按键动作(普通键的单击,连击,和功能键
状态变化),/INT 引脚信号有效(变为低电平);清 0 表示无按键动作,/INT 引脚信号无效(变
为高阻态)。有效的按键动作消失后或读 Key 后KeyAvi 位自动清0。
键值寄存器(Key):地址01H,复位值00H。Key 表示被压按键的键值。当 Key=0 时,
表示没有键被压按。
连击次数计数器(RepeatCnt):地址 02H,复位值 00H 。RepeatCnt=0 时,表示单击键。
RepeatCnt 大于0 时,表示键的连击次数。连击次数计数器用于区别单击或连击,判断连击次数可
以检测被按时间。
功能键寄存器(FunctionKey):地址03H,复位值 0FFH。FunctionKey 对应位的值=0 表示对
应功能键被压按(FunctionKey.7 ~FunctionKey.0 对应 S64 S57)。
命令缓冲区(CmdBuf0~CmdBuf1):地址07H~08H,复位值00H~00H。用于传输指令。
闪烁控制寄存器(FlashOnOff):地址0CH,复位值 0111B/0111B。高4 位表示闪烁时亮的时
间,低 4 位表示闪烁时灭的时间,改变其值同时也改变了闪烁频率,也能改变亮和灭的占空比。
FlashOnOff 的 1 个单位相当于 150~250ms(亮和灭的时间范围为:1~16,0000B 相当 1 个时间
单位),所有象素的闪烁频率和占空比相同。
扫描位数寄存器(ScanNum):地址0DH,复位值 7。用于控制最大的扫描显示位数(有效
范围为0~7,对应的显示位数为:1~8),减少扫描位数可提高每位显示扫描时间的占空比,以提高
LED 亮度。不扫描显示的显示缓存寄存器则保持不变。如ScanNum=3 时,只显示DpRam0~DpRam3
的内容。
显示缓存寄存器(DpRam0~DpRam7):地址 10H~17H,复位值 00H~00H。缓存中位置 1 表
示该像素亮,DpRam7~DpRam0 的显示内容对应Dig7~Dig0 引脚。
(4) ZLG7290 的通信接口
ZLG7290 的IIC 接口传输速率可达 32kbit/s,容易与处理器接口通信,并提供键盘中断信号,
提高主处理器时间效率。ZLG7290 的从地址 slave address 为70H (01110000B)。我们从它的键值
寄存器(01H)中读取按键值(ucChar 用于保存读到的键值):
iic_read(0x70, 0x1, &ucChar);
有效的按键动作都会令系统寄存器(SystemReg)的 KeyAvi 位置 1,/INT 引脚信号有效(变
为低电平)。用户的键盘处理程序可由/INT 引脚低电平中断触发,以提高程序效率;也可以不采样
/INT引脚信号节省系统的I/O数,而轮询系统寄存器的KeyAvi位。要注意读键值寄存器会令KeyAvi
位清0,并会令/INT 引脚信号无效。为确保某个有效的按键动作所有参数寄存器的同步性,建议利
用IIC 通信的自动增址功能连续读 RepeatCnt, FunctionKey 和Key 寄存器,但用户无需太担心寄
存器的同步性问题,因为键参数寄存器变化速度较缓慢(典型250ms,最快9ms)。
ZLG7290 内可通过 IIC 总线访问的寄存器地址范围为:00H~17H,任一寄存器都可按字节直
接读写,也可以通过命令接口间接读写或按位读写,请参考 ZLG7290芯片手册。ZLG7290支持自动
增址功能(访问一寄存器后寄存器子地址自动加一)和地址翻转功能(访问最后一寄存器后寄存器
子地址翻转为 00H )。ZLG7290 的控制和状态查询全部都是通过读/写寄存器实现的,用户只需象
读写24C02 内的单元一样即可实现对 ZLG7290 的控制,关于IIC 总线访问的细节请参考 IIC 总线规范。