jcf-59三合一系统(编辑修改稿)内容摘要:
命令。 在键盘工作方式时,由于读出操作严格按照先入先出的顺序,因此,不必使用此条命令。 •A、 读显示 RAM 命令 •其中: • D D D5= 011为读显示 RAM命令特征位。 该命令字用来设定将要读出的显示 RAM的地址。 D D D D0= AAAA 用来寻址显示 RAM 的存储单元,由于显示 RAM 有 16 8 位,即 16 个字节的存储容量,所以需用 4 位进行寻址。 11 D4= AI 为自动增量特征位,当 AI= 1 是,则每次读出之后,地址自动加 1,指向下一个地址,所以下一次顺序读出数据时,不必重新设置读显示 RAM 命令字。 A、 写显示 RAM 命令: 其中: D D D5= 100 为写显示 RAM 命令特征字。 在 CP 显示 RAM 之前,这个命令字用来设定将要写入的显示 RAM 地址。 D D D D0= AAAA 用来寻址显示 RAM 的存储单元, 4位能寻址所有 16 个显示存储单元。 D4= AI 为自动增量特征位,当 AI= 1 是,则每次写入之后,地址自动加 1,指向下一个地址,所以下一次顺序写入数据时,不必重新设置读显示 RAM 命令字。 8279 键盘、显示器接口芯片 (7) F、 显示禁止写入 /消隐命令 D D D5= 101为显示禁止写入 /消隐命令特征位。 D D2= IW A, IW B,此两位分别用来屏蔽 A、 B 两组显示。 例如当 A 组的屏蔽位 D2= 1 时, A 组的显示 RAM 禁止写入。 因此,从 CPU 写入显示器 RAM 的数据不会影响 A 的显示。 这种情况通常在采用双 4 位显示器时使用。 因为两个 4 位显示器是独立的,为了给其中一个四位显示器输入数据而以不影响另一个四位显示器,因此必须对另一组的输入实行屏蔽。 D D0= BL A, BL B 是两个消隐特征位。 分别对两组显示进行消隐,当 BL= 1 时,对应显示组被消隐,而当 BL= 0时,则恢复正常显示。 清除命令 其中: D D D5= 110为清除命令特征位,此命令用来清除 FIFO RAM 和显示 RAM。 D D D2= CD CD CD 用来设定清除显示 RAM 的方式。 共有四种清除方式,见下表: 8279 键盘、显示器接口芯片 (8) C1 = CF 用来置空 FIFO 存储器,当 CF = 1 时,执行清除俱后, FIFO RAM 被置空,使中断输出线 IRQ 复位。 同时,传感器 RAM 的读出地址也被置 0。 D0= CA 为总清的特征位。 它兼有 CD 和 CF 两者的功效。 当 CA = 1 时,对显示的清除方式由 D3D2 两位编码决定。 清除显示 RAM大约需要 160us 时间。 在此期间, FIFO 状态字的最高位 CU = 1,表示显示无效, CPU 不能显示 RAM写入数据。 结束中断 /错误方式设置命令: 12 其中: D D D5= 100为该命令特征位。 这个命令有两种不同的应用。 作为结束中断命令。 在传感器工作方式中,每当传感器状态出现变化时,扫描检测电路就将其状态写入传感器 RAM,并启动中断逻辑,使 IRQ 变高,向 CPU 中断。 并且禁止写入传感器 RAM。 此时若传感器 RAM 读出地址的自动递增特征位没有置位( AI= 0),则中断 IRQ 在 CPU 第一次从传感器 RA 出数据时,就被清除。 若自动递增特征位已置位( AI= 1),则 CPU对传感器 RAM 的读出并不能清除 ERQ,而必须通过给 8279 写入结束中断 /错误方式设置命令才能使 IRQ 变低。 因此在传感器工作方式中,此令用来结束传感器 RAM 的中断请求。 一错误方式设置命令。 在 8279 已被设定为键盘扫描 N 键轮回方式以后,如果 CP 给 8279 又写入结束中断 /错误方式设置命令( E= 1),则 8279 将以一种特定的错误方式工作。 这种方式的特点是: 8279 在消抖周期内,如果发现有多个键被同时按下,则 FIFO 状态字中的错误特征位 S/E将置 1,并产生中断请求信号和阻止写入 FIFO RAM。 错误特征位 S/E 在读出 FIFO状态字时被读出,而在执行 CF = 1 的清除命 令时被复位。 上述 8279 的 8 种命令字皆由 D D D5 特征位确定,当输入 8279 之后能自动寻址到相应的命令寄存器。 只是在写入命令时,命令字一定要写到命令口中,即应让缓冲地址信号 A0= 1 A、 8279 的状态字 •8279 的 FIFO 状态字,主要用于键盘和选通工作方式。 以指示 FIFO RAM 中的字符数和有无错误发生。 8279 键盘、显示器接口芯片 (9) 其中: D7= DU 为显示无效特征位。 当 DU= 1 表示无效。 当显示 RAM 由于清除显示或全清命令尚未完成时, DU = 1。 D6= S/E 为传 感器信号 结束 /错误特征位。 当 8279 工作在传感器工作方式时,若 S/E= 1,表示最后一个传感 器信号已进入传感器 RAM 中,而当 8279 工作在特殊错误方式时,若 S/E= 1,则表示出现了多键同是时按下错误。 此特征位在读出FIFO 状态字时被读出,而在执行 CF = 1 的清除命令时被复位。 D D4= OU 为超出、不足错误特征位。 对 FIFO RAM 的操作可能出现两种错误:超出或不足。 当 FIFO 已经充满时,若其它的键盘数据还企图写入 FIFO RAM 中,则出现超出错误,状态字的 O 置位 1,当 FIFO RAM 已经置空时,若 CPU 还企图读出,则出现不足错误,状态字的 U 置位 1。 D3= F 表示 FIFO RAM 是否已满。 当 F= 1时,表示 FIFO RAM 中已满。 D D D0= NNN表示 FIFO RAM 中的字符数,最多 8 个。 13 软件实验部分 实验一 清零程序 实验目的: 了解传感器 ,仿真器 ,微机接口三合一系统及 MCS51 调试软件。 掌握汇编语言设计和调试方法。 实验内容: 把外部扩展的 RAM 的 2020H— 20FFH的内容清零。 实验步骤: 用连续单步方式运行程序,检查 2020H— 20FFH中实行程序前后的内容变化。 思考: 假设要把片外 2020H— 20FFH中的内容改成 FF 和将单片机片内 RAM中 30H7FH内容改成 55H,如何修改程序。 程序框图: N Y 程序清单: ORG 0640H SE01: MOV R0, 00H MOV DPTR, 2020H ;( 0000H)送 DPTR LOO1: CLR A MOVX @DPTR,A。 0 送( DPTR) INC DPTR ; DPTR+1 INC R0 ;字节数加 1 CJNE R0, 00H,LOO1。 不到 FF 个字节再清 LOOP: SJMP LOOP END 实验二 拆字程序 实验目的: 掌握汇编语言设计和调试方法。 实验内容: 把 2020H 的内容拆开,高位送 2020H 低位,低位送 2020H 低位, 2020H、 2020H 高位清零,一般本程序用于把数据送显示缓冲区时用。 实验步骤: 用连续单步 方式运行程序,检查 2020H— 2020H 中实行程序前后的内容变化。 思考 :如何用断点方法调试本程序。 开始 R0=00 00送 2020H DPTR+1 R0+1 R0=FF。 结束 14 程序框图 程序清单: ORG 0660H SE02:MOV DPTR, 2020H MOVX A, @DPTR MOV B,A。 (2020)→ A→ B SWAP A。 交换 ANL A,0FH。 屏敝高位 INC DPTR MOVX @DPTR,A。 送 2020H INC DPTR MOV A, B ANL A,0FH。 (2020)内容屏敝高位 MOVX @DPTR,A。 送 2020H SJMP $ END 实验三 拼字程序 实验目的: 掌握汇编语言设计和调试方法。 实验内容: 把 2020H、 20201H 的低位分别送入 2020H 高低位,一般本程序用于把显示缓 冲区时的数据取出拼装成一个字节。 实验步骤: 用连续单步方式运行程序,检查 2020H 中实行程序前后的内容变化。 开始 2020H内容送 A 高低位交换 屏蔽高位后送2020H 2020H内容送 A 屏蔽高位后送 2020H 结束 15 程序框图: 程序清单 ORG 0680H SE03:MOV DPTR, 2020H MOVX A, @DPTR ANL A,0FH。 (2020H)内容屏敝高位 SWAP A。 交换 MOV B,A。 保存 INC DPTR MOVX A,@DPTR。 (2020H)内容送 A ANL A,0FH。 屏敝高位 ORL A,B。 或 INC DPTR MOVX @DPTR,A。 送 2020H SJMP $ END 实验四 数据排序实验 实验目的 :熟悉 8031指令系统,掌握程序设计方法。 实验 内容: 编写并调试一个排序子程序,其功能为用冒泡法将内部 RAM 中几个单字节无符号的正整数,按从小到大的次序重新排列。 实验步骤: 把 8031 中 RAM50— 5AH 中放入不等的数据,运行本实验程序后检查 50— 5AH 中内容是否按从小到大的次序排列。 思考: 编一程序把 50H— 5AH中内容按从大到小排列。 开始 (2020H)内容送 A,屏蔽高 位 交换高低位 ,送 B (2020H)内容送 A,屏蔽高 位 A和 B或后 ,送 2020H 结束 16 程序框图: 程序清单 ORG 09B0H QUE: MOV R3, 50H QUE1:MOV A,R3。 指针送 R0 MOV R0, A MOV R7,0AH。 长度送 R7 CLR 00H。 标志位为 0 MOV A, @R0 QL2: INC R0 MOV R2, A CLR C MOV 22H, @R0 CJNE A,22H,QL3。 相等吗 ? 开始 清标志位 根据 (R0)取数 A (R0)+1送 R0 (A)< ((R0))? 置标志位 ,交换内容 长度减 1=0? 标志位 =0? 标志位 =0? 结束 17 SETB C QL3:MOV A, R2 JC QL1。 大于交换位置 SETB 00H XCH A, @R0 DEC R0 XCH A, @R0 INC R0。 大于交换位置 QL1:MOV A, @R0 DJNZ R7, QL2 JB 00H,QUE1。 一次循环中有交换继续 SJMP $。 无交换退出 END 实验五 数据 区传送子程序 实验目的: 掌握 RAM中的数据操作。 实验内容: 把( R2, R3)源 RAM区首址的( R6, R7)个字节数据,传送到( R4, R5)目的 R。jcf-59三合一系统(编辑修改稿)
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。
用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。