欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: STM32+VL53L0X激光測距源碼 [打印本頁]

作者: busyyang    時間: 2018-4-25 16:57
標題: STM32+VL53L0X激光測距源碼
實驗器材:
    精英STM32F103開發板
   
實驗目的:
    學習ATK-VL53L0X激光測距模塊的使用,實現距離校準、普通測量模式和中斷測量模式的功能,距離校準數據會存儲在24C02上.
   
硬件資源:
    1,DS0、DS1(連接在PB5\PE5)
    2,串口1(波特率:115200,PA9/PA10連接在板載USB轉串口芯片CH340上面)
    3,ALIENTEK 2.8/3.5/4.3/7寸TFTLCD模塊(通過FSMC驅動,FSMC_NE4接LCD片選/A10接RS)
    4,按鍵KEY0(PE4)/KEY1(PE3)/KEY_UP(PA0)
    5,24C02(IIC連接在PB6/PB7上面)
    6,ATK-VL53L0X模塊一個(連接在PB11(SCL),PB10(SDA),PA15(XSH),PA4(INT)上面),也可直接插在板上ATK-MODULE的接口。
   
實驗現象:
    本實驗功能簡介:本實驗用于測試ATK-VL53L0X激光測距模塊,總共包含三大項測試:
   
    1,校準測試-通過KEY_UP按鍵進入此項測試。該功能實現對傳感器測量誤差的校準,進入
           測試后,會看到LCD屏幕提示,提示需要一個白色的目標(可以是白紙),且白色的目
           標需與模塊保持在100mm的距離,確認目標和距離無誤后,這時可按下LCD屏幕提示
           的 KEY1按鍵執行校準操作,若不想執行校準可按下KEY_UP返回主菜單。按下KEY1按
           鍵后,LCD 屏幕會顯示開始校準,這時校準需要一定的時間,若校準成功,則會將校準
           的數據存入到24C02上。否則,將不會進行數據保存,校準過程結束后,會自動返回主
           菜單頁面。
        2,普通測量測試-此測試是使用Single ranging(單次測量)工作模式,采用輪詢方式,讀取
           測量數據,通過KEY1按鍵進入此項測試。此項測試包含4個精度模式子項,其中包括:
           默認、高精度、長距離、高速。通過屏幕提示的KEY1按鍵操作,進行精度模式的切換。
           選擇好精度模式后,按下KEY0按鍵可進入此模式測試。進入測試后,若之前成功校準過,
           會將保存在24C02的校準數據寫進模塊上,測量的數據通過輪詢方式采集。數據采集結
           束后,數據顯示在屏幕上、同時也打印在串口調試助手上。單擊按下KEY_UP,可返回精
           度模式選項頁面,雙擊按下,則返回主菜單頁面。
        3,中斷測量測試-此測試是使用Continuous ranging(連續測量)工作模式,采用中斷方式,
           讀取測量數據。通過KEY0按鍵進入此項測試。此項測試包含4個精度模式子項,其中包
           括:默認、高精度、長距離、高速。通過LCD屏幕提示的KEY1按鍵操作,進行精度模式
           的切換。選擇好精度模式后,按下KEY0按鍵可進入此模式測試。進入測試后,若之前成
           功校準過,會將保存在24C02的校準數據寫進模塊上。在LCD屏幕上,會顯示距離上下
           限閥值,當測出的距離在上下限閥值范圍之間,模塊不觸發測距工作,中斷沒有輸出,若
           在閥值外,則啟動測距工作,測量結束會觸發一次中斷,通過中斷讀取測量數據,距離數
           據會顯示在屏幕上,同時也會打印在串口調試助手上。單擊按下KEY_UP,可返回精度模
           式選擇頁面,雙擊按下,則返回到主菜單頁面。
   
         (關于工作模式和精度的介紹,請看ATK-VL53L0X激光傳感器模塊用戶手冊_V1.0)

  
注意事項:
    1,4.3寸和7寸屏需要比較大電流,USB供電可能不足,請用外部電源適配器(推薦外接12V 1A電源).
    2,本例程在LCD_Init函數里面(在ILI93xx.c),用到了printf,如果不初始化串口1,將導致液晶無法顯示!!  
    3,校準過程中可能會受環境溫度、紅外線以及光線的影響,導致校準數據不準。
    4,由于模塊是屬于光學器件,傳感器表層的不潔凈,會容易導致測量數據不佳。所以模塊在使用前,保持傳感器表層的清潔度,工作時請勿用手去觸摸,以免導致模塊工作不正常。


