• 大小: 3KB
    文件类型: .c
    金币: 1
    下载: 0 次
    发布日期: 2021-06-03
  • 语言: 其他
  • 标签: TSL2561  

资源简介

TSL2561光强传感器是采用I2C的通讯方式,可利用单片机的IO口模拟 SDA,SCL读出内部寄存器的光强数据。这种数字芯片可在工农业生产中 得到广泛的应用。

资源截图

代码片段和文件信息

#include
//TSL2561地址
#define uchar unsigned char
#define uint unsigned int
//设备读写地址
#define SLAVE_ADDR_WR 0x72
#define SLAVE_ADDR_RD 0x73
//命令控制寄存器
#define CONTROL   0x80    //控制寄存器
#define TIMING    0x81   //时间寄存器

#define DATA0LOW   0x8C   //通道0低字节寄存器
#define DATA0HIGH  0x8D   //通道0高字节寄存器
#define DATA1LOW   0x8E   //通道1低字节寄存器
#define DATA1HIGH  0x8F   //通道1高字节寄存器

uchar DataLow0DataHigh0DataLow1DataHigh1commadChannel0Channel1temp;
sbit sda = P2^0;
sbit scl = P2^1;
void delay()
{;;;}
void delay1ms(uchar x)
{
uchar ab;
for(a=x;a>0;a--)
for(b=100;b>0;b--);
}
void start()
{
sda=1;
delay();
scl=1;
delay();
sda=0;
delay();
}
void stop()
{
sda=0;
delay();
scl=1;
delay();
sda=1;
delay();
}
void respons()
{
uchar i;
scl=1;
delay();
while((sda==1)&&(i<250))
i++;
scl=0;
delay();
}
void write_byte(unsigned char date)
{
uchar i;
for(i=0;i<8;i++)
{
scl=0;
date<<=1;
sda=CY;
delay();
scl=1;
delay();
}
scl=0;
delay();
sda=1; //释放资源
delay();
}
uchar read_byte()
{
uchar ik;
scl=0;
delay();
sda=1; //释放资源
delay();
for(i=0;i<8;i++)
{
scl=1;
delay();
k=(k<<1)|sda;
scl=0;
delay();
}
return k;
}
void TSL2561_Write(uchar command

评论

共有 条评论

相关资源