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

📄 ib.h

📁 DALLAS可代替DS1994卡的DS1904卡基于AVR代码
💻 H
字号:
/*
*********************************************************************************************************
*Copyright(c)2005,广东必达保安系统有限公司电子开发部
*All rights rerserved
*
*文件名称:ib.h
*文件标识:
*摘    要:Dallas iB的IAR V3.20A 底层协议包
*
*当前版本:1.0
*作    者:钱少群
*完成日期:2006年06月20日
*
*取代版本:
*作    者:
*完成日期:
*
*********************************************************************************************************
*/




///////////////////////////////////////////////////
//		DS19XX 常量宏定义
///////////////////////////////////////////////////

#define	IBREADROM	0x33		//read rom command
#define	IBSKIPROM	0xCC		//skip rom command
#define	IBREADSUBKEY	0x66		//read subkey command
#define	IBWRITESUBKEY	0x99		//write subkey command
#define	IBREADMEMORY	0xF0		//read memory command
#define	IBWRITESCRATCHPAD 0x0F		//write scratchpad command
#define	IBREADSCRATCHPAD 0xAA		//read scratchpad command
#define	IBCOPYSCRATCHPAD 0x55		//copy scratchpad command


///////////////////////////////////////////////////
//		DS19XX 函数选择宏定义
///////////////////////////////////////////////////

#define	TMROM		1		//读 DS19XX ID

#define	TMRDS		0		//读 DS1991 subkey

#define	TMWRS		0		//写 DS1991 subkey

#define	TM1994		0		//读 DS1994 时钟

#define	TMRDP1904	1		//读 DS1904 时钟

#define TMWRP1904	1

#define	TMRDP		1		//读 DS1996 页

#define	TMWRP		1		//写 DS1996 页

#define	TMRD71		0		//读 DS1971 页

///////////////////////////////////////////////////
//		DS19XX 引脚宏定义
///////////////////////////////////////////////////

#define	TM		2		//DS19XX 数据线

#define	DDRTM		DDRD		//

#define	PORTTM		PORTD		//

#define	PINTM		PIND		//



///////////////////////////////////////////////////
//		IB函数声明
///////////////////////////////////////////////////

#if	TMROM
unsigned char Tm_Rom(unsigned char *idBuf);	//读 DS19XX ID
#endif

#if	TMRDS
unsigned char Tm_Rds(unsigned char adr, 
			unsigned char *idBuf, 
			unsigned char *passwordBuf, 
			unsigned char *dataBuf, 
			unsigned char n);	//读 DS1991 subkey
#endif

#if	TMWRS
unsigned char Tm_Wrs(unsigned char adr, 
			unsigned char *idBuf, 
			unsigned char *passwordBuf, 
			unsigned char *dataBuf, 
			unsigned char n);	//写 DS1991 subkey
#endif

#if	TM1994
unsigned char Tm_1994(unsigned char *timeBuf);	//读 DS1994 时钟
#endif

#if	TMWRP1904
unsigned char Tm_Wrp1904(unsigned char *dataBuf);
#endif

#if	TMRDP1904
unsigned char Tm_Rdp1904(unsigned char *dataBuf);//读 DS1904 时钟
#endif

#if	TMRDP
unsigned char Tm_Rdp(unsigned char adrHigh, 
			unsigned char adrLow, 
			unsigned char *dataBuf, 
			unsigned char n);	//读 DS1996 页
#endif

#if	TMWRP
unsigned char Tm_Wrp(unsigned char adrHigh, 
			unsigned char adrLow, 
			unsigned char *dataBuf, 
			unsigned char n);	//写 DS1996 页
#endif

#if	TMRD71
unsigned char Tm_Rd71(unsigned char adr, 
			unsigned char *dataBuf, 
			unsigned char n);	//读 DS1971 页
#endif


///////////////////////////////////////////////////
// 		DS19XX 时序操作
///////////////////////////////////////////////////


unsigned char Tm_Rst(void);		//DS19XX 复位时序
void Tm_Txd(unsigned char valTx);	//DS19XX 发送字节时序
unsigned char Tm_Rxd(void);		//DS19XX 接收字节时序

unsigned char Tm_Wdrst(void);	// DS19XX 看门狗复位时序

⌨️ 快捷键说明

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