- 22
- 0
- 约1.19万字
- 约 49页
- 2019-09-14 发布于湖北
- 举报
主程序 Start: mov tmod,#01h mov th0,#3ch mov tl0,#0b0h setb tr0 mov ie, mov 20h,#10 MOV 52H,#34 MOV 51H,#12 MOV 50H,#06 中断服务程序 拆分子程序和查表主程序 disp0: mov r0,#52h mov r1,#30h mov r3,#3 lll: mov a,@r0 mov b,#10 div ab mov @r1,b inc r1 mov @r1,a inc r1 dec r0 djnz r3,lll ret * 用Q非上升沿触发,构成加法计数器 * 1秒到做点事情。 * 分别用书上的程序和课件上的,关于标志位有差别。 * * 5.3.5 定时/计数器应用举例 初始化程序应完成: 对TMOD赋值,以确定T0和T1的工作方式; 求初值,并写入TH0、TL0或TH1、TL1; 使TR0或TR1置位,启动定时/计数器工作。 初始化程序设计 (四条指令) MOV TMOD,#01H ;设置T0为方式1 MOV TH0,#0FEH ;T0置初值 MOV TL0,# 0CH SETB TR0 两种方式对溢出作出反应:查询、中断 * * 中断方式:(常用) 查询方式: 1、在主程序中进行中断初始化 2、计数(定时)结束后该做的事情放在中断服务程序中 1、反复查询是否溢出,如JNB TF0,$ 2、一旦发现溢出,及时清除溢出标志 3、然后安排计数(定时)结束后该做的事情 * * 计数应用 【例5-5】有一包装流水线,产品每计数24瓶时发出一个包装控制信号。试编写程序完成这一计数任务。用T0完成计数,用P1.0发出控制信号。 确定方式字: T0在计数的方式2时: M1M0=10,GATE=0 ,C/T=1 方式控制字为06H 求计数初值X: N=24 X=256-24=232=E8H 应将E8H送入TH0和TL0中 * * ORG 0000H LJMP MAIN ORG 000BH LJMP DVT0 ORG 0100H MAIN:MOV TMOD,#06H ;置T0计数方式2 MOV TH0,#0E8H;装入计数初值 MOV TL0,#0E8H SETB ET0 ;T0开中断 SETB EA ;CPU开中断 SETB TR0 ;启动T0 SJMP $ ;等待中断 DVT0:SETB P1.0 NOP NOP CLR P1.0 RETI END 主程序 中断服务程序 * * 定时应用 定时时间较小时(小于65ms)。可直接采用方式1完成定时任务。 两种方式对溢出作出反应:查询、中断 系统时钟为6MHz时,各种方式下的最长定时的计算: 由最长定时=2n×Tcp ,而Tcp= 2?s 方式0最长可定时16.384ms; 方式1最长可定时131.072ms; 方式2最长可定时512?s。 晶振为12 MHz时,Tcy为1μS。最长可定时65ms * * 确定方式字: T0在定时的方式1时: M1M0=01,GATE=0 ,C/T=0 方式控制字为01H 求计数初值X: Tcy为1μS N=10ms/1μS=10 000 X=65536-10000=D8F0H 应将D8送TH0, F0H送TL0 举例 * * ORG 0000H LJMP MAIN ORG 000BH LJMP DVT0 ORG 0100H MAIN:MOV TMOD,#01H ;置T0方式1 MOV TH0,#0D8H;装入计数初值 MOV TL0,#0F0H SETB ET0 ;T0开中断 SETB EA ;CPU开中断 SETB TR0 ;启动T0 SJMP $ ;等待中断 DVT0:CPL P1.0 MOV TH0,#0D8H MOV TL0,#0F0H RETI
您可能关注的文档
最近下载
- 2024年党员自我剖析材料2023版最新党员自我剖析材料范文.docx VIP
- Pulse MIG-500FR使用说明书2.pdf
- 2025年房地产经纪人二手房买卖与租赁投资回报率比较分析专题试卷及解析.pdf VIP
- 桩基检测及岩芯取样方案.pdf VIP
- HZ-JY杭州市道路检查井设计图集2016.docx VIP
- 《DLT 904-2015火力发电厂技术经济指标计算方法》专题研究报告.pptx VIP
- 江苏安全技术职业学院单招《数学》真题精华版附答案详解.docx VIP
- 2024年第二季度入党积极分子思想汇报.docx VIP
- 转炉炼钢操作与控制 知识点1:转炉炼钢发展概况 转炉炼钢操作与控制认知.ppt VIP
- 2026年镇江市高等专科学校单招职业适应性测试模拟测试卷完整.docx VIP
原创力文档

文档评论(0)