Skip to content

Latest commit

 

History

3 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

arduino-c4-bomb

Counter-Strike 2'deki C4'ün Arduino Uno ile yapılmış çalışan replikası. 40 saniyelik geri sayım, keypad'den şifreyle iki aşamalı defuse, hızlanan bip sesi ve LCD üzerinde ilerleme çubuğu.

Oyundaki mantığa sadık: defuse kodunu doğru girmek yetmiyor, ardından 5 saniyelik defuse süresini de beklemek gerekiyor — ve ana sayaç o sırada işlemeye devam ediyor. Süre biterse bomba patlıyor.

Bu bir oyun/kostüm aksesuarıdır. Ekran, buzzer ve üç LED'den ibarettir; patlayıcı hiçbir işlevi yoktur. Yine de görüntüsü nedeniyle halka açık yerlerde taşınması yanlış anlaşılmaya yol açabilir.

Bağlantı şeması

Ayrıntılı bağlantı şemasını aç

Pin tablosu, sinyal şeması, Uno pin doluluk haritası ve kurulum notları. Kaynağı bu depodaki baglanti-semasi.html dosyasıdır.

Hızlı özet:

Bileşen Bacak Arduino Not
Keypad 4×4 R1 R2 R3 R4 D2 D3 D4 D5 satırlar
Keypad 4×4 C1 C2 C3 C4 D6 D7 D8 D9 sütunlar
I²C LCD 16×2 SDA A4 adres 0x27
I²C LCD 16×2 SCL A5
I²C LCD 16×2 VCC / GND 5V / GND
Pasif buzzer + / − D10 / GND aktif buzzer çalışmaz
Kırmızı LED anot / katot D11 / GND 220 Ω direnç ile
Yeşil LED anot / katot D12 / GND 220 Ω direnç ile
Mavi LED anot / katot D13 / GND 220 Ω direnç ile

Keypad tek başına 8 dijital pin tükettiği için kartta boşta yalnızca A0A3 kalır (D0/D1 seri porta ayrılmıştır).

Malzeme listesi

  • Arduino Uno (veya Nano — pin adları aynı)
  • 4×4 membran keypad
  • I²C arkalıklı 16×2 LCD (PCF8574)
  • Pasif buzzer
  • 3 × 5 mm LED — kırmızı, yeşil, mavi
  • 3 × 220 Ω direnç
  • Breadboard ve jumper kablo

Kurulum

Arduino IDE → Araçlar → Kütüphane Yönetimi'nden iki kütüphane:

  • Keypad — Mark Stanley & Alexander Brevig
  • LiquidCrystal_I2C — frank de brabander / johnrickman

Ardından cs2_bomba_gelismis.ino dosyasını açıp Uno'ya yükleyin.

Oynanış

Tuş İşlev
A Bombayı kur — 40 saniyelik geri sayım başlar
09 Defuse şifresini gir (4 hane)
# Onayla — kod doğruysa defuse çubuğu başlar
* Her durumda sistemi sıfırla
stateDiagram-v2
    [*] --> BEKLEMEDE
    BEKLEMEDE --> SAYIM_BASLADI: A tuşu
    SAYIM_BASLADI --> DEFUSE_EDILIYOR: doğru kod + #
    SAYIM_BASLADI --> PATLADI: süre bitti
    DEFUSE_EDILIYOR --> DEFUSE_OLDU: çubuk doldu (5 sn)
    DEFUSE_EDILIYOR --> PATLADI: süre bitti
    DEFUSE_OLDU --> BEKLEMEDE: * tuşu
    PATLADI --> BEKLEMEDE: * tuşu
Loading

LED'ler durumu gösterir: mavi beklemede, kırmızı geri sayımda yanıp söner ve patlamadan sonra sabit yanar, yeşil defuse başarılıysa yanar.

Ayarlanabilir değerler

cs2_bomba_gelismis.ino içindeki sabitler:

const unsigned long BOMBA_SURESI  = 40;      // saniye — toplam geri sayım
const unsigned long DEFUSE_SURESI = 5;       // saniye — kod girildikten sonraki bekleme
const String DEFUSE_SIFRE = "1234";          // 4 haneli defuse kodu
LiquidCrystal_I2C lcd(0x27, 16, 2);          // LCD I²C adresi

Sorun giderme

Ekran yanıyor ama yazı yok — modülün arkasındaki kontrast potunu çevirin.

Ekranda hiçbir şey yok — I²C adresi büyük ihtimalle 0x3F'tir; koddaki 0x27 ile değiştirin.

Tuşlar karışık geliyor — keypad'in satır ve sütun grupları ters takılmış demektir. Konnektör karta bakarken soldan sağa R1 R2 R3 R4 C1 C2 C3 C4 sırasındadır.

Bip sesi tek tonda veya hiç yok — aktif buzzer takılmış olabilir. tone() ile melodi üretmek için pasif buzzer gerekir.

Mavi LED sönükD13 kart üzerindeki dahili LED'e de bağlıdır, ikisi akımı paylaşır. Rahatsız ediyorsa LED'i A0 gibi boştaki bir pine taşıyın.

Lisans

MIT — serbestçe kullanabilir, değiştirebilir ve dağıtabilirsiniz. Tek şart telif bildiriminin korunmasıdır.

About

Counter-Strike 2'deki C4'ün Arduino Uno ile çalışan replikası — geri sayım, keypad ile şifreli defuse, LCD ilerleme çubuğu ve durum LED'leri.

Topics

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages