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

📄 93c46.h

📁 用picc编写的93c46读写程序
💻 H
字号:

//===== Must be defined by user =====

	#define		DI			RC5
	#define		DO			RC4
	#define		CLK			RC3
	#define		CS			RC2
	
	#define		TRIS_DI		TRISC5
	#define		TRIS_DO		TRISC4
	#define		TRIS_CLK	TRISC3
	#define		TRIS_CS		TRISC2

//===================================

extern void WriteData(unsigned char Addr,unsigned char Data)
{
	unsigned char step=0;
	
	TRIS_DI=0;TRIS_DO=1;TRIS_CLK=0;TRIS_CS=0;
	
	CS=1;

//========= Enable Write ===========
	
	DI=1;CLK=0;CLK=1;
	DI=0;CLK=0;CLK=1;
	DI=0;CLK=0;CLK=1;
	
	for(step=0;step<7;step++){DI=1;CLK=0;CLK=1;}
	
	CS=0;CS=1;

//==================================

	DI=1;CLK=0;CLK=1;
	DI=0;CLK=0;CLK=1;
	DI=1;CLK=0;CLK=1;
	
	for(step=0;step<7;step++)
	{
		DI=(Addr>>(6-step));
		CLK=0;CLK=1;
	}
	
	for(step=0;step<8;step++)
	{
		DI=(Data>>(7-step));
		CLK=0;CLK=1;
	}
	
	CS=0;CS=1;
	
	while(!DO);
	
//========= Disable Write ===========
	
	DI=1;CLK=0;CLK=1;
	DI=0;CLK=0;CLK=1;
	DI=0;CLK=0;CLK=1;
	
	for(step=0;step<7;step++){DI=0;CLK=0;CLK=1;}
	
	CS=0;CS=1;

//==================================		
	
	return;
}

extern unsigned char ReadData(unsigned char Addr)
{
	unsigned char step=0,Data=0;
	
	TRIS_DI=0;TRIS_DO=1;TRIS_CLK=0;TRIS_CS=0;

	CS=1;
	
	DI=1;CLK=0;CLK=1;
	DI=1;CLK=0;CLK=1;
	DI=0;CLK=0;CLK=1;

	for(step=0;step<7;step++)
	{
		DI=(Addr>>(6-step));
		CLK=0;CLK=1;
	}
	
	for(step=0;step<8;step++)
	{
		CLK=0;CLK=1;
		Data=((Data<<1)|DO);
	}
	
	CS=0;CS=1;
	
	return Data;
}

/*
extern void ClearAll(void)
{
	unsigned char step=0;
	
	TRIS_DI=0;TRIS_DO=1;TRIS_CLK=0;TRIS_CS=0;
	
	CS=1;

//========= Enable Write ===========
	
	DI=1;CLK=0;CLK=1;
	DI=0;CLK=0;CLK=1;
	DI=0;CLK=0;CLK=1;
	
	for(step=0;step<7;step++){DI=1;CLK=0;CLK=1;}
	
	CS=0;CS=1;

//==================================

	DI=1;CLK=0;CLK=1;
	DI=0;CLK=0;CLK=1;
	DI=0;CLK=0;CLK=1;
	
	DI=0;CLK=0;CLK=1;	
	for(step=0;step<6;step++){DI=1;CLK=0;CLK=1;}
		
	CS=0;CS=1;	

	while(!DO);
	
//========= Disable Write ===========
	
	DI=1;CLK=0;CLK=1;
	DI=0;CLK=0;CLK=1;
	DI=0;CLK=0;CLK=1;
	
	for(step=0;step<7;step++){DI=0;CLK=0;CLK=1;}
	
	CS=0;CS=1;

//==================================		
	
	return;
}
*/

extern void ClearData(unsigned char Addr)
{
	unsigned char step=0;
	
	TRIS_DI=0;TRIS_DO=1;TRIS_CLK=0;TRIS_CS=0;
	
	CS=1;

//========= Enable Write ===========
	
	DI=1;CLK=0;CLK=1;
	DI=0;CLK=0;CLK=1;
	DI=0;CLK=0;CLK=1;
	
	for(step=0;step<7;step++){DI=1;CLK=0;CLK=1;}
	
	CS=0;CS=1;

//==================================

	DI=1;CLK=0;CLK=1;
	DI=1;CLK=0;CLK=1;
	DI=1;CLK=0;CLK=1;
	
	for(step=0;step<7;step++)
	{
		DI=(Addr>>(6-step));
		CLK=0;CLK=1;
	}
		
	CS=0;CS=1;	

	while(!DO);
	
//========= Disable Write ===========
	
	DI=1;CLK=0;CLK=1;
	DI=0;CLK=0;CLK=1;
	DI=0;CLK=0;CLK=1;
	
	for(step=0;step<7;step++){DI=0;CLK=0;CLK=1;}
	
	CS=0;CS=1;

//==================================		
	
	return;
}

/*
extern void WriteAll(unsigned char Data)
{
	unsigned char step=0;
	
	TRIS_DI=0;TRIS_DO=1;TRIS_CLK=0;TRIS_CS=0;
	
	CS=1;

//========= Enable Write ===========
	
	DI=1;CLK=0;CLK=1;
	DI=0;CLK=0;CLK=1;
	DI=0;CLK=0;CLK=1;
	
	for(step=0;step<7;step++){DI=1;CLK=0;CLK=1;}
	
	CS=0;CS=1;

//==================================

	DI=1;CLK=0;CLK=1;
	DI=0;CLK=0;CLK=1;
	DI=0;CLK=0;CLK=1;
	
	DI=1;CLK=0;CLK=1;	
	for(step=0;step<6;step++){DI=0;CLK=0;CLK=1;}
	
	for(step=0;step<8;step++)
	{
		DI=(Data>>(7-step));
		CLK=0;CLK=1;
	}
	
	CS=0;CS=1;
	
	while(!DO);
	
//========= Disable Write ===========
	
	DI=1;CLK=0;CLK=1;
	DI=0;CLK=0;CLK=1;
	DI=0;CLK=0;CLK=1;
	
	for(step=0;step<7;step++){DI=0;CLK=0;CLK=1;}
	
	CS=0;CS=1;

//==================================		
	
	return;
}
*/

⌨️ 快捷键说明

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