第8章 数字量IO模块课程.ppt

  1. 1、本文档共54页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第8章 数字量I/O模块 8.1 数字量I/O端口概述 控制寄存器 8.2 数字量I/O端口寄存器 8.2.1 I/O端口复用输出控制寄存器 I/O端口复用控制寄存器A(MCRA)配置 2.I/O口复用控制寄存器B(MCRB) 地址7092h 注意: 3.I/O口复用控制寄存器C(MCRC) 地址7094h I/O端口复用控制寄存器C(MCRC)配置 8.2.2 I/O端口数据和方向寄存器 1.端口A数据和方向控制寄存器(PADATDIR)――地址7098h 2.端口B数据和方向控制寄存器(PBDATDIR)――地址709Ah 3.端口C数据和方向控制寄存器(PCDATDIR)――地址709Ch 4.端口D数据和方向控制寄存器(PDDATDIR)――地址709Eh 5.端口E数据和方向控制寄存器(PEDATDIR)――地址7095h 6.端口F数据和方向控制寄存器(PFDATDIR) ——地址7096h 8.3 I/O端口应用 软件设计 汇编语言 系统初始化程序 软件延时程序 C语言 8.3.2 键盘与发光二极管配合使用程序 1.汇编程序 (2)主程序 (3)系统初始化程序 (4)键盘初始化程序 (5)键盘程序 (6)读键子程序 (7)用软件延时30mS消抖动 (10)假中断程序 2.C语言程序 8.3.3 光电隔离的8路开关量输入 与8路开关量输出电路 F2407与光电隔离的8路开关量输入输出接口电路 C语言源程序 硬件说明: 有8个键和8个发光二极管,键盘的值先用IOPB端口直接读取,即相应的I/O用作输入方式; 把IOPB端口作为输出方式去点亮8个发光二极管。 键盘K1-K8分别对应于I/O端口IOPB0-IOPB7。 按下8个键盘中的某个按键则相应的第几个发光二极管点亮。 软件说明 用查询的方式来读取键值; 当S1键按下时,点亮发光二极管LED0; S1键对应的输入I/O引脚为IOPB0,在IOPB0作为一般I/O输入的情况下,如S1键按下则端口B数据和方向控制寄存器(PBDATDIR)的第0位为0; 经过延时消抖动后如PFDATDIR.0仍为0则表示S1键按下; 程序中如S1键按下,就点亮发光二极管LED0。 KEYXS .usect ".data0",1 ;LED显示的数据 KEYDATA .usect ".data0",1 ;前次LED显示的数据 DP_USER .set 5 .include "F2407REGS.H" ;引用头部文件 .def _c_int0 .text _c_int0 CALL SYSINIT;调系统初始化程序 LDP #DP_USER;指向0280h~0300h区 SPLK #0000H,KEYXS ;给要显示的数据赋初值 B LED ;使LED全部熄灭 LOOP: CALL KEY ;调键盘程序,即扫描键盘 LED: LDP #DP_PF2;选数据页 LACL PADATDIR ;将PADATDIR装载到ACC的低16位 OR #00038H ;LEDCLK=0 SACL PADATDIR ;开74HC273片选信号 LDP #DP_USER LACL KEYXS OR #0FF00H;IOPB端口为输出方式 LDP #DP_PF2 SACL PBDATDIR;送要显示的数据到IOPB端口 LACL PADATDIR OR #0ff10H;LEDCLK=1 AND #0ff10H SACL PADATDIR;关74HC273片选信号 CALL KEYDELAY WAIT: RPT #7 ;延时 NOP B LOOP ;跳转,循环查键 SYSINIT: SETC INTM CLRC SXM SETC OVM CLRC CNF ;B0 被配置为数据存储空间 LDP #0E0H SPLK #81FEH,SCSR1 ;CLKIN=6 MHz,CLKOUT=24 MHz SPLK #0E8H,WDCR;不使能看门狗 WDT LDP #0 SPLK #0000H,IMR;不使能中断 SPLK #0FFFFH,IFR;清

文档评论(0)

hushuidhd + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档