找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 22871|回復(fù): 44
收起左側(cè)

APDS9960紅外手勢傳感器模塊的STM32參考例程源碼

  [復(fù)制鏈接]
ID:324756 發(fā)表于 2018-5-8 09:13 | 顯示全部樓層 |閱讀模式
好東西和大家分享一下,最近在調(diào)這個。

APDS9960紅外手勢傳感器實物圖:
IMG_20180505_221055.jpg


單片機源程序如下:
  1. #include "stm32f10x.h"
  2. #include <stdbool.h>
  3. #include <stdio.h>


  4. #include "delay.h"
  5. #include "usart.h"
  6. #include "EXTI.h"
  7. #include "LED.h"

  8. #include "APDS_9960.h"



  9. void handleGesture(void);


  10. int isr_flag = 0;




  11. int main(void)
  12. {        
  13.         // Initialize Serial port
  14.         NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);         //設(shè)置NVIC中斷分組2:2位搶占優(yōu)先級,2位響應(yīng)優(yōu)先級
  15.         delay_init();        //延時初始
  16.         LED_Init();        //LED初始化
  17.         EXTIX_Init();//外部中斷初始化
  18.         uart_init(9600);//串口初始化
  19.         delay_ms(10);//延時
  20.                  
  21.         SparkFun_APDS9960();//初始化一些變量為0

  22.         printf("SparkFun APDS-9960 - GestureTest\n");
  23.   
  24.         delay_ms(10);
  25.          
  26.         
  27.         //初始化APDS9960  讀取器件ID    失能all   對getsure寄存器設(shè)置默認值
  28.         
  29.         if(SparkFun_APDS9960_init())
  30.         {
  31.                 printf("APDS-9960 initialization complete\n");
  32.         }
  33.         else  
  34.         {
  35.                 printf("Something went wrong during APDS-9960 init!\n");
  36.         }
  37.   
  38.         delay_ms(10);
  39.         
  40.         // 開始運行 APDS-9960 姿態(tài)光感引擎
  41.         if (enableGestureSensor(true) )
  42.         {
  43.                 printf("Gesture sensor is now running\n");
  44.         }
  45.         else
  46.         {
  47.                 printf("Something went wrong during gesture sensor init!\n");
  48.         }
  49.          
  50.         LED0=0;
  51.         delay_ms(10);
  52.         
  53.         
  54.         //手勢擺動太頻繁會使整個程序處于卡死狀態(tài),之后用不了
  55.         //在100mm范圍內(nèi)才可以感應(yīng)到
  56.         //搖動幅度小、搖動速度慢,(太慢也會出錯),準確率會更高
  57.         //端點處加速度要高
  58.         //手盡量以平移的形式,不要搖動
  59.         //用手指揮識別更準
  60.          
  61.         while(1)
  62.         {               
  63.                 if(isr_flag == 1)
  64.                 {
  65.                         handleGesture();//處理手勢
  66.                         isr_flag = 0;               
  67.                 }                        
  68.         }
  69. }


  70. void handleGesture()
  71. {

  72.     if(isGestureAvailable()) //判斷手勢是否是有效的
  73.         {
  74.                 LED1=0;
  75.                 switch ( readGesture() )
  76.                 {        
  77.                         case DIR_UP:
  78.                                 printf("UP\n");
  79.                                 break;
  80.                         case DIR_DOWN:
  81.                                 printf("DOWN\n");
  82.                                 break;
  83.                         case DIR_LEFT:
  84.                                 printf("LEFT\n");
  85.                                 break;
  86.                         case DIR_RIGHT:
  87.                                 printf("RIGHT\n");
  88.                                 break;
  89.                         case DIR_NEAR:
  90.                                 printf("NEAR\n");
  91.                                 break;
  92.                         case DIR_FAR:
  93.                                 printf("FAR\n");
  94.                                 break;
  95.                         default:
  96.                                 printf("NONE\n");
  97. ……………………

  98. …………限于本文篇幅 余下代碼請從51黑下載附件…………
復(fù)制代碼

所有資料51hei提供下載:
紅外手勢識別Keil程序.7z (211.08 KB, 下載次數(shù): 694)


評分

參與人數(shù) 2黑幣 +55 收起 理由
對點天空 + 5
admin + 50 共享資料的黑幣獎勵!

查看全部評分

回復(fù)

使用道具 舉報

ID:342930 發(fā)表于 2018-6-1 15:51 | 顯示全部樓層
附件中包含APDS_9960.c文件嗎?
回復(fù)

使用道具 舉報

ID:344053 發(fā)表于 2018-6-3 16:09 | 顯示全部樓層
來看看
回復(fù)

使用道具 舉報

ID:352818 發(fā)表于 2018-6-17 11:12 | 顯示全部樓層
最近也在搞這個手勢模塊,打算用手勢模塊做一個電機調(diào)速的系統(tǒng),也就是用手勢控制電機調(diào)速。學(xué)習(xí)一下樓主的研究結(jié)果。
回復(fù)

使用道具 舉報

ID:290805 發(fā)表于 2018-6-18 19:17 | 顯示全部樓層
最近也在搞APDS9960,一直調(diào)不通,郁悶
回復(fù)

使用道具 舉報

ID:54943 發(fā)表于 2018-6-24 18:08 | 顯示全部樓層
很好用,感謝樓主。
回復(fù)

使用道具 舉報

ID:279283 發(fā)表于 2018-6-26 18:38 | 顯示全部樓層
謝謝樓主分享,正在被這9960搞得暈頭轉(zhuǎn)向的
回復(fù)

使用道具 舉報

ID:360596 發(fā)表于 2018-6-27 21:22 | 顯示全部樓層
樓主可以幫忙發(fā)下我郵箱么,下載要積分哈,謝謝!416265933@qq.com 最近正在搞這個
回復(fù)

使用道具 舉報

ID:95542 發(fā)表于 2018-7-23 10:43 | 顯示全部樓層
親測可用使用,謝謝樓主的分享!
回復(fù)

使用道具 舉報

ID:380261 發(fā)表于 2018-8-11 00:24 | 顯示全部樓層
準備在stm8上調(diào)試
回復(fù)

使用道具 舉報

ID:167450 發(fā)表于 2018-9-3 11:39 | 顯示全部樓層
yuancheng116 發(fā)表于 2018-7-23 10:43
親測可用使用,謝謝樓主的分享!

我測試用不了呀
回復(fù)

使用道具 舉報

ID:402205 發(fā)表于 2018-9-25 15:38 | 顯示全部樓層
我最近也在弄這個, 還有周立功家的串口的也不錯。
回復(fù)

使用道具 舉報

ID:412461 發(fā)表于 2018-10-19 20:34 | 顯示全部樓層
您好,能發(fā)我郵箱一份嗎?我剛注冊黑幣不夠,可以嗎?823240662@qq。com
回復(fù)

使用道具 舉報

ID:389893 發(fā)表于 2018-10-28 18:29 | 顯示全部樓層
有51的例程么?STM32還不是很懂
回復(fù)

使用道具 舉報

ID:297148 發(fā)表于 2018-11-10 17:17 | 顯示全部樓層
很實用的源碼,謝謝
回復(fù)

使用道具 舉報

ID:297148 發(fā)表于 2018-11-10 17:19 | 顯示全部樓層
最近正在搞一個這樣的產(chǎn)品
回復(fù)

使用道具 舉報

ID:171370 發(fā)表于 2018-11-27 15:01 | 顯示全部樓層
搞下來試試~~~~~~
回復(fù)

使用道具 舉報

ID:444257 發(fā)表于 2018-12-11 17:31 | 顯示全部樓層
來看看
回復(fù)

使用道具 舉報

ID:450645 發(fā)表于 2018-12-20 12:37 | 顯示全部樓層
搞下來試試~~~~~~
回復(fù)

使用道具 舉報

ID:461684 發(fā)表于 2019-1-4 12:02 來自手機 | 顯示全部樓層
很好 很有實用價值
回復(fù)

使用道具 舉報

ID:228360 發(fā)表于 2019-1-5 19:52 | 顯示全部樓層
謝謝樓主的分享!
回復(fù)

使用道具 舉報

ID:184941 發(fā)表于 2019-2-19 22:47 | 顯示全部樓層
下載試試看,感謝樓主
回復(fù)

使用道具 舉報

ID:184941 發(fā)表于 2019-2-19 23:02 | 顯示全部樓層
感謝樓主,下載來試試
回復(fù)

使用道具 舉報

ID:500914 發(fā)表于 2019-3-29 22:14 | 顯示全部樓層

謝謝樓主的分享!
回復(fù)

使用道具 舉報

ID:503529 發(fā)表于 2019-4-12 20:15 | 顯示全部樓層
請問有接線圖嗎?我一直調(diào)試不出來...
回復(fù)

使用道具 舉報

ID:515539 發(fā)表于 2019-4-18 15:34 | 顯示全部樓層
謝謝分享!新手實驗
回復(fù)

使用道具 舉報

ID:524850 發(fā)表于 2019-5-2 17:24 | 顯示全部樓層

解決了嗎,我也用不了
回復(fù)

使用道具 舉報

ID:537884 發(fā)表于 2019-5-14 21:22 | 顯示全部樓層
這個很有用,幫了我很大忙
回復(fù)

使用道具 舉報

ID:322379 發(fā)表于 2020-3-4 15:46 | 顯示全部樓層
本帖最后由 2541942034 于 2020-3-4 19:28 編輯

值得借鑒
回復(fù)

使用道具 舉報

ID:650499 發(fā)表于 2020-4-2 15:32 | 顯示全部樓層
一臉懵逼,這與stm32是咋接上的啊
回復(fù)

使用道具 舉報

ID:296803 發(fā)表于 2020-4-3 09:11 | 顯示全部樓層
學(xué)習(xí)了,很有用,感謝樓主分享。,調(diào)成功我也來展示一下
回復(fù)

使用道具 舉報

ID:727278 發(fā)表于 2020-4-12 00:42 | 顯示全部樓層
樓主,可以發(fā)一個給我嗎?我只一個初學(xué)者,想玩一下紅外手勢的~~謝謝啦~~
回復(fù)

使用道具 舉報

ID:727278 發(fā)表于 2020-4-12 00:44 | 顯示全部樓層
還有,紅外手勢的模塊怎么連接stm32的板子呢??
回復(fù)

使用道具 舉報

ID:555537 發(fā)表于 2020-4-24 14:00 | 顯示全部樓層
學(xué)習(xí)一下,感謝分享
回復(fù)

使用道具 舉報

ID:491511 發(fā)表于 2020-11-13 09:40 | 顯示全部樓層
項目在用到,幫大忙了,感謝
回復(fù)

使用道具 舉報

ID:831068 發(fā)表于 2021-1-14 11:39 | 顯示全部樓層
樓主怎么調(diào)節(jié)靈敏度的,我的識別效果很低,可以溝通一下嗎
回復(fù)

使用道具 舉報

ID:875880 發(fā)表于 2021-1-16 21:59 | 顯示全部樓層
程序有很好的借鑒意義,靈敏度 如何 調(diào)整 同問
回復(fù)

使用道具 舉報

ID:831068 發(fā)表于 2021-1-20 13:56 | 顯示全部樓層
zhouyg 發(fā)表于 2021-1-16 21:59
程序有很好的借鑒意義,靈敏度 如何 調(diào)整 同問

看了下資料。減少不必要的檢測,應(yīng)該可以提高靈敏度
回復(fù)

使用道具 舉報

ID:762626 發(fā)表于 2021-1-20 15:10 | 顯示全部樓層
學(xué)習(xí)一下,很有借鑒價值
回復(fù)

使用道具 舉報

ID:605306 發(fā)表于 2021-4-9 15:35 | 顯示全部樓層
很實用的源碼,謝謝
回復(fù)

使用道具 舉報

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

本版積分規(guī)則

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

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表