pic16f1829 c语言,PIC16F1829 TIMER2初始化程序及应用
//#include "pic_timer246.h"
//timer2 預(yù)分頻值
#defineTIMER2_1DIV1(0<<0)
#defineTIMER2_1DIV4(1<<0)
#defineTIMER2_1DIV16(2<<0)
#defineTIMER2_1DIV64(3<<0)
//timer2 后分頻值
#defineTIMER2_2DIV1(0<<3)
#defineTIMER2_2DIV2(1<<3)
#defineTIMER2_2DIV3(2<<3)
#defineTIMER2_2DIV4(3<<3)
#defineTIMER2_2DIV5(4<<3)
#defineTIMER2_2DIV6(5<<3)
#defineTIMER2_2DIV7(6<<3)
#defineTIMER2_2DIV8(7<<3)
#defineTIMER2_2DIV9(8<<3)
#defineTIMER2_2DIV10(9<<3)
#defineTIMER2_2DIV11(10<<3)
#defineTIMER2_2DIV12(11<<3)
#defineTIMER2_2DIV13(12<<3)
#defineTIMER2_2DIV14(13<<3)
#defineTIMER2_2DIV15(14<<3)
#defineTIMER2_2DIV16(15<<3)
//-------
#defineTIMER2_IEN_ENBTMR2IE = 1 ;//允許T2中斷
#defineTIMER2_IEN_DISTMR2IE = 0 ;//禁止T2中斷
//*************************************
// 函數(shù)名稱(chēng):Init_Timer2
// 函數(shù)功能:定時(shí)器0初始化
// 入口參數(shù):定時(shí)器預(yù)分頻值 后分頻值 計(jì)數(shù)值
// 出口參數(shù):無(wú)
// T2/4/6的時(shí)鐘源為Fosc/4
//***************************************
void Init_Timer2(uint8 pscr1,uint8 pscr2,uint8 Tcon)
{
TMR2IF = 0 ;
TMR2IE = 0 ;
T2CON = pscr1 | pscr2|(1<<2) ;//開(kāi)啟定時(shí)器2工作
TMR2 = Tcon ;//計(jì)數(shù)值
PR2 = Tcon ; //比較值
}
//---應(yīng)用實(shí)例------
//TIMER2初始化程序
Init_Timer2(TIMER2_1DIV64,TIMER2_2DIV5,250);// 定時(shí)40U*250=10MS
TIMER2_IEN_ENB ;//使能T2中斷
//TIMER2_IEN_DIS ; //禁止T2中斷
總結(jié)
以上是生活随笔為你收集整理的pic16f1829 c语言,PIC16F1829 TIMER2初始化程序及应用的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 环境与作用域与闭包
- 下一篇: Tensorflow使用LSTM实现中文