分享!模拟IIC,读取BH1750光强传感器!

2019-07-21 07:26发布

纠结了两天,终于弄好也,一开始一直想着移植别人现成的程序,可是网上资料很少,找了后移植还出了很多问题,后来狠下心,自己看着手册弄了,结果自己写比移植还快,还把IIC复习了一遍,还是自己动手好啊!!! 用的有原子哥的myiic.h,工程太大,直接上文件吧: 这是main中需要的: extern float result_lx;
void TaskBH1750(void *pdata)
{
 Init_BH1750();
 while(1)
 {
  Start_BH1750();  //power on   delay_ms(180);              //延时180ms
  Read_BH1750();     //连续读出数据,存储在BUF中
  Convert_BH1750(); //转换结果至result_lx   OSTimeDlyHMSM(0,0,0,500);
 } 
 GUI_DispDecAt(result_lx,0,60,5);
  GUI_DispStringAt("lx",50,60);
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
50条回答
爱博不专
2019-07-25 16:23
回复【32楼】zhang164534:
---------------------------------
程序是我自己验证后发的,理论上应该是通用的,有可能是用的模块不同吧,有的模块设计的兼容性不太好少个上拉电阻什么就会出现问题,以前我用过一个蓝牙模块就是这样。建议你在IIC中增加延时试试,具体问题还是自己解决。或者你看着datasheet自己试着写写驱动,有时候问来问去真不如靠自己。

一周热门 更多>