/****备注:此程序最低值为00212lux,时序可能还有一些问题,有时候乱改的话还会出现一直是00212或者00000的情况,****/
/****且数据变化是不连续的00212,00425,00639,00852,01065等等****/
/****2016.10.18日补充:后来发现是BH1750_Write_Byte最后6句写的不对****/
/****2016.10.18日补充:通过修改BH1750_Write_Byte函数的最后6句,程序已经能够正常测试****/#include<reg51.h>
#include <intrins.h>
bit write=0;
sbit SDA=P2^0;
sbit SCL=P2^1;
typedef unsigned char BYTE;
BYTE BUF[8];
unsigned char num;
unsigned char a,b,sec,count;
unsigned char ge,shi,bai,qian,wan; //显示变量
int dis_data,dis_data1; //变量
void conversion(unsigned int temp_data) // 数据转换出 个,十,百,千,万
{
wan=temp_data/10000+0x30 ;
temp_data=temp_data%10000; //取余运算
qian=temp_data/1000+0x30 ;
temp_data=temp_data%1000; //取余运算
bai=temp_data/100+0x30 ;
temp_data=temp_data%100; //取余运算