版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第9章定时器/计数器的应用9.1定时器/计数器定时功能的应用9.2简易方波发生器9.3外部脉冲宽度的测量1.实训目的掌握定时器/计数器定时功能的使用方法掌握定时器初值的计算方法掌握定时中断程序的编程方法2.功能设计主程序:定时器T0的初始化,应用P1口控制发光二极管L1~L8的亮暗交替显示。定时器T0中断:T0产生10s的定时中断,当定时时间到时,8个发光二极管全灭,并持续一段时间(延时1s)。9.1定时器/计数器定时功能的应用3.背景知识8051单片机的定时器/计数器T0(T1)为16位计数器,有4种工作方式。每种工作方式的特点见书中表9.1。本题目需要T0定时10s,直接使用表9.1中的4种方式均不能达到要求。如果采用方式1,定时100ms,则中断10次时间为100ms×100=10000ms=10s。(1)定时器工作方式寄存器TMOD设置如书中所示。(2)定时器/计数器控制寄存器TCON设置如书中所示。4.硬件原理与资源分配硬件原理图如图9.1所示。硬件资源分配:P1口为8位输出口,驱动8个发光二极管。R5为循环计数器。图9.1T0定时实训硬件原理图5.参考程序ORG0000HAJMPMAIN ;转主程序ORG000BH ;T0中断入口地址AJMPJT0 ;转T0处理程序MAIN:NOP ;主程序段MOVSP,#40H ;设定堆栈MOVA,#0FFHMOVP1,A ;初始化P1口MOVR5,#100MOVTMOD,#01H ;写控制字,T0工作方式1MOVTH0,#0B0H ;设定初始值MOVTL0,#3CHPUSH02HPUSH03HPUSH04HDJNZR5,RRTMOVR5,#100MOVA,#0FFH ;L1~L8全灭MOVP1,ALCALLYS1 ;调用延时1s子程序RRT:MOVTH0,#3CH ;重装初始值MOVTL0,#0B0HPOP04H ;恢复现场POP03HPOP02HPOPACCSETBEA ;开中断RETI ;中断返回DLS:MOVR1,#0FFHLOP1:MOVR2,#0FFHLOP:DJNZR2,LOPDJNZR1,LOP1RETEND子程序YS1见第6章例6.3。6.总结与提高定时器/计数器是单片机内部重要的功能部件,灵活运用定时器/计数器的功能,不仅能够节约硬件资源,而且还能使程序简练、控制灵活。在使用定时器/计数器时应注意以下几个方面:(1)应根据所要求的定时时间长度和定时的重复性,合理选择定时器的工作方式。(2)定时器/计数器的初始化,包括设定TMOD、写入定时初值、设置中断系统和启动定时器运行等。1.实训目的掌握定时器的使用及定时中断程序的设计方法掌握方波信号发生器的设计方法2.功能设计用单片机的P3.1端口输出一定频率的方波。P1口外接K1~K8共8个按键,用来设定输出方波的频率,共8个档位。系统晶振为12MHz。9.2简易方波发生器3.背景知识(1)若P3.1的输出状态定时翻转,则P3.1端口输出一定频率的方波。假设以定时器T0定时8ms(8000μs)为基本定时时间,则P3.1端口输出方波的周期为16ms。选择T0方式0定时功能,定时器初值为:Tini=213-8000/1=192=C0H=11000000B低5位(TL0)=×××00000B=00H,高8位(TH0)=00000110B=06H。定时器工作方式寄存器TMOD设置如书中所示。(2)按下按键K1,则P3.1输出基本频率的方波,按下按键K2~K8,则P3.1输出频率依次降低。主程序要根据按键确定P3.1口的输出频率。(3)T0的中断入口地址为000BH。图9.2方波发生器5.参考程序ORG0000H ;CPU起始地址AJMPMAIN ;跳转到主程序ORG000BH ;T0中断入口地址AJMPJT0 ;跳转到T0处理程序MAIN:NOP ;主程序段MOVSP,#40H ;设定堆栈MOVA,#0FFH ;0FF送AMOVP1,A ;P1口为输入口,初始化P1口MOVTMOD,#00H ;写控制字,T0工作方式0MOVTH0,#06H ;设定初始值MOVTL0,#00HSETBP3.1SETBTR0 ;启动T0SETBET0 ;允许T0中断SETBEA ;开总中断,EA=1(开放总中断)LOOP:MOVA,P1 ;读P1口MOV61H,A ;保存P1口内容JBACC.0,LA1 ;判断是哪一个档位MOVR5,#01HLJMPLA9LA1:JBACC.1,LA2MOVR5,#02HLJMPLA9LA2:JBACC.2,LA3MOVR5,#03HLJMPLA9LA8:AJMPLOOP ;主程序循环,如果有中断,则转中断处理程序JT0:NOP ;T0中断处理程序PUSHACC ;将A中数据压入堆栈保存CLRET0 ;关T0中断DJNZR5,TT10 ;由设定的R5的值确定输出方波的频率CPLP3.1 ;P3.0输出MOVR5,62HTT10:MOVTH0,#06H;重装初始值MOVTL0,#00HSETBET0 ;开T0中断POPACC ;恢复ARETI ;中断返回END6.总结与提高本实训是应用定时器T0的定时功能,输出8种不同频率的方波。实际应用中,输出方波的频率可能要根据要求按某种规律变化,如根据现场测量参数、给定参数或按照某函数关系而变化。因此输出波形的频率在编程时还是未知的。1.实训目的掌握定时/计数器门控位的使用方法掌握脉冲宽度的测量方法2.功能设计测量P3.2口输入的脉冲的宽度。9.3外部脉冲宽度的测量(2)定时器工作方式寄存器TMOD的设置如书中所示。4.硬件原理与资源分配硬件原理图如图9.3所示。硬件资源分配:内部RAM60H、61H单元用于保存脉冲宽度对应的机器周期数。图9.3外部脉冲测量电路图5.参考程序ORG0000HAJMPMAINMAIN:NOPMOVSP,#40HMOVTMOD,#90H ;写控制字,T1工作方式1MOVTH1,#0H ;设定初始值00HMOVTL1,#0HLL0:JBP3.3,LL0 ;等待输入变为高电平SETBTR1 ;启动T1LL1:JNBP3.3,LL1 ;等待上升沿,以
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年租房提前解约正式协议模板
- 2024常年物资采购协议范本
- 2024年舞台搭建项目专用协议协议
- 2024家庭水电安装项目协议范本
- 2024年化建筑砂浆采购协议范本
- 2024年活鸡买卖双方权益保障协议
- 2024建设项目用电合作协议
- 2024年学生违纪行为处理协议
- 2024水电项目专用材料采购协议范本
- 2024年设备采购协议模板2
- 江西省萍乡市2024-2025学年高二上学期期中考试地理试题
- 2023年贵州黔东南州州直机关遴选公务员考试真题
- 4S店展厅改造装修合同
- 送货简易合同范本(2篇)
- 全国职业院校技能大赛赛项规程(高职)智能财税
- 七年级上册音乐教案 人音版
- 某小区住宅楼工程施工组织设计方案
- 3-4单元测试-2024-2025学年统编版语文六年级上册
- 北师版数学八年级上册 5.8三元一次方程组课件
- 2025届湖北省武汉市新洲一中阳逻校区高二上数学期末学业水平测试模拟试题含解析
- 眼镜验光员(高级)技能鉴定考试题及答案
评论
0/150
提交评论