⊙通用键盘显示板
 ☆测试程序入口地址
   a:0400 检查 8031 P1口 (方波)         b:041O 检查 8155 内存 好显示gd
   c:046O 检查 8155 PA PB PC口 (方波)   d:0480 检查 6264 好显示 gd
   e:O4BO 检查 0809                     f:0500 检查 0832
 ☆数据采集及PC通讯子程序
   a.FSDT三字节浮点数规格化子程序
     地址为:0800H-082FH 三字节浮点数形式,数符阶符阶码尾数(高)尾数(低)
     在执行浮点数的加减法之前必须先对阶,使两个操作数的阶码相等,通常是小阶对齐大阶,对阶
     码小的浮点数进行右规操作,对于运算结果,进行左规操作使之转化为规格化浮点数.FSDT子程
     序对浮点数进行左规或右规操作,其功能为:
     若CY=0,FO=0,则对R6(阶)R2R3进行右规一位的操作右移输入位为 BIT39H;
     若CY=0.FO=1,则对R7(阶)R4R5进行右规一位的操作右移输入位为BIT39H;
     若CY=1,则对R6(阶)R2R3进行左规格化,第一次左移输入位为FO.
     本程序使用A, CY, F0, R0-R7,BIT39H等
   b.FABP三字节浮点数加减法,地址为0830H-08A5H
     入口: BIT 3A=0 加  3A=1 减  R6 R2 R3 + R7 R4 B3--〉R4 R2 B3
     FAVP子程序使用A.R0-R7.F0位单元38H.39H.3AH,并调用FSDT子程序
   C.DMUL三字节原码小数乘法地址 08B0H-08DAH将(R4R5)和(R2R3)中的双字节纯小数相乘,结果送
     到 R2R3R7.本子程序使用累加器A,寄存器B.R2.R3.R4.B5.R6.R7以及标志F0.
   d.FMLD三字节浮点取数子程序,地址为08E0H-08FBH入口: R0.R1指向二个浮点数的阶码字节.
     (R0)(R0+1)(R0+2)--〉R6 R2 R3   (R1)(R1+1)(R1+2)--> R7 R4 R5
     出口: R0.R1值不变,R6R2R3,R7R4R5
     FMLD子程序使用累加器A,工作寄存器R0-R7
   e.FADD三字节浮点数加法,地址为08F5H-O8FBH 入口: R0,R1 同上
     (R0); (R0+1) (R0+2)    +(R1) (R1+1) (R1+2)
     R4 R2 R3   
     出口: R0,R1 值不变,R4 R2 R3
   f.FSUB三字节浮点数减法子程序,地址为0900H-0906H  入口: R0 R1指向二个浮点数阶码字节
     (R0) (R0+1) (R0+2)    - (R1) (R1+1) (R1+2)
      R4 R2 R3   
     出口: R0, R1值不变,R4 R2 R3 为结果
   g.FSTR三字节存数子程序,地址为0907H-0911H   入口: R4 R2 R3, R1
     R4 R2 R3--〉(R1)(R1+1)(R1+2)
     出口: R1值不变
   h.FMUL字节浮点数乘法子程序,地址为0915H-0930H
     入口: R0,R1
     (RO) (R0+1) (R0+2) *    (R1) (R1+1) (R1+2) = R4 R2 R3
     出口: R4 R2 R3,不改变R0,R1和 RAM 的内容.
     FMUL子程序使用累加器 A,标志 F0,寄存器 R0-R7.
   B 以及位单元32H,并调用子程序FMLD,FSDT等.
   i.DDIV三字节原码小数除法子程序,地址0931H-095FH
     将(R2R3)中双字节定点小数除以 (R4 R5) 中双字节定点小数,商送 R2 R3.
     DDIV子程序使用累加器A,寄存器B,R0-R7,标志F0,CY等
   j.FDIV三字节浮点除法子程序,地址0960H-0996H.
     (R0)(R0)+1)(R0+2)/(R1)(R1+1)(R1+2)=R4 R2 R3
     将(R0)指向的内部RAM中的浮点数除以(R1)指向的内部RAM中的浮点数,商送R4 R2 R3不改变
     R0,R1和内部 RAM 中的操作数内容.
     FDIV子程序使用累加器A,寄存器B,R0-R7,标志F0,CY位单元38H,39H,调用FMLD,FSDT等子程序.
   k.EHTD三字节浮点数二翻十,地址为O9A0H-0A96H.
     入口: (R0) (R0+1) (R0+2)     出口: (R1) 十进制阶码
     (R1+1) 最高位   (R1+2) 最高位    (R1+3) 最高位
     (R1+4) 最高位   (B1+5) 最高位    (R1+6) 最高位
     注: 单字节BCD码
   1.INTF 0AA0H-0AAFH,16位二进数--〉三字节浮点数
     入口: 3CH,R2,R3,R1     出口: R6 R2,R3
     将BIT 3CH (数符) R2 R3中的整数转换成三字节浮点数送(R1)指向的内部RAM单元中,INTF子
     程序使用累加器A,R1R2,R3,R6,调用FSTR子程序.
   m.IDTB: 四位十进制数-->二进制数,地址为0AB0H-0AD1H
     设BCD码a1,a2,a3,a4分别放在40H-43H单元,二进制结果放在R3R4中.
     该子程序使用A,B,R0,R2,R3,R4.
   n.FBTF:二进制数-->三字节浮点数,地址为0AD2H-0ADDH   入口: 同1 出口: 同1
   o.FLOUD存数程序,地址为0ADH-0AE4H.
     入口: R4,R2,R3,R0,R4,R2,R3-->(R0) (R0+1) (R0+2)   出口: (R0)(R0+1)(R0+2)
   p.FDTB 十进制数-->三字节浮点数,地址为0AE5H-0B84H
   q.DAVG四取一数字滤波子程序,地址0B91H-0BDAH.
     DAVG子程序连续执行4次数据采样,去掉其中最大值和最小值,然后取剩下两个数据的平均值送
     到R6.R7中.
     本程序调用A/D输入子程序RDAD,读入14位二进制数的A/D结果(在0-3FFFH范围内).程序中R0作
     N计数器,R2 R3存放最大值,R4 R5存放最小值,R6 R7 存放累加和及最后结果.
   r.RDAD 读 AD 样品子程序,地址为0BE0H-0BF0H.  入口: 61H. 60H 单元  出口: A. B
   s.sin函数,sinX多项式计算子程序,地址0C00H-0FFFH
   t.com IBM-PC 通讯子程序,地址为0F00H-0FFFH.
     Bandrate = 1200 Band    Frame: 起始位 十 D0-D7 十 停止位入口,先接来自 PC 的命令,
     暂定为数字键d,开始发送把4000H-5FFfH,送入 PC,并创造用户文件,记录存盘.
                                                                                      BACK<<         >>NEXT         


       IC-8031 
       IC-8155 
       IC-8255
       IC-8279
       IC-0809
       IC-0816
       IC-27128  
       IC-27256  
       多合一仿真卡 
       通用键盘显示板