久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 78|回復: 2
收起左側

51單片機控VL53L0X激光測距傳感器

[復制鏈接]
ID:1148059 發表于 2025-4-22 21:43 | 顯示全部樓層 |閱讀模式
這里是我從論壇里看到的主函數代碼,有什么方法可以讓測量的距離從50mm——1200mm變成測量0mm——1200mm
我修改了if(DeviceRangeStatusInternal3==11&&dist3>20&&dist3<1200)里的dist3>20改為dist3>0,測量還是不能從0開始,我有點不明白,希望大佬指點一下

#include "REG51.h"
#include "oled.h"
#include "bmp.h"
#include "intrins.h"
#include "VL53L0X.h"
#include "i2c.h"

#define uchar unsigned char
#define uint unsigned int

uchar gbuf3[16];
uint acnt3;
uint scnt3;
uint dist3;
uchar DeviceRangeStatusInternal3;


sbit K=P1^0;
int zx=0;
int op;
void Delay1ms()                //@11.0592MHz
{
    unsigned char i, j;

    _nop_();
    i = 11;
    j = 190;
    do
    {
        while (--j);
    } while (--i);
}
void delay_ms(unsigned int time)
{
    unsigned char
    i;
    for(i=1; i<=time; i++)
        Delay1ms();
}






void date3()
{
        uchar val = 0;        
        uchar vall;
        int cnt = 0;
                        vl53l0x_send3(VL53L0X_REG_SYSRANGE_START, 0x01);
                while (cnt < 100)
                {
                        // 1 second waiting time max
      delay_ms(10);
      val = vl53l0x_read3(VL53L0X_REG_RESULT_RANGE_STATUS);
      if (val & 0x01) break;
      cnt++;
     }
                 gbuf3[0]=vl53l0x_read3(0x14);
                 gbuf3[7]=vl53l0x_read3(0x14+7);
                 gbuf3[6]=vl53l0x_read3(0x14+6);
                 gbuf3[9]=vl53l0x_read3(0x14+9);
                 gbuf3[8]=vl53l0x_read3(0x14+8);
                 gbuf3[11]=vl53l0x_read3(0x14+11);
                 gbuf3[10]=vl53l0x_read3(0x14+10);
     acnt3 = makeuint163(gbuf3[7], gbuf3[6]);
     scnt3 = makeuint163(gbuf3[9], gbuf3[8]);
     dist3 = makeuint163(gbuf3[11], gbuf3[10]);
                 DeviceRangeStatusInternal3 = ((gbuf3[0] & 0x78) >> 3);
                         if(DeviceRangeStatusInternal3==11&&dist3>0&&dist3<1200)
                        {
                        OLED_ShowNum(30, 6, dist3, 5, 16);
                        }
}




int main(void)
{        
         
                OLED_Init();                                 
                 OLED_Clear();
         
                 //                OLED_ShowCHinese(30,0,1);
                //        OLED_ShowCHinese(48,0,1);
         K=0;
         
         
                while(1)
                {               
                                       
                                        if(K == 1)
                {
                zx++;
                delay_ms(10);
                        while(K == 1){
                        delay_ms(10);                                
                                 date3();
                                op=dist3;
                OLED_ShowNum(90, 0, op, 4, 16);
                }
                }
               
                }         
        
}





回復

使用道具 舉報

ID:648281 發表于 2025-4-23 08:12 | 顯示全部樓層
VL53L0X測距存在盲區,不能從 0 開始
回復

使用道具 舉報

ID:1148059 發表于 2025-4-23 19:03 | 顯示全部樓層
51hei**1140 發表于 2025-4-23 08:12
VL53L0X測距存在盲區,不能從 0 開始

那盲區有什么方法可以在小1-2cm左右嗎嗎,因為這個測量只能從5cm開始
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 日韩av在线中文字幕 | 久久看精品 | xnxx 日本免费 | 成人精品视频 | 日韩欧美三级电影 | 久久精品一区 | 亚洲顶级毛片 | 免费h视频 | 国产黄色免费网站 | 亚洲麻豆 | 一本大道久久a久久精二百 国产成人免费在线 | 精品免费在线 | 国产一级片在线观看视频 | 亚洲欧美在线一区 | 成人福利在线 | 亚洲一二三区精品 | 日韩字幕一区 | 免费激情网站 | 91国内外精品自在线播放 | 日韩1区 | 欧美日韩综合 | 中文字幕日韩在线观看 | 成人性视频免费网站 | 日韩国产一区二区三区 | 蜜桃视频在线观看www社区 | 亚洲女优在线播放 | 男人的天堂在线视频 | 国产一区二区三区在线 | 久久国色 | 一区二区三区欧美 | 国产区在线免费观看 | 狠狠艹 | 日韩激情在线 | 美女国产 | 日日日干干干 | 国产www成人 | 亚洲天堂中文字幕 | 久99久视频 | 欧美日韩国产欧美 | 欧美精品综合 | 久久久久久国产精品 |