找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 3172|回复: 2
打印 上一主题 下一主题
收起左侧

VL53L0X程序

[复制链接]
跳转到指定楼层
楼主
ID:237696 发表于 2017-10-7 20:38 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
#include "sys.h"
#include "delay.h"
#include "usart.h"
#include "myiic.h"
#include "VL53L0.h"



//串口1发送一个字符
void usart1_send_char(u8 c[10],u8 len)
{
                        u8 t;
                //        printf("\r\n您发送的消息为:\r\n");
                        for(t=0;t<len;t++)
                        {
                                USART_SendData(USART1, c[t]);         //向串口1发送数据
                                while(USART_GetFlagStatus(USART1,USART_FLAG_TC)!=SET);//等待发送结束
                        }
        //                printf("\r\n\r\n");//插入换行  
}


int main(void)
{

        u8 val = 0;
  u8 gbuf[16];
        u8 DeviceRangeStatusInternal;

        uint32_t cnt = 0;
        uint16_t count[3];

        NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//设置系统中断优先级分组2
        delay_init(168);    //初始化延时函数
        uart_init(115200);        //初始化串口波特率为115200
  IIC_Init();


        while(1)
        {
                 VL53L0X_Write_Byte(VL53L0X_REG_SYSRANGE_START, 0x01);

                 while(cnt < 100)
                 {
                                delay_ms(10);
                                val = VL53L0X_Read_Byte(VL53L0X_REG_RESULT_RANGE_STATUS);
                                if( val & 0x01) break;
                                cnt++;
                 }

                 if( val & 0x01)
                                printf("\r\n readey \r\n");
                 else
                                printf("\r\n not readey \r\n");

                 VL53L0X_Read_Len(VL53L0X_Add, 0x14 , 12, gbuf);

                 count[0] = makeuint16(gbuf[7], gbuf[6]);
                 count[1] = makeuint16(gbuf[9], gbuf[8]);
                 count[2] = makeuint16(gbuf[11], gbuf[10]);
                 DeviceRangeStatusInternal = ((gbuf[0] & 0x78) >> 3);

                 printf("\r\n ambient count = %4d signal count = %4d distance = %4d status = %d ",count[0],count[1],count[2],DeviceRangeStatusInternal);
                // data_analy(count[2]);

                delay_ms(1000);
        }            
}

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:246093 发表于 2017-11-4 21:18 | 只看该作者
请问这个计算算法是什么啊
回复

使用道具 举报

板凳
ID:294147 发表于 2018-3-19 17:36 | 只看该作者
感谢分享
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表