打印

PIC16F877A TIMER1定时操作

[复制链接]
546|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
monitoring|  楼主 | 2020-3-7 11:43 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
/**********************
Title:PIC16F877A TIMER1定时操作
Author:hnrain
Date:2010-12-28
使用前置分频器
T1CKPS1  T1CKPS1   
   0        0        1  分频  TMR1时钟为晶振时钟/(4*1)
   0        1        2  分频  TMR1时钟为晶振时钟/(4*2)
   1        0        4  分频  TMR1时钟为晶振时钟/(4*4)
   1        1        8  分频  TMR1时钟为晶振时钟/(4*8)
   TMR1是16位宽度的TMR1由2个8位的可读写的寄存器TMR1H和TMR1L组成。
TMR1有专门的启停控制位TMR1ON,通过软件可以任意启动或暂停TMR1计数功能。
T1CON:TIMER1 CONTROL REGISTER
bit7-6 unimplemented :Read as ‘0’
bit5-4 T1CKPS1:T1CKPS0:Timer1 input Clock Prescale Select bits
          11=1:8 prescale value
          10=1:4 prescale value
          01=1:2 prescale value
          00=1:1 prescale value
bit3   T1OSCEN:Timer1 Oscillator Enable Control bit
         1 = Oscillator is enable
         0 = Oscillator is shut-off
bit2 T1SYNC:Timer1 External Clock Input Synchronization Control bit
        when TMR1CS = 1
        1= Do not synchronize external clock input
        0= Synchronize external clock input
        when TMR1CS = 0
        This bit is ignored .Timer1 uses the internal clock when TMR1CS = 0.
bit1 TMR1CS:Timer1 Clock Source Select bit
       1 = External clock from pin RC0/T1OSO/T1CKI
       0 = Internal clock
bit0 TMR1ON:Timer1 on bit
     1 = enables timer1
     0 = stops timer1
***********************/

使用特权

评论回复
沙发
monitoring|  楼主 | 2020-3-7 11:44 | 只看该作者
#include <pic.h>
#include "../head/config.h"

__CONFIG(HS&WDTDIS&LVPDIS&PWRTEN);

void Delayms(uint16 dly);

使用特权

评论回复
板凳
monitoring|  楼主 | 2020-3-7 11:44 | 只看该作者
void main(void)
{
    T1CKPS1 = 1;
    T1CKPS0 = 1;
    TMR1CS = 0;
    TMR1L = (65536 - 37500)%256;
    TMR1H = (65536 - 37500)/256;
    GIE = 1;
    PEIE = 1;
    TMR1IE = 1;
    TMR1ON = 1;   
    PORTD = 0x00;
    TRISD = 0x00;
    while(1){}
}

使用特权

评论回复
地板
monitoring|  楼主 | 2020-3-7 11:45 | 只看该作者
void interrupt ISR(void)
{
    TMR1L = (65536 - 37500)%256;
    TMR1H = (65536 - 37500)/256;
    if(TMR1IF&&TMR1IE)
    {
        TMR1IF = 0;
        PORTD = ~PORTD;
    }   
}

使用特权

评论回复
5
monitoring|  楼主 | 2020-3-7 11:46 | 只看该作者
作者:Leo Chin
出处:http://www.cnblogs.com/hnrainll/
本博客**,大多系网络中收集,转载请注明出处
相关标签:嵌入式培训、嵌入式开发、嵌入式学习

使用特权

评论回复
6
xuanhuanzi| | 2020-3-9 14:39 | 只看该作者
啥都没解释。。

使用特权

评论回复
7
keaibukelian| | 2020-4-2 16:02 | 只看该作者
非常感谢楼主分享

使用特权

评论回复
8
labasi| | 2020-4-2 16:02 | 只看该作者
非常感谢楼主分享

使用特权

评论回复
9
paotangsan| | 2020-4-2 16:02 | 只看该作者
非常感谢楼主分享

使用特权

评论回复
10
renzheshengui| | 2020-4-2 16:03 | 只看该作者
非常感谢楼主分享

使用特权

评论回复
11
wakayi| | 2020-4-2 16:03 | 只看该作者
非常感谢楼主分享

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

14

主题

192

帖子

1

粉丝