数据(含地址)接收 MAX7219采用串行寻址方式,在传送的串行数据中包含有RAM的地址。按照时序的要求,单片机将16位二进制数逐位发送DIN端,在CLK上升延到来之前DIN必须有效,在CLK的每个上升延,DIN被串行逐位移入MAX7219内部的16位穿行寄存器中。设最先移入的数据是D15,最后移入的数据是D0,则移入16位串行寄存器的数据是D15--D0。为了有选择的将数据写入8个显示RAM或6个特殊功能寄存器,D0—D15中,D8—D11四位作为RAM和特殊功能寄存器的地址,D0—D7作为写入显示数据或控制字。与并行数据传送相比,MAX7219串行接收D0—D15并存放到16位串行寄存器中的过程,相当于并行传送中,将并行数据和地址送到数据和地址总线上的过程。 copyright paper51.com 数据装载 copyright paper51.com 16位接收寄存器将收到的D0—D7位数据写入RAM或特殊功能寄存器是在数据装载信号控制下完成的。图3-8是MAX7219的数据接收装载(写入)时序图,由图可知,LOAD必须在15个CLK下降延前由高变低,在16个CLK同时或之后由低变高(上升延)。在LOAD的上升延,8位数据D0—D7写入以4位二进制数D8—D11位地址的RAM或特殊功能寄存器中。 内容来自www.paper51.com 显示扫描 http://www.paper51.com 当显示模式设定后,写入显示RAM的数据将在控制器的控制下,按设定的显示模式,以动态扫描方式进行显示。 copyright paper51.com
MAX7219内部显示RAM及特殊功能寄存器 内容来自论文无忧网 www.paper51.com 显示RAM(地址*1—*8) http://www.paper51.com 地址为*1H的RAM数据控制接D0引脚的显示器,地址为*2H的RAM数据控制接D1引脚的显示器。 内容来自论文无忧网 www.paper51.com 译码方式寄存器(地址:*9H) 内容来自论文无忧网 www.paper51.com
该寄存器的8位二进制数的各位值分别控制着8个LED显示器的译码方式。当高电平时选择BCD-B码译码模式,当低电平时选择不译码模式。B码译码的显示自行与现实数据的关系如下: 内容来自论文无忧网 www.paper51.com 显示数据 http://www.paper51.com (十六进制) 0 1 2 3 4 5 6 7 8 9 A B C D E F 内容来自www.paper51.com B码字型 0 1 2 3 4 5 6 7 8 9 – E H L P * http://www.paper51.com 其中,*代表全灭。小数点不译码,它由显示数据的D7位控制。 内容来自论文无忧网 www.paper51.com 扫描界限寄存器(地址:*BH) 内容来自论文无忧网 www.paper51.com 该寄存器的D0—D3位数据设定值为0—7,设定值表示显示器动态扫描个数为1—8。 paper51.com 停机寄存器(地址:*CH) 内容来自www.paper51.com 当位D0=0时,MAX7219处于停机状态;当D0=1时,处于正常工作状态。 内容来自www.paper51.com 显示测试寄存器(地址:*FH) 内容来自论文无忧网 www.paper51.com
当位D0=0时,MAX7219按设定模式正常工作;当D0=1时,处于测试状态。在该状态下,不管MAX7219处于什么模式,全部LED将按最大亮度接通显示。 http://www.paper51.com
亮度寄存器(地址:*AH)及两度的调解或控制 内容来自论文无忧网 www.paper51.com 亮度可通过硬件和软件两种方法调解或控制。 内容来自www.paper51.com 2.1.3存储器的选择 copyright paper51.com 为了改善主CPU的资源与时序的分配,我们对AT89C51进行串行数据存储器的扩展。常用的存储芯片有很多,如AT93C46/56/66,X5045。经过比较选择,最终选用了XICOR公司的X5045。 内容来自论文无忧网 www.paper51.com X5045把三种常用的功能:看门狗定时器,电压控制和EEPROM组合在单个封装之内。这种组合降低了系统的成本并减少了对电路板空间的要求。看门狗定时器对微控制器提供了独立的保护系统。低VCC检测电路可以保护系统免受低电压的影响,同时X5045是串行EEPROM 具有简单的三总线工作的串行外设接口,是一种有独特功能的高性能价格比存储器件。 内容来自www.paper51.com AT93C46/56/66是ATMEL公司推出的低功耗、低电压电可擦除的可编程只读存储器。它采用CMOS技术和Fairchild Semiconductor公司的Mi-croWire工业标准3线串行接口,具有1Kb/2kB/4kB的容量,并可通过ORG管脚配置成128*8/256*8/512*8或64*16/128*16256*16等结构。该系列存储器可靠性高,能够重复写100万次,数据可以保存100年不丢失;采用8脚PDIP/SOIC封装和14脚SOI封装(SOI封装为JEDEC和EIAJ标准),与并行的EEPROM相比,AT93C46/56/66可大大节省印制板空间,且接线简单,因而在多功能的精密测试仪中具有广阔的前途。 内容来自www.paper51.com 引脚功能 内容来自www.paper51.com
CS:片选信号。高电平有效,低电平时进入等待模式。在连续的指令之间,CS信号必须持续至少250ns的低电平,才能保证芯片正常工作。 内容来自论文无忧网 www.paper51.com CLK:串行时钟信号。在CLK的上升沿,操作码、地址和数据位进入器件或从器件输出。在发送序列时,CLK最好不停止,以防止读/写数据的错误。 内容来自www.paper51.com
DI:串行数据输入。可在CLK的同步下输入开始位、操作码、地址位和数据位。 内容来自www.paper51.com DO:串行数据输出。在CLK同步下读周期时,用于输出数据;而在地址擦/写周期或芯片擦/写周期时,该端用于提供忙/闲信息。 paper51.com VSS:接地。 paper51.com VCC:接+5V电源。 copyright paper51.com ORG:存贮器构造配置端。该端接VCC或悬空时,输出为16位;接GND时,输出为8位。 copyright paper51.com 指令及时序 内容来自www.paper51.com 地址擦指令(ERASE) copyright paper51.com 该指令用于强迫指定地址中所有数据位都为“1”。一旦信息在DI端上被译码,就需使CS信号保持至少250ns的低电平,然后将CS置为高电平,这时,DO端就会指示“忙”标志。DO为“0”,表示编程正在进行;DO为“1”,表示该指定地址的寄存器单元已擦完,可以执行下一条指令。 内容来自论文无忧网 www.paper51.com 擦/写允许指令(EWEN) paper51.com 由于在上电复位后AT93C46/56/66首先将处于擦/写不允许状态。故该指令必须在所有编程模式前执行,一旦该指令执行后,只要外部没有断电就可以对芯片进行编程。 http://www.paper51.com 地址写指令(WRITE) 内容来自www.paper51.com
写指令时,先写地址,然后将16位的或8位数据写入到指定地址中。当DI端输出最后一个数据位后,在CLK时钟的下一个上升沿以前,CS必须为低,且需至少保持250ns,然后将CS置为高电平。需要说明的是:写周期时,每写一个字节需耗时4ms。 内容来自www.paper51.com 地址读指令(READ) 内容来自www.paper51.com 读指令用于从指定的单元中把数据从高位到低位输出至DO端,但逻辑“0”位先于数据位输出。读指令在CLK的上升沿触发,且需经过一段时间方可稳定。为防止出错,建议在读指令结束后,再输出2-3个CLK脉冲。 http://www.paper51.com 芯片擦指令(ERAL) http://www.paper51.com 该指令可将整个存贮器阵列置为1,其它功能与地址擦指令相同。 http://www.paper51.com 芯片写指令(WRAL) copyright paper51.com 该指令可将命令中指定的数据写入整个存贮器阵列,其它功能与地址写指令相同。该指令周期所花费时间的最大值为30ms。 paper51.com
擦/写禁止指令(EWDS) http://www.paper51.com
使用该指令可对写入的数据进行保护,操作步骤与擦/写允许指令相同。 内容来自论文无忧网 www.paper51.com |