PIC12系列 TIMER0定时器初始化设置
2016-07-26 14:57
295 查看
Timer0 模块是 8 位定时器 / 计数器,具有以下特性: • 8 位定时器 / 计数器寄存器 (TMR0) • 8 位预分频器 (与看门狗定时器共用) • 可编程内部或外部时钟源 • 可编程外部时钟边沿选择 • 溢出时产生中断
/************************************************************* @beep_; TIMER0定时器初始化:void timer0_init(void); 相关寄存器: TMR0:TIMER0模块寄存器 INTCON:中断寄存器 bit7:GIE 全局中断使能/禁止 bit5:T0IE TiMER0溢出中断使能/禁止 bit2:T0IF TiMER0溢出中断标志必须用软件清除 OPTION_REG: T0CS:时钟源选择 1:GP2引脚电平跳变 0:FOSC/4 T0SE:GP2时钟源边沿选择 PSA:预分频器分配 1:分给WDT 0:分给TIMER0模块 PS<2:0>预分频比选择位 value TIMER0 WDT 000 1:2 1:1 001 1:4 1:2 010 1:8 1:4 011 1:16 1:8 ... 2ms/tick: 系统时钟:FOSC=4MHZ TIMER0时间:1us,TIR0延时2us,8分频.溢出中断. tick=(0Xff-0X08)*8=2000us. *************************************************************/ void timer0_init(void) { GIE=0; //关闭全局中断 OPTION_REGbits.T0CS=0; OPTION_REGbits.PSA=0; OPTION_REGbits.PS=0x02; TMR0=C_Timer0;//C_Timer0=0x08; T0IF=0; //TiMER0溢出中断标志必须用软件清除 T0IE=1; //TiMER0溢出中断使能 GIE=1; //打开全局中断 }
相关文章推荐
- HDU 5724 Chess(SG函数 Nim博弈)
- javascript 抽奖列表随机排序算法
- 2016.7.26
- 删数-dp区间型动态规划
- 聊下并发和Tomcat线程数
- 某公司技术团队激励体系
- Qt的UI布局以及控件间隔(Spacing)边距(Margins)
- Cron定时任务应用到Thinkphp
- 线性时间排序之计数排序,基数排序和桶排序
- TotoiseSVN的基本使用方法
- jsp页面的构成
- unittest实现HTTP接口功能测试
- sort 函数和qsort的区别
- Android中 Intent 与 Intent-filter
- Windows 下配置 Nginx PHP
- spss
- Android 反编译
- Maven入门
- HDU5573 Binary Tree(构造)
- 做性能测试之前需要确定的某些