if(dat4==m)
CH4_LED =0;
else
err_fld =1;
//*********************************************
//如果有一次不等将熄灭灯
if(err_fla==1)
CH1_LED =1;
if(err_flb==1)
CH2_LED =1;
if(err_flc==1)
CH3_LED =1;
VK3342,VK3344,VK3362,VK3366,VK3368 IIC2UART 驱动C语言代码
if(err_fld==1)
CH4_LED =1;
m=m+1;
if(m==255)
m=0;
}
}
/////////////////////////////////////////////////////////////////////////////////////////////////
//
// 51单片机 采用IIC 转UART VK33XX
// IIC.c
//
///////////////////////////////////////////////////////////////////////////////////////////////////
#include "stc51reg.h"
#include
extern void delay (unsigned int delaydata);
//************************************************************
void config()
{
WDT_CONTR = 0x00; // Watchdog Timer Control Register
}
//初始化单片机,
//***********************************************************
//***********************************************************
unsigned char send(unsigned char _data1,unsigned char _data2,unsigned char _data3)
{
unsigned char i;
clk=1; // start
delay(1);
sda=0;
delay(1);
clk=0;
delay(1);
i=0;
if(_data1&0x80)
{
VK3342,VK3344,VK3362,VK3366,VK3368 IIC2UART 驱动C语言代码
sda=1;
}
else sda=0;
delay(1);
clk=1;
delay(1);
clk=0;
delay(1);
if(_data1&0x40)
{
sda=1;
}
else sda=0;
delay(1);
clk=1;
delay(1);
clk=0;
delay(1);
if(_data1&0x20)
{
sda=1;
}
else sda=0;
delay(1);
clk=1;
delay(1);
clk=0;
delay(1);
if(_data1&0x10)
{
sda=1;
}
else sda=0;
delay(1);
clk=1;
delay(1);
VK3342,VK3344,VK3362,VK3366,VK3368 IIC2UART 驱动C语言代码
clk=0;
delay(1);
if(_data1&0x08)
{
sda=1;
}
else sda=0;
delay(1);
clk=1;
delay(1);
clk=0;
delay(1);
if(_data1&0x04)
{
sda=1;
}
else sda=0;
delay(1);
clk=1;
delay(1);
clk=0;
delay(1);
if(_data1&0x02)
{
sda=1;
}
else sda=0;
delay(1);
clk=1;
delay(1);
clk=0;
delay(1);
if(_data1&0x01)
sda=1;
else
sda=0;
delay(1);
VK3342,VK3344,VK3362,VK3366,VK3368 IIC2UART 驱动C语言代码
clk=1;
delay(1);
clk=0;
delay(1);
clk=1; //ack
delay(1);
clk=0;
delay(1);
if(_data2&0x80)
{
sda=1;
}
else sda=0;
delay(1);
clk=1;
delay(1);
clk=0;
delay(1);
if(_data2&0x40)
{
sda=1;
}
else sda=0;
delay(1);
clk=1;
delay(1);
clk=0;
delay(1);
if(_data2&0x20)
{
sda=1;
}
else sda=0;
delay(1);
clk=1;
delay(1);
VK3342,VK3344,VK3362,VK3366,VK3368 IIC2UART 驱动C语言代码
clk=0;
delay(1);
if(_data2&0x10)
{
sda=1;
}
else sda=0;
delay(1);
clk=1;
delay(1);
clk=0;
delay(1);
if(_data2&0x08)
{
sda=1;
}
else sda=0;
delay(1);
clk=1;
delay(1);
clk=0;
delay(1);
if(_data2&0x04)
{
sda=1;
}
else sda=0;
delay(1);
clk=1;
delay(1);
clk=0;
delay(1);
if(_data2&0x02)
{
sda=1;
}
else sda=0;
delay(1);
clk=1;
VK3342,VK3344,VK3362,VK3366,VK3368 IIC2UART 驱动C语言代码
delay(1);
clk=0;
delay(1);
if(_data2&0x01)
sda=1;
else sda=0;
delay(1);
clk=1;
delay(1);
clk=0;
delay(1);