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

📄 7289a.c

📁 ZLG7289C语言驱动程序,好用!
💻 C
字号:
#include<reg52.h>
#define uchar unsigned char

sbit	CS=P1^0;
sbit	CLK=P1^1;
sbit	DIO=P1^2;
sbit	KEY=P1^3;

uchar	rebuf,sebuf;
bdata	uchar com_data;
sbit	mos_bit=com_data^7;
sbit	low_bit=com_data^0;

void	delay_50us()
{
	uchar i;
	for(i=0;i<6;i++){;}
}

void	delay_8us()
{
	uchar i;
	for(i=0;i<1;i++){;}
}

void	delay_50ms()
{
	uchar i,j;
	for(i=0;i<50;i++)
	for(j=0;j<125;j++){;}
}

void send(uchar sebuf)
{
	uchar i;
	com_data=sebuf;
	CLK=0;
	CS=0;
	delay_50us();
	for(i=0;i<8;i++)
	{
		delay_8us();
		DIO=mos_bit;
		CLK=1;
		delay_8us();
		com_data=com_data<<1;
		CLK=0;
	}
	DIO=0;
}
void receive()
{
	uchar i;
	CLK=1;
	delay_50us();
	for(i=0;i<8;i++)
	{
		com_data=com_data<<1;
		low_bit=DIO;
		CLK=1;
		delay_8us();
		CLK=0;
		delay_8us();
	}
	rebuf=com_data;
	DIO=1;
	CS=1;
}
void reset()
{
	KEY=1;
	DIO=1;
	delay_50ms();
	send(0xa4);
	CS=1;
}
main()
{
	reset();
	sebuf=0x84;
	send(0x83);
	delay_50us();
	send(sebuf);
	CS=1;
	while(1)
	{
    	while(KEY);
		send(0x15);
		delay_50us();
		receive();
		delay_50us();
		switch(rebuf)
		{
			case 0x00:{send(0xa3);CS=1;}break;
			case 0x01:{send(0xa2);CS=1;}break;
			case 0x0b:
			{
			send(0x88);
			delay_50us();
			send(0x00);CS=1;
			} break;
			case 0x03:
			{
			send(0x88);
			delay_50us();
			send(0xff);
			CS=1;
			} break;
			default: break;
		}
		while(!KEY);
		KEY=1;
		}
}

⌨️ 快捷键说明

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