由硬件部分可知,本系统采用双CPU工作,主CPU负责处理通信,人机对话及实时显示等任务。辅CPU则专门负责扫描显示。主、辅CPU共享一片作为显示缓冲区的6264(RAM)。在主CPU处理好共享RAM的数据后,便将RAM出让给辅CPU,辅CPU将共享RAM的内容原封不动地映像到显示屏,内存单元与显示屏点阵对应关系如下(对主CPU而言)
内 0000 0001 0002 0003 0004 0005 0006 0007
存 0100 0101 0102 0103 0104 0105 0106 0107
单 … … … … … … … …
元 … … … … … … … …
地 0800 0801 0802 0803 0804 0805 0806 0807
址 … … … … … … … …
(H)… … … … … … … …
0F00 0F01 0F02 0F03 0F04 0F05 0F06 0F07
第一个汉字 第二个汉字 第三个汉字 第四个汉字
主CPU通知辅CPU的方法具体是:向4001H单元写数(具体数据不要求)。由于在此期间,主、辅CPU要进行逻辑握手,为避免出错,请使用下面提到的系统资源中的COUMUN子程序。例如:要在屏上第一字处显示“电”字,参考《数字化测量技术》P79,其编码如下:
0000H:00H 0001H:00H
0100H:01H 0101H:80H
0200H:01H 0201H:80H
0300H:3FH 0301H:FCH
0400H:31H 0401H:8CH
0500H:31H 0501H:8CH
0600H:31H 0601H:8CH
0700H:3FH 0701H:FCH
0800H:31H 0801H:8CH
0900H:31H 0901H:8CH
0A00H:31H 0A01H:8CH
0B00H:3FH 0B01H:FCH
0C00H:01H 0C01H:80H
0D00H:01H 0D01H:86H
0E00H:01H 0E01H:FEH
0F00H:01H 0F01H:00H
参考程序:
ORG 8000H
MOV DPTR,#HAN ;将点阵表首地址送DPTR
MOV R1,#0 ;存储相对于表首的偏移量
MOV R0,#0 ;做间址寄存器,由P2,R0访问显缓区
MOV R4,#0 ;映像P2 | |