- 1、本文档共83页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第八章可编程定时-计数控制器讲解
* * 习题(13) 8253初始化:计数器0定时0.125s,输出频率=8Hz 计数初值N=40kHz/8Hz = 5000 MOV AL,34H ;0011 0101,计数器0方式2,BCD计数,先低字 ;节,后高字节 OUT 43H,AL ;写入控制器端口,完成初始化 MOV AX,00H ;送BCD码低字节至AL OUT 40H,AL ;写入计数器0 MOV AL,50H ;送BCD码高字节至AL OUT 40H,AL ;写入计数器0 ,完成计数初值的设置 MOV BL,01H STI ;设IF=1,允许CPU响应可屏蔽中断,即开中断 NEXT:NOP ;空操作 JMP NEXT ;返回NEXT,即等待新的中断请求 * * 习题(14) IR4中断服务程序 INTER4:PUSH AX STI ;设IF=1,允许CPU响应可屏蔽中断 MOV AL,BL ;第一次中断响应,BL=01送AL OUT 60H,AL;送8255A的A口 ROL BL,1 ;BL循环左移1位 MOV AL,20H;OCW2=0010 0000,中断结束命令 OUT 20H,AL;写入低地址 CLI ;设IF=0,禁止CPU响应可屏蔽中断 POP AX RETI ;中断返回 注:当没有新的中断请求以前,第一次中断响应保持接8255A的PA0的发光二极管亮; 一直到1/8秒时间到,第二次中断请求使接8255A的PA1的发光二极管亮,在没有新的中断请求以前,保持PA1的发光二极管亮; 如此不断循环,完成8个指示灯依次闪烁。 4.方式3—方波发生器(Square Wave Generator) * 4.方式3—方波发生器(Square Wave Generator) * 4.方式3—方波发生器(Square Wave Generator) * 方式3的主要特点 第一, 若计数值为偶数, 在装入计数值后, 每一个CLK脉冲使计数值减1, 当计数到N/2时, 一方面使输出改变状态, 另一方面又继续计数至1, 此过程将周而复始地重复进行。 第二,GATE信号能使计数过程重新开始。原则上,GATE=1允许计数,GATE=0禁止计数。 第三,若在计数期间写入一个新的计数值,并不影响现行的计数过程。 * ? 方式0 方式1 方式2 方式3 功能 计最后一个数中断 硬件触发单稳触发器 分频器 方波发生器 启动条件 写入计数值 外部触发 写入计数值 写入计数值 重复条件 写计数值 外部触发 自动重复 自动重复 N与CLK和OUT关系 写入N后过N+1个CLK后输出变高 单个输出脉冲宽度为N个CLK 每N个CLK输出一个CLK宽度脉冲 写入N后(偶)输出N/2个CLK高N/2个CLK低 改变计数值 立即有效 外部触发后有效 下一计数操作周期有效 下一计数操作周期有效 写入控制字后的OUT 立即为低 高 高 高 * G A T E 低或变低 禁止计数 ? 禁止计数输出变高 禁止计数输出变高 上升沿 ? 从初值开始重新计数 从初值开始重新计数 从初值开始重新计数 高 允许计数 ? 允许计数 允许计数 计数器最小值 1 1 2 2 计数器最大值 0 0 0 0 计数到0后状态 继续减1计数 继续减1计数 自动装初值后计数 自动装初值后计数 ? 方式0 方式1 方式2 方式3 * 5.方式4—软件触发选通方式(Software Triggered Strobe) * 5.方式4—软件触发选通方式(Software Triggered Strobe) * 5.方式4—软件触发选通方式(Software Triggered Strobe) * 6.方式5—硬件触发选通方式(Hardware Triggered Strobe) 硬件触发计数方式,即门控信号GATE上升沿触发计数。 * 6.方式5—硬件触发选通方式(Hardware Triggered Strobe) * 6.方式5—硬件触发选通方式(Hardware Triggered Strobe) * 7.工作方式小结 (1)方式0在写入控制字后OUT变为低电平,其它5种方式在写入控制字后OUT输出高电平. (2)预置值N与输出波形的关系: 方式 初值N与波形的关系 0 写入初值N后,经N+1个CLK输出变为高电平 1 输出一个宽度为N个CLK的负脉冲 2 每N个CLK脉冲,输出一个宽度为CLK周期的负脉冲 3 方波输出,周期为N个CLK周期,N为奇数时高电平比低电平多一个CLK周期 4 写入初值N后,计数结束
文档评论(0)