⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 charger.h

📁 一个充电控制器的完整单片机程序
💻 H
字号:
//
//solar battery charge controller
//header file,data struct
//2003/3/23
//
#ifndef __CHARGER_H__
#define __CHARGER_H__

#ifndef NULL
#define NULL (void *)0L
#endif
//-----------------------------
//today working ,save to table of history
struct workdata
{
  unsigned char date[3]; //year:month:day
  unsigned int work[18];
  struct workdata *next;
  struct workdata *up;
};
typedef struct workdata daydata;
typedef daydata *link;
//
//-----------------------------
struct rate
{
 unsigned int volatage;//predefine datachange to volatage rate
 unsigned int temperature;//predefine tempurature rate
 unsigned int discharge;//predefine current rate
 unsigned int charge;
};
//
//---------------------------------------
//void dog(void);//Watch dog reset
#define  RESET_DOG P1_6=!P1_6;
//save data format  in ram  
//-------------------------------------------
//ram manage and data process
//-------------------------------------------
extern void getadin(void);
extern void account(void);
extern void save(void);
extern void control(void);
extern void init_system_work_point(void);
extern void init_rate(void);
//---------------------------------------------
//general funtion
//---------------------------------------------
extern void delay(unsigned int i);
//---------------------------------------------
//key board funtion,lcd display
//---------------------------------------------
//
extern void displayadin(void);
//
//-------------------------------------
//a/d funtion
//-------------------------------------
extern  unsigned int tlc1543(unsigned char port);//data read from (port)channel of tlc1543
//-------------------------------------
//com funtion
//-------------------------------------
//-------------------------------------
//12887 real_time,clock funtion
//-------------------------------------
#define P128870 XBYTE[0x2000] //second
#define P128871 XBYTE[0x2001] //second alarm
#define P128872 XBYTE[0x2002] //minutes
#define P128873 XBYTE[0x2003] //minutes alarm
#define P128874 XBYTE[0x2004] //hours
#define P128875 XBYTE[0x2005] //hours alarm
#define P128876 XBYTE[0x2006] //Day of the week
#define P128877 XBYTE[0x2007] //Day of the month
#define P128878 XBYTE[0x2008] //month
#define P128879 XBYTE[0x2009] //year
#define P12887a XBYTE[0x200A] //A register
#define P12887b XBYTE[0x200B] //B register
#define P12887c XBYTE[0x200C] //C register
#define P12887d XBYTE[0x200D] //D register

extern void setup12887(unsigned char *p);
extern void read12887(unsigned char *p);
extern void start12887(void);
//12887A real_time,clock funtion
//
//-----------------------------------------
//
//define global variable
//
//-----------------------------------------
//a/d data 
extern unsigned int xdata adin[10];
extern daydata xdata today;
extern unsigned int xdata sys[13];
extern struct rate xdata crate;
//
//----------------------------------------
//system timer flag
extern unsigned int bdata tlong,t50ms;
//
//-------------------------------------------------------------------------------
//display chinese table
extern code unsigned char *adinhz[11];
extern code unsigned char *hishz[18];
extern code unsigned char *sethz[12];
//-----------------------------------
//default system data table
extern code unsigned int stab[5][4];
extern code unsigned int dtab[4][7];
extern code unsigned char *unit[4]; 
extern code unsigned char uadin[9];
extern code unsigned char uhis[18];
extern code unsigned char uset[11];

#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -