PIC单片机的定时器/计数器模块的应用

11-20| http://www.dianzi6.com | 单片机学习|人气:503

PIC单片机的定时器/计数器模块的应用

  PIC16F87X单片机内部配置了3个定时器/计数器,分别记为TMR0、TMR1、TMR2。这3个定时器/计数器模块不仅在电路结构上不相同,而且其在设计的初衷和使用上也各有不同。
 
  · 定时器/计数器TMR0。
 
  定时器/计数器TMR0是3个同类模块中最常用的器件,与定时器/计数器TMR0相关的寄存器共有4个,分别为累加计数寄存器TMR0、选项寄存器OPTION REG、中断控制寄存器INTCON和端口RA方向寄存器TRISA。
 
  · 定时器/计数器TMR1。
 
  定时器/计数器TMR1是一个由两个8位可读写的寄存器(TMR01H和TMRIL)组成的16位定时器/计数器,它带有一个3位的可编程预分频器和一个内置的低功耗低频时基振荡器。

  · 定时器/计数器TMR2。
 
  定时器/计数器TMR2是一个8位定时器,其中还包括了一个可编程预分频器和一个后分频器。
 
  1.  设计思路
 
  利用TIMER0定时米实现秒表的功能.为使该功能显得直观,该模块还扩充了键盘扫描和显示功能,
 
  2. 程序设计
 
  该程序包含TMR0初始化子程序、spi显示初始化了程序、系统其他部分初始化子程序、SPI传输数据子程序、显示子程序、键扫描子程序及主函数。

  (1)首先包括必要电动偷文件及程序中用到的全局变量。

  (2)TMR0初始化子程序,使TMR0工作于定时器方式且不分频。

  (3)SPI初始化程序,初始化SPI模块。

  (4)设置于键盘有关的I/O端口的输入输出方式及键盘扫描的初始条件。

  (5)SPI传输数据子程序,在监测到发送成功后的清除发送标志。

  (6)通过SPI发送显示数据,在LED上对数据进行显示,显示的数据在程序开始定义的显示段码表中进行调用。为使显示美观,连续发送了4个DARK,最后给锁存信号,代表显示任务完成。

  (7)软件延时自程序,空跑3553个系统周期。

  (8)通过行列扫描来判断到底是哪个按键按下。

  (9)该子程序主要功能是键盘的去抖动。

  (10)该子程序对系统一些变量进行初始化。

  (11)定时器中断服务程序。每次进入该子程序,令中断计数器加1,当中断次说达到40后,对S0、S1、S2、S3进行操作。

  (12)主函数为完成系统的功能按照一定的逻辑调用各个子函数。

  欢迎转载,信息来源www.dianzi6.com


如果觉得 PIC单片机的定时器/计数器模块的应用这篇文章不错,可以推荐给朋友分享哦。
本文Tags:单片机开发,单片机原理,单片机教程,单片机学习,
此页提供PIC单片机的定时器/计数器模块的应用单片机开发,单片机原理,单片机教程, 单片机学习参考。本站还有更多的单片机学习相关资料分享。
Copyright© www.dianzi6.com Inc. All rights reserved 。 1 2 3 4 5 6 7 8