/**************************************************************
HT66F002,SOP-8。
PIR 时间:200-350ms,
幅度:100mV
**************************************************************/
#include "main.h"
u16 pirAdcArray[25] _at_ 0x20;
volatile bit cdsStatus;
volatile bit pirDirect;
volatile bit pirStatus;
volatile bit pirTrigFlag;
volatile bit LowBatFlag;
volatile bit PowerOnFlag;
u16 ledOnCnt;
u16 setTime;
u16 pirSetAdc;
u16 pirVariate;
u08 Mode;
u08 pirTrigCnt;
u08 pirFalseCnt;
u08 cdsDayCnt;
u08 cdsNightCnt;
u08 BatAdcCnt0;
u08 BatAdcCnt1;
u08 TimeCnt;
u16 bufAdc;
u32 buf;
/*************************************************************
初始化程序
*************************************************************/
void Init(void)
{
u08 count;
OSCCON = 0B01110001;//WDT 32KHZ IRCF=111=16MHZ/2=8MHZ,0.125US/T
//Bit0=1,系统时钟为内部振荡器
//Bit0=0,时钟源由FOSC<2:0>决定即编译选项时选择
INTCON = 0; //暂禁止所有中断
TRISA = 0B01111111;//禁止AN端口输出。PA7可以做为输出
WPUA = 0B00000000;//禁止所有PA口上拉
PORTA = 0B00000000;//
TRISC = 0B11100111;//PC3.4输出反向控制使能。
WPUC = 0B00000000;//禁止所有PC口上拉
PORTC = 0B00000000;
WPD = 0B00000000;//禁止弱上拉
ANSEL = 0B11111100;//AN2.3.4.5.6.Vdd
OPTION = 0B00001000;//Bit4=1 WDT MODE,PS=000=1:1 WDT RATE
//Bit7(RAPU)=0 ENABLED PULL UP PA