微机控制LED点阵显示屏设计 第8页


微机控制LED点阵显示屏设计 第8页
图3一10副CPU工作流程
通信速率要比主CPU高得多。实际中应用的速率是单片机晶振频率的三十二
第三章主控电路
分之一,即375KbPs。之所以采用比主CPU高得多的传输速率,是因为副CPU
不但要传送主CPU已发送到显存的数据,而且还要将时间、温度等自身转换
后的点阵信息发送给显示单元。为了达到速率上的匹配,副CPU的通信速率
必须要比主CPU高许多,否则当上位机连续变换显示内容,而副CPU通信速
率低于要求时,会发生丢失显示内容的现象。
此外,副CPU还要与89C2051通信,读取89C2051已经计算好的温度
值。副CPU与各部分之间的通信采用时分复用的查询应答方式,由副CPU向
各部分发出查询信息,各部分在规定的时间返回查询结果。
副C尸U工作流程:
副CPU软件流程如图3一10。同主CPU一样,副CPU上电后也首先检测
是冷启动还是热启动,以进行相应的初始化。副CPU还提供显示屏定时开关
功能。初始化后,副CPU监测系统时间是否在关显示时间区段(21:00一6:
00),如果在这段时间内,副CPU会停止显示数据的传送并立即发出关闭显
示屏的指令;否则副CPU会将当前显示时间、温度转换成点阵信息,发送给
显示屏。再判断有无显示信息,若有,从显示缓冲区读出并立即发送。
系统打铃功能的实现是由副CPU的外中断INTI来实现的。其具体软件
流程如图3一H所示。
副CPU的外中断INTI的中断源是由DS12887产生的。DS12887的SQW
管脚方波的输出频率被设为1024KHz。当副CPU进入中断入口后,首先查询
打铃允许标志位,该位置1则允许打铃,反之禁止打铃。若允许打铃,副CPU
进一步查询当前的系统时间是否有与设置的打铃时间相一致的,有则在打铃
输出管脚输出高电平,并启动时间计数器,然后退出中断。时间计数器20
秒后溢出,副CPU会将打铃输出管脚拉低。若当前的系统时间没有同设置的
打铃时间相一致的,就退出中断。
打铃的数据单元由三个字节组成,三个字节都用BCD码来表示。第一个
字节代表本单元的星期数,第二个字节代表小时数,第三个字节代表分钟数。
第三章主控电路
读读当前时间间
*****
查查询并比较较
YYY启sss
中断返回
图3一n副CPU外中断1软件流程图
互3.2异步双口RAM
由于点阵显示系统属于高速数据处理系统,其数据量和信息处理任务
都非常繁重,因此对数据传送的要求是比较高的。如果在系统或模块间没有
能够高速传送数据的接口,极易在数据传送时造成瓶颈堵塞现象,以至影响
整个系统的信息处理能力。所以高速并行接口占有非常重要的地位。
利用高性能的双口RAM能够方便的构成各种工作方式的高速数据传送接
第三章主控电路
口,保证数据通路的畅通。
双端口RAM提供了两个完全独立的端口,每个端口分别有自己独立的控
制线、地址线和工/0数据线。两个CPU可以独立的读写任意双端口RAM单元。
使用双端口RAM在两个CPU之间共享信息有很多优点:速度快,方式简单,存
取共享信息所用的时间一般与存取CPU外部RAM中数据所用时间一样。总之,
对两个CPU中的任意一个而言,双端口RAM等效于CPU的外部RAM,并且,通过
适当设计可消除读写双端口RAM的系统等待时间。
双端口RAM在使用上应注意的一个问题就是有可能发生争用。当两个端
口的CPU同时取同一双端口RAM单元时,就产生了争用,会出现写入值和读出
值不是所期望的值的数据混乱状态。通常,有四种争用解决方案:硬件判优
方案,中断方案,令牌传递方案和软件判优方案。
下面以在系统中实际使用的工DT公司生产的工DT7005为例,说明这四种
方案:
.硬件判优方案
当出现争用现象时,双端口RAM的片内判优电路确定某一个具有优先权
的端口可以继续对该端口进行读写操作。对该端口而言,就像未发生争用一
样:硬件判优电路把另一个被延迟存取的端口的/BUSY引脚置为有效(低电
平)。在/BUSY有效期间对该端口的读写操作是无效的。当具有优先权的端口
完成对争用单元的读写操作后,硬件判优电路把延迟存储端口的/BUSY引脚
置为高电平,这时延迟存取的端口可以继续存取。
硬件判优方案要求CPU能插入等待状态。使用时把双端口RAM的/BUSY连
到本端口CPU的等待状态检测线上即可。如8098单片机的READY引脚。一般只
要等待周期长度超过另一端口CPU的读写周期即可保证CPU结束等待时
/BUSY=l。
但由于本系统采用的是不能插入等待状态的89C5ICPU,故不能采用硬
件判优方法来解决争用问题。
中断方案
中断方案向每个端口分配一个双口RAM单元,该单元叫信箱或消息中
心。当右边端口写右边的信箱单元时,将左边的/工NTL清O:左边读该单元
第三章主控电路
时,将/工NTL置1。对左边也有类似的功能。左、右两个端口的信箱单元的
偏移地址不同。
以本系统使用的工DT7O05为例。当右端口写偏移地址IFFEH单元时,
将左端口的/INTL清O;左端口读IFFEH单元时,将工NTL置1。对左端口有
类似的功能,只是使用偏移地址为IFF阳的单元。使用中断方案时,右端口
不应写IFFFH单元,左端口不应写IFFEH单元。IFFEH和IFFFH单元中的消
息是用户定义的。若不使用中断方案,IFFEH和IFFFH可当成普通单元,左
右端口都可读写。
使用时应将/INTL连到左端口CPU的一个中断输入端:/工NTR连到右端
口CPU的一个中断输入端。
这种方法不允许两个端口的CPU同时使用双端口RAM,当然不会发生两
个端口同时存取一个双端口RAM单元的争用现象,且CPU不必插入等待周期。
但由于两个C四同时读取双端口尺AM同一个单元的概率很小,因此这种方法
在速度上造成一些浪费,故本系统实际上也未采用这种方法。
.软件判优方案
软件判优的基本思想是在两个端口的CPU之间建立“握手”信号,一
个端口在存取双端口RAM之前,先看对方是否在用双端口RAM,若未用,则
本方使用双端口RAM并通过握手信号通知对方本端口已占用了双端口RAM;
对双端口RAM操作结束后,再通知对方本方停止占用双端口RAM。
软件判优方案也不要CPU插入等待周期,但软件较复杂且要占用一些

上一页  [1] [2] [3] [4] [5] [6] [7] [8] [9] [10]  ... 下一页  >> 

  • 上一篇文章:
  • 下一篇文章:
  • Copyright © 2007-2012 www.chuibin.com 六维论文网 版权所有