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

標題: 基于單片機+PAJ7620+舵機的手勢識別小風扇源程序 [打印本頁]

作者: 滾去學習    時間: 2021-5-21 19:46
標題: 基于單片機+PAJ7620+舵機的手勢識別小風扇源程序
利用加濕器配合風扇,特別涼快!
制作出來的實物圖如下:


單片機源程序如下:
  1. //AT89C52
  2. #include <reg52.h>
  3. #include "PAJ7620.h"
  4. #include "i2c.h"

  5. sbit shui = P1^3;//空氣加濕器
  6. sbit key1 = P1^4;//通訊接口1
  7. sbit key2 = P1^5;//通訊接口2
  8. sbit feng = P1^6;   //風扇正轉
  9. sbit fanfeng = P1^7;//風扇反轉

  10. unsigned char PAJ7620_Value=0;  //從PAJ7620獲取的數據
  11. unsigned char result_Code; //返回結果
  12. void Get_7620_Value(void);
  13. void work(void);
  14. void delay_ms(unsigned int n_ms);


  15. void main (void)
  16. {
  17. shui=1;//加濕關
  18. feng=0;//風扇開
  19. key1=0;key2=0;//舵機關
  20. PAJ7620_init();//7620初始化
  21. while(1)
  22. {
  23.   Get_7620_Value(); //獲取7620數據
  24. }
  25. }

  26.        
  27. //獲取7620數據
  28. void Get_7620_Value(void)
  29. {
  30.    PAJ7620_Value=Read_One_Reg(PAJ7620_wAdd,PAJ7620_ADDR_GES_PS_DET_FLAG_0);
  31. if(PAJ7620_Value!=0xFF)
  32. {
  33. switch (PAJ7620_Value)
  34. {
  35.         case RIGHT://左
  36.                         result_Code=0x01;
  37.                         delay_ms(PAJ7620_QUIT_TIME);
  38.                         break;
  39.         case LEFT://右
  40.                  result_Code=0x02;
  41.                  delay_ms(PAJ7620_QUIT_TIME);
  42.                         break;
  43. case UP://上
  44.                  result_Code=0x04;
  45.           
  46.                  delay_ms(PAJ7620_QUIT_TIME);
  47.                  break;
  48.   case DOWN://下
  49.                  result_Code=0x08;               
  50.                
  51.                  delay_ms(PAJ7620_QUIT_TIME);
  52.                  break;
  53. case FORWARD://向前
  54.                  result_Code=0x10;
  55.                  
  56.                  delay_ms(PAJ7620_QUIT_TIME);
  57.                  break;
  58. case BACKWARD://向后
  59.                  result_Code=0x20;
  60.      
  61.                  delay_ms(PAJ7620_QUIT_TIME);
  62.                  break;
  63. case CLOCKWISE://順時針
  64.                  result_Code=0x40;
  65.                  delay_ms(PAJ7620_QUIT_TIME);
  66.                  break;
  67. case UNCLOCKWISE:
  68.                  result_Code=0x80;//逆時針
  69.                  delay_ms(PAJ7620_QUIT_TIME);
  70.                  break;

  71. default:
  72.                  delay_ms(PAJ7620_REACTION_TIME);  //延時
  73.                  PAJ7620_Value=Read_One_Reg(PAJ7620_wAdd,PAJ7620_ADDR_GES_PS_DET_FLAG_1);
  74.                  if (PAJ7620_Value==WAVE)//左右晃
  75.                         {
  76.                  result_Code=0x55;
  77.                  } else
  78.                  result_Code=0;
  79.                  delay_ms(PAJ7620_QUIT_TIME);
  80.                  break;
  81.           }
  82.   work();
  83.   }
  84. }

  85. void work(void)
  86. {
  87.         static unsigned char mode=1;
  88.         switch(result_Code)
  89.         {
  90.                 case 0x01: shui=0; break;//上
  91.                 case 0x02: shui=1; break;//下
  92.                 case 0x04: mode--; if(mode<1)mode=1;break;//左
  93.                 case 0x08: mode++; if(mode>4)mode=4;break;//右
  94.                 case 0x10: feng=0;fanfeng=0;break;//接近
  95.                 case 0x20: feng=0;fanfeng=1; break;//遠離
  96.                 case 0x40: feng=0;fanfeng=1;break;//順時針
  97.                 case 0x80: feng=1;fanfeng=0;break;//逆時針
  98.           case 0x55: break;//搖擺
  99.                 default: break;
  100.         }
  101.                 switch(mode)
  102.         {               
  103.                 case 1: key1=0;key2=0;  break;
  104.                 case 2: key1=0;key2=1;  break;
  105.                 case 3: key1=1;key2=0;  break;
  106.                 case 4: key1=1;key2=1;  break;
  107.                 default:key1=0;key2=0; break;
  108.         }
  109. }
  110. //延時函數
  111. void delay_ms(unsigned int n_ms)
  112. {
  113. int j,k;
  114. for(j=0;j<n_ms;j++)
  115.   for(k=0;k<1002;k++);
  116. }
復制代碼

所有資料51hei提供下載:
程序: 手勢風扇設計.7z (1.18 MB, 下載次數: 130)
視頻: 成品預覽視頻.7z (14.6 MB, 下載次數: 47)


作者: 嚕啦啦789    時間: 2021-5-23 23:37
舵機是用哪款呀
作者: 滾去學習    時間: 2021-11-26 19:21
嚕啦啦789 發表于 2021-5-23 23:37
舵機是用哪款呀

SG90  180度的




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 国产综合网址 | 日韩在线播放网址 | 成人在线电影网站 | 人人看人人干 | 国产1区2区 | 日韩成人在线观看 | 免费一级大片 | 97视频久久 | 日韩成人av在线 | 国产91在线播放 | 久久精品亚洲 | 四虎伊人 | 中文字幕国产 | www.日本三级 | 欧美亚洲视频在线观看 | 亚洲伊人a | 欧美日韩一区精品 | www.色.com| 国产高清一区二区三区 | 国产一区二区电影网 | 亚洲高清三级 | 日韩伦理电影免费在线观看 | 天天干天天色 | 中文字幕日韩欧美 | 精品二区 | 久久国产精品视频 | 亚洲日本成人 | 天天看天天干 | 成人精品啪啪欧美成 | 国产精品视频播放 | 国产精品永久 | 午夜精品久久久久久久99黑人 | 日韩福利在线 | www.五月婷婷.com | 福利在线观看 | 欧美888| 亚洲高清在线观看 | 免费观看日韩av | 天天干夜夜 | 日韩视频观看 | 亚洲视频在线观看一区二区三区 |