- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
MAX7219及单片机的SPI接口设计
串行显示驱动器PS7219及单片机的SPI接口设计
在单片机的应用系统中,为了便于人们观察和监视单片机的运行情况,常常需要用显示器显示运行的中间结果及状态等等。因此显示器往往是单片机系统必不可少的外部设备之一。常用的显示器有很多种,其中LED(发光二极管显示器)是应用较多的一种,它特别适用于强光和光线极弱的场合。 要使LED显示,必须提供段选码和位选码。传统的硬件译码显示接口广泛采用由中央处理器CPU(如:Intel 8031)扩展I/O口(如:8255),然后再使用逻辑门驱动芯片(如7407等)驱动相应的位码和段码。这种设计,芯片间连线十分复杂,系统工作可靠性不高,已越来越不适应单片机系统集成化、小型化的发展要求。特别是系统并行扩展I/O,其缺点十分明显 (1)连线太多,系统连线复杂,印制板布线不方便; (2)并行总线上挂靠的器件太多,系统工作的稳定性和可靠性低; (3)体积较大,集成度不高。 正是由于上述原因,近年来,各厂家相继开发出了集成度较高、驱动能力较强、驱动位数较多、功能齐全的LED显示驱动器。 本文介绍一种低价位、高性能的多位LED显示驱动器PS7219芯片,以及它与单片机89C51具体的SPI接口设计与应用软件。1 PS7219简介??? PS7219是一种新型的串行接口的8位数字静态显示芯片。它是由武汉力源公司新推出的24脚双列直插式芯片,采用流行的同步串行外设接口(SPI),可与任何一种单片机方便接口,并可同时驱动8位LED(或64只独立LED),其引脚图如图1所示。
PS7219内部具有15×8RAM功能控制寄存器,可方便选址,对每位数字可单独控制、刷新、不需重写整个显示器。显示数字亮度可由数字进行控制,每位具有闪烁使能控制位。当引脚CON(13脚)置高电平,可禁止所有显示,达到降低功耗的效果,但同时并不影响对控制寄存器的修改。PS7219还有一个掉电模式、一个允许用户从1位数显示到8位数显示选择的扫描界限寄存器和一个强迫所有LED接通的测试模式。另外,PS7219A型内置一个可靠的uP监控电路,可为外部提供一个脉宽140ms,触发门限典型值为4.63V的高电平复位信号。 如果N个PS7219级联,可实现N×8位LED显示。2 PS7219引脚功能??? PS7219引脚功能如表1所示。
3 PS7219工作过程??? 图2为PS7219工作时序图。由图2可行,DIN是串行数据输入端,在CLK的上升沿,一位数据被加载到内部16位移位寄存器中,CLK端最高输入频率可达500kHz,在输入时钟信号的每个上升沿,均有1位数据由DIN移入到内部寄存器中,LOAD用来装载数据,在LOAD的上升沿,16位串行输入数据被锁存到数字或控制寄存器中。LOAD必须在第16个时钟上升沿的同时或之后,在下一个时钟上升沿之前变高,否则数据将会丢失。 规定一组数据为16位二进制数据包,其格式如下:
? 其中D15~D12位不用,D11~D8为内部5个控制寄存器和8个LED显示数据寄存器的地址,地址编码如表2。D7~D0为5个控制寄存器命令字或8个LED数码管待显示的数据。因为控制寄存器与显示数据寄存器均独立编址,所以可以通过程序单独对每个寄存器进行操作。一般情况下,程序先送控制命令,后向显示寄存器送数据,但必须注意,每16位为一组,从高位地址节最高位开始送起,直到低位数据字最后一位为止。
PS7219按5个控制寄存器规定的方向对待显示的数字自动扫描显示,所以有必要对各控制寄存器的功能有所了解,现分述如下: (1)译码方式寄存器:对每个数字设置BCD码B(0~9、E、H、L、P和-)或非代码操作。寄存器中的每一位与一个数字对应。逻辑高电平选择代码BCD译码,而低电平选择旁路译码器。 (2)显示亮度寄存器:其中D7~D4位可任意,而D3~D0可选择0000~1111。D3~D0的值越大,LED显示器越亮。 (3)扫描范围寄存器:其扫描范围寄存器设置所显示数据的多少,可从1至8。它们一般以扫描速率1.5kHz、8位数据、多路复用方式显示。 (4)掉电控制寄存器:其中D7~D1位可任意,D0=0,关闭所有显示器;D0=1,允许显示。 (5)显示测试寄存器:其中D7~D1位可任意;D0=00,LED处于正常工作状态;D0=1,允许显示。LED处于显示测试状态。 在送完控制字后,可根据实际需要调用显示子程序,改变1~8个数据寄存器的内容,完成显示功能。4 SPI接口??? SPI是同步串行外设接口,主要用于与各种外围器件以串行方式进行通讯、交换信息。这些外围器件可以是简单的TTL移位寄存器、或是复杂的L
文档评论(0)