1、 实验目的
了解单片机定时器中断原理
学会单片机定时器中断和蜂鸣器结合的用法;
2、 实验设备
装有sdcc交叉编译环境,Python烧写工具,装有Linux的系统;
51单片机开发板 1 个,USB 数据线 1 根,跳线帽 1 个
3、 实验内容
了解单片机定时器原理说明
编写程序实现单片机定时器中断;
烧写单片机定时器和蜂鸣器结合程序。
4、 实验原理
关于内部定时/计数器的编程主要是定时常数的设置和有关控制寄存器的设置。内部定时/计数器在单片机中主要有定时器和计数器两个功能。本实验用的是定时器。内部定时/计数器用作定时器时,是对机器周期计数。每个机器周期的长度是 12 个振荡器周期。因为实验系统的晶振是 11.0592MHz,所以定时常数的设置可按以下方法计算:
机器周期=12÷11.0592MHz=1.08507µs
(65536-定时常数)*1.08507µs =50ms(50ms 中断一次)
定时常数=4C00H。
定时器的有关的寄存器有工作方式寄存器 TMOD 和控制寄存器 TCON。TMOD 用于设置定时器/计数器的工作方式 0~3,并确定用于定时还是用于计数。 TCON 主要功能是为定时器在溢出时设定标志位,并控制定时器的运行或停止等。在例程的中断服务程序中,因为中断定时常数的设置对中断程序的运行起到关键作用,置数前先关定时器,置数完再打定时器。 **蜂鸣器模拟枪声实质就是利用定时器产生不同频率的值来导通蜂鸣器产生不同的声音。通过改变定时器初值,来设置中断时间的长短,改变蜂鸣器发声频率,从而改变声音。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
全部0条评论
快来发表一下你的评论吧 !