打印

PIC16F690的定时器0程序

[复制链接]
2204|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
电子三极管|  楼主 | 2010-12-18 14:33 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
求PIC16F690的定时器0程序 万分感谢 我自己写了一个 不知道为什么就是不行 忘各位指教
/***定时器0实现定时功能***/
#include<pic.h>
__CONFIG(0x3FF2);
#define _XTAL_FREQ 20000000  // 20M晶振数值
#define  SW_Start  RB6 //LED灯
unsigned int Tmr0Count;
void timer0Int()
{
  TRISB6=1;
/****TMR0******/
  GIE =1;  //enable all interruput
  T0IE=1;//T0IE=1; //enable tmro interrut
  T0IF=0;//T0IF=1; //clear flag
  T0CS=0;
  PSA =0;
  PS2=0;
  PS1=1;
  PS0=0;
  TMR0=0x14;  //500us  
  Tmr0Count =0;  //clear countvalue;
}

void interrupt T_MR0(void)
{
if(T0IF)
  {
     T0IF=0;
  TMR0=0x14;  //500us 定时器0:只有8位寄存器255
     Tmr0Count++;
     if(Tmr0Count>=500)//1S这里的值根据你的晶振进行计算
    {
       Tmr0Count=0;
       SW_Start =~SW_Start;//灯
    }
  //break;
}
}

void main()
{
timer0Int();
while(1);
}
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:承接采集设备运行参数,如温度、速度、压力、浓度、流量、节拍、湿度、重量等。采用PIC 51 AVR等类单片机 59467837(杭州单片机开发技术交流QQ群)

116

主题

530

帖子

2

粉丝