- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
单片机实验报告模三
实验报告
1. 实验名称
定时器/计数器编程及调试实验
2. 实验目的
学习Keil uVision4环境下程序的编写、编译、排错和调试方法。
学习单步、断点、自动跟踪/单步、全速执行等各种执行方法。
学习汇编语言的编程方法。
学习单片机内部定时器/计数器的使用和编程方法。
3.实验内容
4.1 用单片机定时器1做定时中断(定时器工作在方式1),控制发光二级管从左到右依次点亮,再从右到左依次熄灭,时间间隔为0.5s,如此循环。
4.2 用数码管模拟电子时钟,数码管从00开始,每隔1s加1,加到59再从00开始循环。
3.1 设置定时常数
定时器/计数器的脉冲周期为振荡频率的1/12。本实验中外部晶振为12MHz,假设现要实现0.5s的延时,要在定时器1中设置一个时间常数,使其每隔1/128(=7.8125ms)CPU响应中断后将R3中计数值减一,令R3=64,即可实现0.5s延时。用R0作为LED灯左移右移的标志位。
时间常数可按下述方法确定:
机器周期=12/晶振频率=12/(12)us
设计数初值为X,则65536-1/128/12/12M,可求得X=57724(EH)TH1=E31H,TL1=7CH。
4. 实验步骤或程序
4.1 设置定时常数
定时器/计数器的脉冲周期为振荡频率的1/12。本实验中外部晶振为12MHz,假设现要实现0.5s的延时,要在定时器1中设置一个时间常数,使其每隔1/128(=7.8125ms)CPU响应中断后将R3中计数值减一,令R3=64,即可实现0.5s延时。用R0作为LED灯左移右移的标志位。
时间常数可按下述方法确定:
机器周期=12/晶振频率=12/(12)us
设计数初值为X,则65536-1/128/12/12M,可求得X=57724(EH)TH1=E31H,TL1=7CH。
4.2 定时器/计数器初始化
1) 根据定时时间要求或计数要求计算计数器初值;
2) 将工作方式控制字写入TMOD寄存器;
3) 将计数值写入THX和TLX寄存器;
4) 启动定时器/计数器,即将TRX置位。
4.3 仿真设置步骤
设置STC-ISP,将单片机与其连接。
在Keil上新建工程,并设置对应STC单片机的选项
右键单击Target,设置Debug选项。
添加并编译所编辑程序
点击仿真按钮进入仿真界面
单CPU方案仿真器使用注意事项:
1、用户不可访问仿真系统区的0DC00-0F3FFH区域的6K代码空间
2、用户不能修改0400H-06FFH区的768字节的XDATA
3、用户不能向P3.0口和P3.1口写数据
4、用户不能使用与P3.0和P3.1相关的中断和功能
(包括INT4中断、定时器2的时钟输出、定时器2的外部计数)
5、串口1可以切换到P3.6/P3.7或者P1.6/P1.7进行使用
6、若仿真源代码为汇编程序,则第一条语句必须是长跳转语句,
编写程序时起始地址设置为0100H。
ORG 0000H
LJMP START
ORG 0100H.
START:
编写程序时起始地址设置为0100H。
参考程序
ORG 0000H MOV R1,#0
LJMP START LA1: MOV R3,#64
ORG 001BH SJMP BACK
AJMP TINT BACK: MOV TH1,#0E1H
ORG 0100H MOV TL1,#07CH
START: MOV R3,#64 RETI
MOV R1,#0 END
MOV TMOD,#10H
MOV TH1,#0E1H
MOV TL1,#07CH
MOV A,#0F0H
SETB TR1
SETB EA
SETB ET1
SJMP $
TINT: DJNZ R3,BACK
CJNE R1,#1,NEXT
SJMP LAST
NEXT: RL A
MOV P1,A
CJNE A,#0FH,NE1
MOV R1,#1
NE1: MOV R3,#64
SJ
原创力文档


文档评论(0)