Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Manufacturing Technology >> Proses manufaktur

Tech-TicTacToe

Komponen dan persediaan

Arduino UNO
Arduino
× 1
MAX7219 LED dot Matrix
× 1
Keypad Sakelar Membran
× 1

Alat dan mesin yang diperlukan

Pistol lem panas (generik)

Aplikasi dan layanan online

Arduino IDE

Tentang proyek ini

Hai Komunitas Peretas.

Saya Simone Adobs dan ini adalah proyek ketiga saya yang saya rilis di Hackster. Ini adalah proyek pertama saya di mana saya membuat struktur dengan karton, kertas, dan lem panas, yang berisi Arduino dan komponen lainnya.

Ini adalah video singkat yang menunjukkan cara kerja Tris:

Di sini Anda dapat melihat proyek dari semua tampilan:

Saya harap Anda akan menyukainya, karena saya menghabiskan beberapa jam untuk itu! Sekarang mari kita mulai dengan proyeknya.

Bagaimana cara kerja Tris?

Jawabannya sangat sederhana:ketika Anda mengklik angka pada Keypad, Arduino akan mengaktifkan kotak yang sesuai.

  • Dapatkah saya berganti pemain?

Saat Anda menyalakan kotak, Arduino secara instan akan beralih ke giliran pemain berikutnya.

  • Apakah Arduino mengenali saya saat saya menang?

Ketika seorang pemain menang, Arduino menulis di LED Dot Matrix:

  • "1" jika pemenangnya adalah pemain 1;
  • "2" jika pemenangnya adalah pemain 2.

Setelah game selesai, dapatkah saya memulai ulang Arduino dari tombol?

Anda dapat memulai ulang game jika mengklik tombol "0" pada keypad - Arduino memulai ulang sendiri.

Bagaimana cara mengenali pemain?

Anda dapat dengan mudah mengenali pemain karena meskipun LED Dot Matrix hanya berwarna merah, setiap pemain memiliki pola tertentu yang dibentuk oleh LED 2x2:

  • Pemain 1 memiliki pola ini:"\"
  • Pemain 2 memiliki pola lain ini:"/"

Untuk pertanyaan, saran, kritik atau penjelasan kode, jangan ragu untuk berkomentar di bawah. Jika Anda menyukai proyek ini, tinggalkan suka dan lihat proyek saya yang lain!

Coba buat struktur lain atau sesuaikan struktur saya dan kirimkan fotonya!

Semoga HARImu menyenangkan!

Simone dari Italia <3

Kode

  • Tek-Tris
