PIC16F87X单片机的定时器/计数器的应用

2020-01-16来源: elecfans关键字:PIC16F87X  单片机  定时器  计数器

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)首先包括必要电动偷文件及程序中用到的全局变量。

PIC16F87X单片机的定时器/计数器的应用

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

PIC16F87X单片机的定时器/计数器的应用

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

PIC16F87X单片机的定时器/计数器的应用

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

PIC16F87X单片机的定时器/计数器的应用

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

PIC16F87X单片机的定时器/计数器的应用

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

PIC16F87X单片机的定时器/计数器的应用

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

PIC16F87X单片机的定时器/计数器的应用

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

PIC16F87X单片机的定时器/计数器的应用

PIC16F87X单片机的定时器/计数器的应用

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

PIC16F87X单片机的定时器/计数器的应用

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

PIC16F87X单片机的定时器/计数器的应用

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

关键字:PIC16F87X  单片机  定时器  计数器 编辑:什么鱼 引用地址:http://news.eeworld.com.cn/mcu/ic485869.html 本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。

上一篇:基于PIC单片机从24C02中读取数据到数码管显示的设计
下一篇:基于PIC12C508 DTMF拔号程序编写分享

关注eeworld公众号 快捷获取更多信息
关注eeworld公众号
快捷获取更多信息
关注eeworld服务号 享受更多官方福利
关注eeworld服务号
享受更多官方福利

推荐阅读

PIC16F87X系列单片机引起内部复位的条件和原因分析
PIC16F87X系列单片机的复位功能设计得比较完善,引起单片机内部复位的条件和原因可以大致归纳成以下5种.1.上电复位每次单片机加电时,上电复位电路都要对电源电压VDD的上升过程进行检测,当VDD值上升到规定值1.6~1.8V时,就产生一个有效的复位信号,需经过72ms加1024个时钟周期的延时,才会使单片机复位。2.人工复位(单片机在执行程序期间)无论是单片机在按预先设定的正常顺序运行程序,还是出现单片机进入不可预知的某一个死循环,都必须认为单片机在执行程序。单片机在执行程序期间,只要在人工复位端MCLR加入一个低电平信号,就会令其复位。3.人工复位(单片机在睡眠期间)单片机处在睡眠状态之下(时钟停振,单片机停止执行
发表于 2019-12-27
PIC16F87X系列单片机引起内部复位的条件和原因分析
PIC16F877A单片机对24X24点点阵屏的驱动设计
最近终于有空更新了,花了几天时间,弄出个小东西,虽然有很多种实现方式在网上流传了,但我却从没有试过,乘有时间,也弄出了四种方式的显示,各位帮忙看看,哪里还有不好的地方,希不吝指教。一。原理及仿真图此种为从右往左显示。此中为从左往右显示此种为从下往上显示此种为从上往下显示原理图说明:1.本实例采用微芯PIC16F877A单片机,此单片机适合初学者2.点阵采用24X24点,左边为行线,采用U1-U3三个74LS373地址所存芯片,复用单片机RB端口。右边为列线,采用U4-U6三个74LS373地址所存芯片,复用单片机RD端口。3.单片机RC端口控制六片373的选通。4.显示原理:24列列线轮流拉为低电平时,行线输出行玛,通过一定延时
发表于 2019-12-25
PIC16F877A单片机对24X24点点阵屏的驱动设计
PIC16F87x单片机存储器特点及数据存储器使用规划
国微芯科技公司的PICmicro单片机和其他单片机相比,在硬件结构和指令系统中采用了很多独有的设计。PIC系列单片机硬件系统设计简洁,指令系统设计精练;采用哈佛总线结构,芯片内部数据总线和指令总线分离;选址方式简单。PIC16F87x系列单片机是PIC16系列子系列,是中间档次产品。PIC系列与其他单片机相比,让人印象最深的特点可能要属其内存的分页结构,有很多习惯了其他单片机编程的人认为PIC单片机的内存分页带来很多不便。本文介绍在PIC1687x系列单片机中,根据数据变量的访问特性安排其在数据存储器中的位置的方法及其中断编程,从一方面说明内存的规划对编程的影响。1 PIC16F87x单片机存储器特点PIC16F87x单片机采用
发表于 2019-12-14
PIC16F87x单片机存储器特点及数据存储器使用规划
基于使用PIC16F87X单片机ADC制作的照度计
单片机程序源码如下:#include <pic.h>//调用PIC16F87XA单片机的头文件__CONFIG(HS&WDTDIS&LVPDIS);#define U5A  RB0         #define U5B  RB1         #define U5C  RB2       unsigned char temp1;unsigned char temp2;const unsigned char LED[28]={0x3F
发表于 2019-10-24
PIC16F87x的数据存储器规划和中断编程分析
    国微芯科技公司的PICmicro单片机和其他单片机相比,在硬件结构和指令系统中采用了很多独有的设计。    PIC系列单片机硬件系统设计简洁,指令系统设计精练;采用哈佛总线结构,芯片内部数据总线和指令总线分离;选址方式简单。    PIC16F87x系列单片机是PIC16系列子系列,是中间档次产品。PIC系列与其他单片机相比,让人印象最深的特点可能要属其内存的分页结构,有很多习惯了其他单片机编程的人认为PIC单片机的内存分页带来很多不便。本文介绍在PIC1687x系列单片机中,根据数据变量的访问特性安排其在数据存储器中的位置的方法及其中断编程,从一方面说明内存
发表于 2018-04-02
基于单片机的DHT11温度湿度采集系统
DHT11温度湿度采集原理图:DHT11的单片机源程序:***************************************************************/#include <reg52.h>#define uint unsigned int #define uchar unsigned char#include <intrins.h>typedef bit BOOL  ; sbit io = P1^1 ;//(口线定义)sbit bee=P1^0;sbit rs = P2^5 ; sbit rw = P2^6 ;sbit ep = P2
发表于 2020-01-09
基于单片机的DHT11温度湿度采集系统
小广播
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2020 EEWORLD.com.cn, Inc. All rights reserved