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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

單片機(jī)人體紅外感應(yīng)自動門電路原理圖+PCB文件+源程序

  [復(fù)制鏈接]
ID:307189 發(fā)表于 2018-4-13 11:15 | 顯示全部樓層 |閱讀模式
基于51單片機(jī)和人體紅外感應(yīng)模塊的自動門程序設(shè)計資料分享給大家
Altium Designer畫的自動門原理圖和PCB圖如下:(51hei附件中可下載工程文件)
0.jpg 0.jpg

單片機(jī)源程序如下:
  1. #include <reg52.h>
  2. #define uchar unsigned char  //無符號字符型 宏定義        變量范圍0~255
  3. #define uint  unsigned int         //無符號整型 宏定義        變量范圍0~65535


  4. unsigned char code zheng[4]={0x08,0x04,0x02,0x01};//正轉(zhuǎn)表格
  5. unsigned char code fan[4]  ={0x01,0x02,0x04,0x08};//反轉(zhuǎn)表格

  6. uchar flag_start ;     //啟動標(biāo)志位  1為起動步進(jìn)電機(jī) 否則關(guān)閉電機(jī)
  7. uchar flag_z_f;        //正反標(biāo)志位  0為順時鐘 1為逆時史上轉(zhuǎn)
  8. uint flag_moshi;

  9. sbit led1 = P2^0;   //指示燈
  10. sbit led2 = P2^1;
  11. sbit led3 = P2^2;
  12. sbit led4 = P2^3;

  13. sbit hw1 = P2^4;        //紅外感應(yīng)
  14. sbit hw2 = P2^5;        //紅外感應(yīng)

  15. uint bjdj_value;   //步進(jìn)電機(jī)的量

  16. uchar flag_sj,flag_zdg;         //延時關(guān)門時間   打開和關(guān)閉的變量

  17. void Delay(unsigned int i)//延時
  18. {
  19.         while(--i);
  20. }

  21. /***********************1ms延時函數(shù)*****************************/
  22. void delay_1ms(uint q)
  23. {
  24.         uint i,j;
  25.         for(i=0;i<q;i++)
  26.                 for(j=0;j<120;j++);
  27. }


  28. uchar key_can;
  29. /********************獨(dú)立按鍵程序*****************/
  30. void key()
  31. {
  32.         static uchar key_new;
  33.         if((P3 & 0xf0) != 0xf0)                //按鍵按下
  34.         {
  35.                 Delay(1000);                                //按鍵消抖動
  36.                 if(((P3 & 0xf0) != 0xf0) && (key_new == 1))
  37.                 {                                                //確認(rèn)是按鍵按下
  38.                         key_new = 0;
  39.                         switch(P3 & 0xf0)
  40.                         {
  41.                                 case 0xe0:  key_can = 1;  break;         //得到按鍵值
  42.                                 case 0xd0:  key_can = 2;  break;         //得到按鍵值
  43.                                 case 0xb0:  key_can = 3;  break;         //得到按鍵值
  44.                                 case 0x70:  key_can = 4;  break;         //得到按鍵值
  45.                         }                                
  46.                 }        
  47.         }
  48.         else           //按鍵松開
  49.                 key_new = 1;        
  50. }


  51. void bujindj()         //步進(jìn)電機(jī)函數(shù)
  52. {
  53.         static uchar i;
  54.         if(flag_z_f != 0)        
  55.         {        
  56.                 if(flag_z_f == 1)           //開
  57.                 {
  58.                         if(bjdj_value >= 512)
  59.                         {
  60.                                 flag_z_f = 0;
  61.                                 flag_zdg = 1;
  62.                         }else
  63.                                 bjdj_value ++;        
  64.                 }
  65.                 if(flag_z_f == 2)           //關(guān)
  66.                 {                                
  67.                         if(bjdj_value <= 1)
  68.                         {
  69.                                 flag_z_f = 0;
  70.                                 bjdj_value = 1;
  71.                         }else  
  72.                         {
  73.                                 bjdj_value --;
  74.                         }
  75.                 }
  76.                 for(i=0;i<4;i++)          //4相
  77.                 {
  78.                         if(flag_z_f == 1)          //開
  79.                         {
  80.                                 P1=zheng[i];//      //
  81.                                 P0=fan[i];
  82.                         }
  83.                         else if(flag_z_f == 2)//關(guān)
  84.                         {
  85.                                 P1=fan[i];//         //
  86.                                 P0=zheng[i];
  87.                         }
  88.                 }
  89.         }
  90. }



  91. /******************主程序**********************/
  92. void main()
  93. {
  94.         static unsigned char value;        
  95.         while(1)
  96.         {
  97.                 key();
  98.                 if(key_can < 10)
  99.                 {                                                
  100.                          if(key_can == 1)         //自動模式
  101.                         {
  102.                                 flag_moshi = 0;
  103.                                 flag_z_f = 0;
  104.                                 led4 = 0; led3 = 1;         //指示燈
  105.                         }
  106.                         if(key_can == 2)         //手動模式
  107.                         {
  108.                                 flag_moshi = 1;
  109.                                 flag_z_f = 0;
  110.                                 led4 = 1; led3 = 0;         //指示燈
  111.                         }
  112.                         if(key_can == 3)          //手動關(guān)
  113.                         {
  114.                                 flag_z_f = 2;
  115.                                 led2 = 0; led1 = 1;         //指示燈
  116.                         }
  117.                         if(key_can == 4)         //手動開
  118.                         {
  119.                                 flag_z_f = 1;
  120.                                 led2 = 1; led1 = 0;         //指示燈
  121.                         }
  122.                 }
  123.                 if(flag_moshi == 0)          //自動模式
  124.                 {
  125.                         if((hw1 == 1) || (hw2 == 1))
  126.                         {
  127.                                 flag_z_f = 1;   //打開        
  128.                                 led2 = 1; led1 = 0;         //指示燈
  129.                                 flag_zdg = 0;
  130.                                 flag_sj = 0;
  131.                         }
  132. ……………………

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

所有資料51hei提供下載:
程序.zip (21.11 KB, 下載次數(shù): 398)
自動門 9.rar (272.9 KB, 下載次數(shù): 445)


評分

參與人數(shù) 3黑幣 +15 收起 理由
4665656 + 5
ccrstc + 5
zqy181818 + 5 共享資料的黑幣獎勵!

查看全部評分

回復(fù)

使用道具 舉報

ID:164963 發(fā)表于 2018-4-13 18:54 | 顯示全部樓層
正學(xué)習(xí)中,謝樓主……………………………………
回復(fù)

使用道具 舉報

ID:307768 發(fā)表于 2018-4-14 09:15 | 顯示全部樓層
謝謝你哦
回復(fù)

使用道具 舉報

無效樓層,該帖已經(jīng)被刪除
ID:309177 發(fā)表于 2018-4-16 13:20 | 顯示全部樓層
  救命帖子
回復(fù)

使用道具 舉報

ID:309177 發(fā)表于 2018-4-16 13:20 | 顯示全部樓層
  謝謝!
回復(fù)

使用道具 舉報

7#
無效樓層,該帖已經(jīng)被刪除
ID:310950 發(fā)表于 2018-4-25 17:08 | 顯示全部樓層
樓主啊,為什么我用開發(fā)板燒錄之后 不行呢
回復(fù)

使用道具 舉報

ID:310950 發(fā)表于 2018-4-25 17:38 | 顯示全部樓層
電機(jī)轉(zhuǎn)不起來
回復(fù)

使用道具 舉報

ID:248392 發(fā)表于 2018-5-21 10:39 | 顯示全部樓層
正學(xué)習(xí)中,謝樓主……………………………………
回復(fù)

使用道具 舉報

ID:307768 發(fā)表于 2018-5-22 20:32 | 顯示全部樓層
樓主,你有仿真圖嗎?
回復(fù)

使用道具 舉報

ID:354305 發(fā)表于 2018-6-21 16:41 | 顯示全部樓層
樓主在嗎?步進(jìn)電機(jī)那部分函數(shù)我有點不明白,能解釋一下嗎
回復(fù)

使用道具 舉報

ID:356174 發(fā)表于 2018-6-21 17:00 | 顯示全部樓層
別下載了,那程序沒用,和說的壓根不一樣
回復(fù)

使用道具 舉報

ID:356174 發(fā)表于 2018-6-21 17:01 | 顯示全部樓層
沒用的
回復(fù)

使用道具 舉報

ID:356174 發(fā)表于 2018-6-21 17:02 | 顯示全部樓層
下載的程序沒用,不用看了,和紅外感光沒關(guān)系
回復(fù)

使用道具 舉報

ID:366433 發(fā)表于 2018-7-6 19:54 | 顯示全部樓層
有沒有仿真結(jié)果啊
回復(fù)

使用道具 舉報

ID:366893 發(fā)表于 2018-7-7 21:42 | 顯示全部樓層
頂一個,很實用的DIY
回復(fù)

使用道具 舉報

ID:438455 發(fā)表于 2018-12-6 16:09 | 顯示全部樓層
我是紅外線自動門的開關(guān) 不知道這個有沒有用
回復(fù)

使用道具 舉報

ID:491472 發(fā)表于 2019-3-15 15:07 | 顯示全部樓層
學(xué)習(xí)ing 正好需要這個
回復(fù)

使用道具 舉報

ID:495611 發(fā)表于 2019-4-8 21:34 | 顯示全部樓層
學(xué)習(xí)下
回復(fù)

使用道具 舉報

ID:240885 發(fā)表于 2019-4-24 16:31 | 顯示全部樓層
謝謝分享,學(xué)習(xí)下。
回復(fù)

使用道具 舉報

ID:527568 發(fā)表于 2019-5-5 12:52 | 顯示全部樓層
感謝樓主,正在好好學(xué)習(xí)
回復(fù)

使用道具 舉報

23#
無效樓層,該帖已經(jīng)被刪除
ID:592662 發(fā)表于 2019-8-2 09:18 | 顯示全部樓層
對于結(jié)合單片機(jī)和紅外感應(yīng)有導(dǎo)向作用
回復(fù)

使用道具 舉報

ID:592662 發(fā)表于 2019-8-2 13:51 | 顯示全部樓層
謝謝樓主,幫了大忙了
回復(fù)

使用道具 舉報

ID:594143 發(fā)表于 2019-8-2 15:21 | 顯示全部樓層
學(xué)習(xí)學(xué)習(xí),程序測試過嗎?
回復(fù)

使用道具 舉報

ID:608007 發(fā)表于 2019-9-8 16:43 | 顯示全部樓層
學(xué)習(xí)中。。。。。。
回復(fù)

使用道具 舉報

28#
無效樓層,該帖已經(jīng)被刪除
ID:229821 發(fā)表于 2019-10-21 16:18 | 顯示全部樓層
謝謝。下載收藏了。
回復(fù)

使用道具 舉報

ID:627771 發(fā)表于 2019-10-21 19:24 | 顯示全部樓層
謝謝樓主
回復(fù)

使用道具 舉報

ID:613618 發(fā)表于 2019-10-22 07:42 來自觸屏版 | 顯示全部樓層
為什么沒設(shè)計限位開關(guān)呀
回復(fù)

使用道具 舉報

ID:626986 發(fā)表于 2020-5-28 15:20 | 顯示全部樓層
真棒,感謝樓主分享
回復(fù)

使用道具 舉報

33#
無效樓層,該帖已經(jīng)被刪除
34#
無效樓層,該帖已經(jīng)被刪除
35#
無效樓層,該帖已經(jīng)被刪除
36#
無效樓層,該帖已經(jīng)被刪除
37#
無效樓層,該帖已經(jīng)被刪除
38#
無效樓層,該帖已經(jīng)被刪除
39#
無效樓層,該帖已經(jīng)被刪除
40#
無效樓層,該帖已經(jīng)被刪除
您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

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

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

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