Robofun 機器人論壇

 找回密碼
 申請會員
搜索
熱搜: 活動 交友 discuz
查看: 2519|回復: 2
打印 上一主題 下一主題

與投幣機的一些應用

[複製鏈接]
跳轉到指定樓層
1#
發表於 2017-7-3 20:03:32 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
#include <LiquidCrystal.h>
LiquidCrystal lcd(2, 3, 4, 5, 6, 7);
const int buzzer = 8; // ノPin8 蜂鳴器



void setup() {
  
  lcd.begin(16, 2);
  pinMode(buzzer,OUTPUT);
  Serial.begin(9600);
  pinMode(9,INPUT);
}


void loop() {
lcd.setCursor(0, 0);
lcd.print("enter coin");
lcd.setCursor(0, 1);
lcd.print("10 NTD");
int p1 = digitalRead(9);



if(p1==1)
{
int a;
while(p1==1)
a++;
delay(30);
if(a>=5)
a =  a=0 ;
for ( int ii=0; ii<100; ii++ ) {

        tone(buzzer,1000);

        delay(50);

        tone(buzzer,500);

        delay(50);

    }

    noTone(buzzer);

    delay(2000);

}
    // simulate phone call
}
這是我與投幣機的一些設定程式
投幣機是KAI-638
但我無論怎麼投幣arduino都沒反應
我想要投幣5個後 蜂鳴器開始發出鈴聲
請問各位大大我應該如何改才有可能成功?
2#
發表於 2017-7-4 12:15:31 | 只看該作者
本帖最後由 超新手 於 2017-7-4 12:19 編輯

你確定你的電路設計
投幣是 == 1, 而不是 == 0?
int a = 0;
void loop() {
  if (digitalRead(9) == 1)
  {
    delay(30);
    while (digitalRead(9) == 1);
    if (++a >= 5) {
      a = 0 ;
      for ( int ii = 0; ii < 100; ii++ ) {
        tone(buzzer, 1000);
        delay(50);
        tone(buzzer, 500);
        delay(50);
      }
      noTone(buzzer);
      delay(2000);
    }
  }
}
另外, 把顯示的部份放到 setup 中即可
不需要在 loop 中重覆顯示
3#
 樓主| 發表於 2017-7-5 16:19:12 | 只看該作者
雖然不能動作, 可是還是感謝大大的幫助
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

小黑屋|手機版|Archiver|機器人論壇 from 2005.07

GMT+8, 2024-11-21 21:28 , Processed in 0.196211 second(s), 6 queries , Apc On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回復 返回頂部 返回列表