【单片机】以输出方波为例的 定时器使用

实验要求:

利用Proteus软件画出电路图,单片机定时器/计数器以查询方式工作,在P1.0口产生周期为100us的连续方波,在P1.0口线上接上示波器观察波形。

前言:写这篇博客的意义在于,借助本实验可以复习定时器中断的使用以及了解proteus的一些新操作

代码实现:

定时器的使用:

1、TMOD寄存器的配置:

1)定时功能和计数功能的区别:

定时的时候触发源是时钟信 ,其周期固定,所以可以计算时间;计数时触发源是外部脉冲,无法保证周期固定,只能记录脉冲的个数。

2)使用TR0、TR1来启动定时器所示GATE = 0

3)使用定时功能所以C/T  = 0

4)使用16位定时器,所以M1 M0为01

注:只用定时器0,所以定时器1相关的直接定于0即可

 

2、THX TLX初始化配置

1)计算出初始值:

一个脉冲为1us,如我们要定100us就将初始值定位(65535)

2)分别配置给THX TLX,如代码所示

注:

(1)如果要记的时间T超过了65535us就需要找到一个t在65535um内且T是t的整数倍

(2)分配时的256是因为低八位一共能表示到256

 

3、ET0、ET1控制使能定时/计数器中断,当值为1时表示打开中断

 

4、EA控制总中断,当值为1时表示打开中断

 

5、TRX = 1表示启动定时器

 

中断的使用:

1、中断

 

主程序:

1、其中最主要的是while(1),main函数本身就是一个自循环函数,如果不加while(1)函数就一直在进行定时器初始化,所以无法进入中断

 

硬件实现:

电路图

 

示波器的使用:

1、放置示波器

2、如果示波器显示内容没有自动弹出来

 

 

 

 

 

 

 

 

 

 

 

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2020年4月18日
下一篇 2020年4月18日

相关推荐