实验五:定时器,6103413018,刘玉奔.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验五:定时器,6103413018,刘玉奔

南昌大学实验报告 学生姓名: 刘玉奔 学 号: 6103413018专业班级: 生物医学工程141班 实验类型:□ 验证 □ 综合 □设计 □ 创新 实验日期: 2016.11.15实验成绩: 一、实验项目名称 内容:定时器 任务一:每按一下SW17或者SW18启动24秒倒计时定时器,结束后数码管闪烁,再按一下重新开始 任务二:测量方波信号频率:用定时器实现可变频率信号输出,然后用定时器1测量这个信号的频率 二、实验目的 1:以便熟练掌握C语言编程,2:以便熟练使用I/O口操作,3:以便熟练使用开发软件,4:以便熟练使用实验箱,5:以便熟练学会测试程序,6:以便熟练使用定时器T0,T1的定时计数功能,学会可编程时钟输出功能。 三、实验基本原理 1.工作方式寄存器TMOD B7 B6 B5 B4 B3 B2 B1 B0 GATE C/T非 M1 M0 GATE C/T非 M1 M0 说明:M1,M0为T0,T1工作方式选择位。 M1 M0 工作方式 功能 00 方式0 自动重装16初值 01 方式1 不可重装16初值 10 方式2 自动重装8位初值 11 方式3 不做要求 说明: (1)C/T非:为0,定时模式;为1,计数模式 (2)GATE:一般为0,软件控制TR0或TR1置一即可启动定时/计数功能 2.定时/计数器控制寄存器TCON B7 B6 B5 B4 B3 B2 B1 B0 TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 说明: (1)TF1:定时/计数器1溢出标志位。溢出时,自动置一,中断允许响应中断,自动清零;查询则由软件清零。 (2)TR1:定时/计数器1运行控制位。软件控制。 TF0,TR0同上。 3.辅助寄存器AUXR B7 B6 B5 B4 B3 B2 B1 B0 T0X12 T1X12 UART_M0X6 T2R T2_C/T非 T2X12 EXTRAM S1ST2 (1)T0X12:用于设置定时/计数器0的定时计数脉冲分频系数。T0X12=0,12分频。 T0X12=1,无分频。 (2)T1X12, T2x12同上。 (3)T2R:定时/计数器2运行控制位。 4:工作方式 方式0:定时时间=(65536-T0定时器的初始值)*系统时钟周期*12^(1-T0X12) 方式1:同上。 方式2:定时时间=(256-定时器的初值)*12^(1-T0X12)。 5:可编程时钟输出的控制 INT_CLKO B7 B6 B5 B4 B3 B2 B1 B0 - EX4 EX3 EX2 - T2CLKO T1CLKO T0CLKO (1)T0CLKO:定时/计数器0时钟输出控制位。为1,P3.5口输出,为0:禁止输出 (2)T1CLKO:同上。为1:P3.4口输出,为0,不输出。 (3)T2CLKO:为1:P3.0输出,为0,不输出。 6:可编程时钟输出频率计算 可编程时钟输出频率为定时/计数器溢出率的二分频。 输出时钟频率CLKOUT=(1/2)T的溢出率。 四、主要仪器设备及耗材 开发软件: keil Uvision4,实验箱:STC高性能单片机实验箱 五、实验步骤 程序设计流程图如下: 频率计: 24秒倒计时: 解释:对于频率计,采用定时器T0控制定时时间,为频率计测定定时;T1采用计数器功能,在定时时间一定的情况下,测出频率。因为,最大计数值为65536,所以在计数溢出时,做相应调整可以扩大计数范围。 对于24秒倒计时,采用定时器T0定时时间,外部中断1开启定时器,外部中断0关闭开启起到暂停作用。通过,dat值的变化范围,可以进行倒计时显示,与闪屏显示的工作方式切换。 六、实验数据及处理结果 用keil编写的实验程序如下: 24秒倒计时: #includestc15.h #includeintrins.h #includegpio.h #include595hc.h signed char dat=24;//定义BCD计数单元 unsigned char cnt=0,T=0;//定义循环变量 /*T0初始化子函数*/ cnt++; if(cnt==20) { cnt=0; dat--; } } }while(dat=0);//开机显示初值24,倒计时结束跳出显示计时 TR0=0;//节约资源,关闭定时器 do { //init();//检测按键状态 display2();//亮24 display3();//灭 }while(dat0);//计时结束数码管闪烁 } } 任务一实验现象:(按下暂停键时显示

文档评论(0)

***** + 关注
文档贡献者

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

1亿VIP精品文档

相关文档