單片機源程序如下:
  1. #include "led.h"
  2. #include "delay.h"
  3. #include "key.h"
  4. #include "sys.h"
  5. #include "lcd.h"
  6. #include "usart.h"
  7. #include "24cxx.h"
  8. #include "usmart.h"
  9. #include "vl53l0x.h"

  10. //主函數
  11. int main(void)
  12. {         
  13.          delay_init();                        //延時函數初始化          
  14.      NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//設置中斷優先級分組為組2:2位搶占優先級,2位響應優先級
  15.          uart_init(115200);                     //串口初始化為115200
  16.          usmart_dev.init(72);            //初始化USMART       
  17.          KEY_Init();                //按鍵初始化
  18.          LED_Init();                                  //初始化與LED連接的硬件接口
  19.          LCD_Init();                                   //初始化LCD                
  20.          AT24CXX_Init();                        //IIC初始化
  21.          POINT_COLOR=RED;           //設置字體為紅色
  22.          LCD_ShowString(30,50,200,16,16,"Elite STM32");       
  23.          LCD_ShowString(30,70,200,16,16,"Sensor VL53L0X TEST");       
  24.          LCD_ShowString(30,90,200,16,16,"ATOM@ALIENTEK");
  25.          LCD_ShowString(30,110,200,16,16,"2017/6/25");            
  26.          POINT_COLOR=BLUE;//設置字體為藍色
  27.          while(AT24CXX_Check())//檢測不到24c02
  28.          {
  29.                 LCD_ShowString(30,150,200,16,16,"24C02 Check Failed!");
  30.                 delay_ms(500);
  31.                 LCD_ShowString(30,150,200,16,16,"Please Check!      ");
  32.                 delay_ms(500);
  33.                 LED0=!LED0;//DS0閃爍
  34.          }
  35.          while(1)
  36.          {
  37.                
  38.             vl53l0x_test();//vl53l0x測試
  39.         
  40.          }
  41.        
  42. }

復制代碼

所有資料51hei提供下載:

(標準庫版本,適合精英STM32開發板)擴展實驗21 ATK-VL53L0X模塊實驗.rar (496.85 KB, 下載次數: 359)



作者: 久落凡塵    時間: 2018-4-27 14:35
樓主, vl53l0x一定要校準嗎,能直接測距嗎
作者: 上帝之杖    時間: 2018-8-4 16:17
謝謝樓主

作者: mycnxp    時間: 2018-8-8 17:05
很想要。
作者: mycnxp    時間: 2018-8-8 17:06
很想要,找了好久
作者: assassin6279    時間: 2018-8-26 19:12
樓主 這是f1資料里面的內容嗎 現在在用f4但是沒有相關資料 是的話我就去下f1的資料了
作者: Liqipeng0822    時間: 2019-1-16 13:20
謝謝樓主的分享,最近打算嘗試這個模塊。
作者: 史蒂芬帥    時間: 2019-1-18 16:15
感謝分享。。。。。。。。。。。。
作者: 史蒂芬帥    時間: 2019-1-18 16:15
非常感謝分享
作者: Liqipeng0822    時間: 2019-2-28 09:42
久落凡塵 發表于 2018-4-27 14:35
樓主, vl53l0x一定要校準嗎,能直接測距嗎

您好!我也想問一下,如果VL53L0X不經過校準,直接使用,長時間會對精度產生影響嗎?
作者: zhongfei123    時間: 2019-3-28 18:29
找了好久,驗證看能不能移值到VL53L1上
作者: 18779103902    時間: 2019-5-6 18:56
很不錯,謝謝樓主
作者: temp009    時間: 2019-8-4 11:54
很不錯,謝謝樓主
作者: hbthgsli    時間: 2019-8-4 15:40

謝謝分享,很實用
作者: 小蘇ka    時間: 2019-8-8 16:11
感謝!!




歡迎光臨 (http://m.raoushi.com/bbs/) Powered by Discuz! X3.1