找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2162|回復(fù): 4
打印 上一主題 下一主題
收起左側(cè)

單片機(jī)用兩個(gè)紅外傳感器檢測人數(shù)的程序修改

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:976691 發(fā)表于 2022-4-30 18:12 來自觸屏版 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
求助大神幫忙改一下單片機(jī)程序,用兩個(gè)紅外傳感器檢測人數(shù),現(xiàn)在是傳感器1感應(yīng)是進(jìn)入,傳感器2感應(yīng)是出去,想改成傳感器1先感應(yīng),傳感器2后感應(yīng)為進(jìn),傳感器2先感應(yīng),傳感器1后感應(yīng)為出。求大神們幫忙。
        
while(1)
{
if(Left_P==0)                                                        // 如果左邊的紅外模塊檢測到有人
DelayMs(30);if(Right_P==0)
{
if(gJin<9999)                                                // 判斷當(dāng)前進(jìn)入人數(shù)是否小于9999                        
{
gJin++;                                                                // 進(jìn)入人數(shù)加1
LcdGotoXY(0,3);                                // 光標(biāo)定位
LcdPrintNum(gJin);                // 顯示進(jìn)入的人數(shù)
LcdGotoXY(1,3);                                // 光標(biāo)定位
gNow=gJin-gChu;                                // 計(jì)算當(dāng)前人數(shù)        
LcdPrintNum(gNow);                // 顯示當(dāng)前人數(shù)
}
Buzzer_P=0;                                                        // 蜂鳴器嘀一聲
DelayMs(30);
Buzzer_P=1;
while(!Left_P);                                        // 等待人離開左邊的傳感器檢測范圍
DelayMs(100);
}
if(Right_P==0)                                                // 如果右邊的紅外模塊檢測到有人
DelayMs(30);if(Left_P==0)
{
if(gChu<gJin)                                                // 判斷當(dāng)前出去人數(shù)是否小于進(jìn)入人數(shù)
{
gChu++;                                                                // 出去人數(shù)加1
LcdGotoXY(0,12);                        // 光標(biāo)定位
LcdPrintNum(gChu);                // 顯示出去的人數(shù)
LcdGotoXY(1,3);                                // 光標(biāo)定位
gNow=gJin-gChu;                                // 計(jì)算當(dāng)前人數(shù)        
LcdPrintNum(gNow);                // 顯示當(dāng)前人數(shù)
}
Buzzer_P=0;                                                        // 蜂鳴器嘀一聲
DelayMs(30);
Buzzer_P=1;
while(!Right_P);                                // 等待人離開右邊的傳感器檢測范圍
DelayMs(100);
}
AlarmJudge();                                                        // 判斷是否需要報(bào)警
               
KeyScanf();                                                                // 按鍵掃描                        
}
}
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:213173 發(fā)表于 2022-5-1 06:27 | 只看該作者
利用兩個(gè)傳感器信號(hào)的時(shí)差判斷進(jìn)出和數(shù)量
  1. char count=初始人數(shù);

  2. void The_number()
  3. {
  4.         static unsigned char sign_R=0,sign_L=0;        //狀態(tài)標(biāo)志
  5.         //進(jìn)入檢測
  6.         if(Left_P && !Right_P && sign_R==0)          //第一特征碼
  7.         {
  8.                 sign_R=1;
  9.         }
  10.         else if(!Left_P && !Right_P && sign_R==1)//第二特征碼
  11.         {
  12.                 sign_R=2;
  13.         }
  14.         else if(!Left_P && Right_P && traitA==2)//第三特征碼
  15.         {
  16.                 count++;
  17.                 sign_R=3;
  18.         }
  19.         else if(Left_P && Right_P)                //初始特征碼
  20.         {
  21.                 sign_R=0;                                        //清0
  22.         }
  23.         //退出檢測
  24.         if(!Left_P && Right_P && sign_L==0)//第一特征碼
  25.         {
  26.                 sign_L=1;
  27.         }
  28.         else if(!Left_P && !Right_P && sign_L==1)//第二特征碼
  29.         {
  30.                 sign_L=2;
  31.         }
  32.         else if(Left_P && !Right_P && sign_L==2)//第三特征碼
  33.         {
  34.                 count--;
  35.                 sign_L=3;
  36.         }
  37.         else if(Left_P && Right_P)                //初始特征碼
  38.         {
  39.                 sign_L=0;                                        //清0
  40.         }
  41. }
復(fù)制代碼
回復(fù)

使用道具 舉報(bào)

板凳
ID:976691 發(fā)表于 2022-5-1 11:51 | 只看該作者
wulin 發(fā)表于 2022-5-1 06:27
利用兩個(gè)傳感器信號(hào)的時(shí)差判斷進(jìn)出和數(shù)量

謝謝大神的指點(diǎn),現(xiàn)在達(dá)到想要實(shí)現(xiàn)的效果了。萬分感謝。
回復(fù)

使用道具 舉報(bào)

地板
ID:149451 發(fā)表于 2022-5-1 16:44 | 只看該作者
這個(gè)聽著像一個(gè)典型的“旋轉(zhuǎn)編碼一個(gè)方向加,反方向減”計(jì)數(shù)程序
回復(fù)

使用道具 舉報(bào)

5#
ID:1062419 發(fā)表于 2023-2-7 23:05 來自觸屏版 | 只看該作者
樓主能發(fā)一下全部程序嗎?想看
回復(fù)

使用道具 舉報(bào)

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

本版積分規(guī)則

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

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

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