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

📄 sioc.#3

📁 epsondriver 驱动源代码
💻 #3
字号:
/**********************************************************************************************************
							Sincere Techonlogy
							 Shanghai.China
			(c) Copyright 2005,Sincere Technology,Shanghai China
							All Rights Reserved



File name         : sioc.c
Author            : Neil
Description       : Use P1.0-->SDATA
						P1.1-->SCLK
						P0.4-->SCS
						P1.5-->SCS61B
						P1.6-->SCS61G
						P1.7-->SCS61R
Target            : C8051F023
Data              : 2005-3
**********************************************************************************************************/


#define SIOC_C

#include "Include.h"


void _0707READY(void)                  //Ready for 0707
{
	SCS   =     0;
	SCS61B=     1;
	SCS61G=     1;
	SCS61R=     1;
}

void _R6100READY(void)                 //Ready for red 6100
{
	SCS   =     1;
	SCS61B=     1;
	SCS61G=     1;
	SCS61R=     0;
}

void _G6100READY(void)                 //Ready for green 6100
{
	SCS   =     1;
	SCS61B=     1;
	SCS61G=     0;
	SCS61R=     1;
}

void _B6100READY(void)                 //Ready for blue 6100
{
	SCS   =     1;
	SCS61B=     0;
	SCS61G=     1;
	SCS61R=     1;
}

void NONE_READY(void)                  //There is none ready
{
	SCS   =     1;
	SCS61B=     1;
	SCS61G=     1;
	SCS61R=     1;
}


/*********************************************************************************************************
----------------------------------------------------------------------------------------------------------
										void WRITE_0707(int addr,int dat)
										Author            : Neil
										Data              : 2005-3
----------------------------------------------------------------------------------------------------------
This routine write 0707 with 12 bits address and 12 bits data,first send date use LSB
		
*********************************************************************************************************/
void WRITE_0707(int addr,int dat)
{
	int i;
	for (i=0;i<12;i++)
	{
		SCLK=0;
		DELAY(1);
		if (addr & 0x800)
			SDATA=1;
		else 
			SDATA=0;
		SCLK=1;
		addr<<=1;
		DELAY(1);
	}
	for (i=0;i<12;i++)
	{
		SCLK=0;
		DELAY(1);
		if (dat & 0x1)
			SDATA=1;
		else 
			SDATA=0;
		SCLK=1;
		dat<<=1;
		DELAY(1);
	}
}





/*********************************************************************************************************
----------------------------------------------------------------------------------------------------------
										void WRITE_6100(int addr_dat)
										Author            : Neil
										Data              : 2005-3
----------------------------------------------------------------------------------------------------------
This routine write 6100 with 4 bits address and 8 bits data,first send address use MSB
		
*********************************************************************************************************/
void WRITE_6100(int addr_dat)
{
	int i;
	for (i=0;i<12;i++)
	{
		SCLK=0;
		DELAY(1);
		if (addr_dat & 800)
			SDATA=1;
		else 
			SDATA=0;
		SCLK=1;
		addr_dat<<=1;
		DELAY(1);
	}
}

#undef SIOC_C

⌨️ 快捷键说明

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