您所在位置: 网站首页 / PIC单片机定时读数课件.ppt / 文档详情
PIC单片机定时读数课件.ppt 立即下载
2024-11-06
约4.2千字
约55页
0
342KB
举报 版权申诉
预览加载中,请您耐心等待几秒...

PIC单片机定时读数课件.ppt

PIC单片机定时读数课件.ppt

预览

免费试读已结束,剩余 50 页请下载文档后查看

10 金币

下载文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

第6章定时器/计数器由单片机内部时序脉冲触发
----定时

从单片机I/O(RA4—T0CKI)引脚上,检测外部输入的触发脉冲信号(规则或不规则)
----计数PIC16F877单片机配置3个定时器/计数器模块:三者的共同点:8.1定时器/计数器TMR08.1定时器/计数器TMR08.1定时器/计数器TMR08.1定时器/计数器TMR08.1定时器/计数器TMR08.1定时器/计数器TMR01、一个8位宽由时钟信号边沿触发(上升沿或下降沿)的循环累加计数寄存器;
2、TMR0本身也是一个在文件寄存器区(特殊功能寄存器),有特定的地址;寄存器的当前读数值可读、写;
3、具有一个软件可编程的8位预分频器;
4、既可工作于定时器模式,又可工作于计数器模式;
用内部触发信号,指令周期作为时钟信号源时(定时)
用外部触发信号,可定义触发上下沿(计数)
5、递增方式读数,读数器从0XFF跳变到0X00时,读数器溢出,在计数器溢出时,相应的溢出中断标志(T0IF)自动置
位,并可产生溢出中断。
6、8位定时/计数器:定时时间预分频器8.1.2TMR0模块相关的寄存器主要用于设置定时/计数器TMR0、前后分频器、外INT中断以及RB端口的弱上拉功能等各种控制位。(复位时所有位的状态为1)Bit2-Bit0/PS2-PS0:分频器分频比选择位Bit3/PSA:分频器分配位,主动参数。
0:分配给TMR0,作为TMR0的分频器;
1:分配给WDT,作为WDT的分频器。
Bit4/T0SE:TMR0用于计数器,计数脉冲信号边沿选择位,主动参数。
0:RA4/T0CKI引脚上的下降沿触发;
1:RA4/T0CKI引脚上的上升沿触发。
Bit5/T0CS:定时/计数器TMR0时钟源选择位,主动参数。可确定TMR0工作于定时方式还是计数方式。
0:由内部指令周期作为TMR0的触发信号,定时使用;
1:由外部引脚T0CKI上的时钟作为TMR0的触发信号,作计数使用。
Bit6/INTEDG:INT中断信号触发边沿选择位,主动参数。
0:RB0/INT引脚上的下降沿触发;
1:RB0/INT引脚上的上升沿触发。
Bit7/RBPU:B端口弱上拉使能位,主动参数。
0:RB0-RB7引脚弱上拉使能;
1:RB0-RB7引脚弱上拉禁止。主要用于中断控制方式的设置。PEIE:外围功能模块中断使能控制位。
0:禁止所有外围功能模块中断;
1:使能外围功能模块中断。

T0IE:TMR0中断使能控制位。
0:禁止TMR0中断;
1:使能TMR0中断。

RBIE:PORTB引脚状态变化中断使能控制位。
0:禁止PORTB状态变化中断;
1:使能PORTB状态变化中断。
T0IF:TMR0中断标志位。
0:TMR0没有溢出中断;
1:TMR0读数溢出发生中断,必须用软件将其清除。

INTF:RB0/INT引脚沿跳变中断标志位。
0:没有发生RB0/INT引脚中断;
1:RB0/INT引脚发生中断,必须用软件将其清除。

RBIF:PORTB引脚状态变化中断标志位。
0:PORTB没有发生状态变化中断;
1:PORTB引脚出现状态变化中断,必须用软件将其清除。
4、RA方向寄存器
(TRISA)4=1,T0CKI为输入方式。
8.1.3TMR0模块电路结构和工作原理1.8位计数寄存器TMR0
1)设置定时模式
T0CS=0定时时间:初值,频率,预分频器。
2)设置计数模式
T0CS=1计数T0SE=0,T0SE=1。

分频器
PS2、PS1、PS0分频比;
PSA=0,TMR0分频器;PSA=1,WDT分频器。
[例题8-1]计数灯程序设计。自动计数,RC与8位LED相联,间隔时间为一个固定时间0.5s.
这个例子曾用软件延时做过,本例将采用TMR0定时实现。
定时可以通过两种方式实现
不采用中断(查询方式)
采用定时中断

TMR0定时时间的计算公式:

t=P×(28–X)×TX=28–t/(TxP)

t:设定的定时时间—uS
P:分频器的分频比--2~256
取值为2、4、8、16、32、64、128、256。
X:TMR0的计数初值--0~255
T:指令周期—uS

定时器最短的定时时间:t=2x(256-255)x1uS=2uS
定时器最长的定时时间:t=256x(256-0)x1uS=65536uS
在使用TMR0做定时器时,可以用查询和中断的方法获得定时时间。
1、查询方法:
在将初值写入TMR0时,立即查询T0IF是否等于1,如果T0IF=1,表示时间已到,若T0IF=0,表示时间未到,继续等候。
2、中断方法:
设置中断服务子程序,每当TMR0溢出时,进入中断服务程序,得到一个准确的定时时间。

TMR0的定时程序举例:用TMR0产生10毫秒的
查看更多
单篇购买
VIP会员(1亿+VIP文档免费下)

扫码即表示接受《下载须知》

PIC单片机定时读数课件

文档大小:342KB

限时特价:扫码查看

• 请登录后再进行扫码购买
• 使用微信/支付宝扫码注册及付费下载,详阅 用户协议 隐私政策
• 如已在其他页面进行付款,请刷新当前页面重试
• 付费购买成功后,此文档可永久免费下载
全场最划算
12个月
199.0
¥360.0
限时特惠
3个月
69.9
¥90.0
新人专享
1个月
19.9
¥30.0
24个月
398.0
¥720.0
6个月会员
139.9
¥180.0

6亿VIP文档任选,共次下载特权。

已优惠

微信/支付宝扫码完成支付,可开具发票

VIP尽享专属权益

VIP文档免费下载

赠送VIP文档免费下载次数

阅读免打扰

去除文档详情页间广告

专属身份标识

尊贵的VIP专属身份标识

高级客服

一对一高级客服服务

多端互通

电脑端/手机端权益通用