Tech-TrisC/C++
#include #include #include #include #define Reset_AVR() wdt_enable(WDTO_30MS); while(1) {} LedControl lc=LedControl(12,10,11,1);bool player1=true,q1=false,q2=false,q3=false,q4=false,q5=false,q6=false,q7 =false,q8=false,q9=false;int row,col,rowPlays,colPlays,result,player,winner;char hexaKeys[4][3] ={ {'1','2','3'}, {'4','5','6'}, {'7','8','9'}, {'*','0','#'}};int drama[3][3 ] ={ {0,0,0}, {0,0,0}, {0,0,0}};byte rowPins[4] ={8, 7, 6, 5};byte colPins[3] ={4, 3, 2};Keypad customKeypad =Keypad( makeKeymap(hexaKeys), rowPins, colPins, 4, 3); void setup() { lc.shutdown(0,false); lc.setIntensity(0,0); lc.clearDisplay(0);}void loop() { int customKey =customKeypad.getKey(); lukisan (customKey); menang (hasil); if (pemenang==1) { lc.clearDisplay(0); while (pemenang==1) { char customKey =customKeypad.getKey(); if (customKey=='0') { Reset_AVR(); } lc.setLed(0,1,4,true); lc.setLed(0,2,5,benar); lc.setLed(0,3,6,benar); lc.setLed(0,4,7,benar); lc.setLed(0,4,6,benar); lc.setLed(0,4,5,benar); lc.setLed(0,4,4,true); lc.setLed(0,4,3,benar); lc.setLed(0,4,2,benar); lc.setLed(0,4,1,true); lc.setLed(0,4,0,true); lc.setLed(0,5,0,benar); lc.setLed(0,6,0,benar); lc.setLed(0,3,0,benar); lc.setLed(0,2,0,benar); } } else if (pemenang==2) { lc.clearDisplay(0); while (pemenang==2) { char customKey =customKeypad.getKey(); if (customKey=='0') { Reset_AVR(); } lc.setLed(0,2,0,benar); lc.setLed(0,3,0,benar); lc.setLed(0,4,0,true); lc.setLed(0,5,0,benar); lc.setLed(0,2,1,benar); lc.setLed(0,2,2,benar); lc.setLed(0,2,3,benar); lc.setLed(0,2,4,true); lc.setLed(0,3,4,benar); lc.setLed(0,4,4,true); lc.setLed(0,5,4,true); lc.setLed(0,5,5,benar); lc.setLed(0,5,6,benar); lc.setLed(0,5,7,benar); lc.setLed(0,4,7,benar); lc.setLed(0,3,7,benar); lc.setLed(0,2,7,benar); } }}int round_player() { if (player1) { player1=false; hasil=1; } else { pemain1=benar; hasil=2; } kembalikan hasil;}void win(int player) { if (plays[0][0]==player &&play[0][1]==player &&play[0][2]==player) { winner=pemain; } else if (memainkan[1][0]==pemain &&memainkan[1][1]==pemain &&memainkan[1][2]==pemain) { winner=pemain; } else if (memainkan[2][0]==pemain &&memainkan[2][1]==pemain &&memainkan[2][2]==pemain) { winner=pemain; } else if (memainkan[0][0]==pemain &&memainkan[1][0]==pemain &&memainkan[2][0]==pemain) { winner=pemain; } else if (memainkan[0][1]==pemain &&memainkan[1][1]==pemain &&memainkan[2][1]==pemain) { winner=player; } else if (memainkan[0][2]==pemain &&memainkan[1][2]==pemain &&memainkan[2][2]==pemain) { winner=pemain; } else if (memainkan[0][0]==pemain &&memainkan[1][1]==pemain &&memainkan[2][2]==pemain) { winner=pemain; } else if (memainkan[0][2]==pemain &&memainkan[1][1]==pemain &&memainkan[2][0]==pemain) { winner=pemain; }}void switch_on_led(int col, int row, int colPlays, int rowPlays) { if (player1) { lc.setLed(0,col,row,true); lc.setLed(0,col+1,baris-1,true); } else { lc.setLed(0,kol,baris-1,benar); lc.setLed(0,col+1,baris,benar); } play[rowPlays][colPlays]=round_player();}lukisan kosong(int bottone) { switch (bottone) { case 49:if (!q1){ switch_on_led(0,7,0,0); q1=benar; } merusak; kasus 50:if (!q2) { switch_on_led(3,7,0,1); q2=benar; } merusak; kasus 51:if (!q3) { switch_on_led(6,7,0,2); q3=benar; } merusak; kasus 52:if (!q4) { switch_on_led(0,4,1,0); q4=benar; } merusak; kasus 53:if (!q5) { switch_on_led(3,4,1,1); q5=benar; } merusak; kasus 54:if (!q6) { switch_on_led(6,4,1,2); q6=benar; } merusak; kasus 55:if (!q7) { switch_on_led(0,1,2,0); q7=benar; } merusak; kasus 56:if (!q8) { switch_on_led(3,1,2,1); q8=benar; } merusak; kasus 57:if (!q9) { switch_on_led(6,1,2,2); q9=benar; } merusak; kasus 48:Reset_AVR(); merusak; }}

Skema

tris_1Nd6QnEjNE.fzz

Proses manufaktur

  1. Membuat Monitor Ambilight Menggunakan Arduino
  2. Game Arduino Pong - Tampilan OLED
  3. Giant Animatronics Lego Minfig Operation Game
  4. Detektor Frekuensi Audio
  5. Klon Arduino Tamagotchi - Hewan Peliharaan Digital
  6. Manipulator Saklar Lampu Nirkabel
  7. Sensor Gerakan Pistol Air
  8. Penghitung Waktu Mundur Arduino
  9. Peralatan yang Dikendalikan Suara Bluetooth dengan OK Google
  10. Bunga Matahari Arduino:Penari Matahari Elektronik