![Arduino Hangman ในมอร์ส: 9 ขั้นตอน Arduino Hangman ในมอร์ส: 9 ขั้นตอน](https://i.howwhatproduce.com/images/004/image-9974-8-j.webp)
สารบัญ:
- ขั้นตอนที่ 1: การตั้งค่าไฟ LED
- ขั้นตอนที่ 2: เพิ่มเซ็นเซอร์วัดแสงชั่วคราว
- ขั้นตอนที่ 3: เพิ่มพจนานุกรมของคุณ
- ขั้นตอนที่ 4: ทำให้ไฟสว่างขึ้นตามค่าเริ่มต้น
- ขั้นตอนที่ 5: การเพิ่มอินพุต
- ขั้นตอนที่ 6: การจัดการอินพุต
- ขั้นตอนที่ 7: มอร์ซิ่งตัวอักษรที่เดาถูกต้อง
- ขั้นตอนที่ 8: ตรวจสอบการตั้งค่าและรีเซ็ตของเรา
- ขั้นตอนที่ 9: ตัวแปรทั้งหมดในภาพเดียว
2025 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2025-01-23 15:12
![Arduino Hangman ในมอร์ส Arduino Hangman ในมอร์ส](https://i.howwhatproduce.com/images/004/image-9974-9-j.webp)
ในบทช่วยสอนนี้ ฉันจะแสดงวิธีตั้งค่า Arduino ของคุณเองเพื่อเล่น Hangman โดยส่งรหัสมอร์สด้วยไฟฉายธรรมดาหรือฟังก์ชันไฟฉายจากโทรศัพท์ของคุณ
สิ่งที่คุณต้องทำคือ: บอร์ด Arduino 10 ไฟ LED สายไฟเพื่อเชื่อมต่อทั้งหมด พิเศษ: องค์ประกอบ Piezo (เพื่อเพิ่มเสียง)
ขั้นตอนที่ 1: การตั้งค่าไฟ LED
![การตั้งค่าไฟ LED การตั้งค่าไฟ LED](https://i.howwhatproduce.com/images/004/image-9974-10-j.webp)
เกม Morse นี้จะใช้ไฟ 4 ดวงเพื่อระบุตัวอักษร 4 ตัวในคำที่ต้องเดา และไฟ 5 ดวงเพื่อระบุชีวิตที่ผู้เล่นเหลือให้เดา ดังนั้นก่อนอื่นคุณจะต้องเชื่อมต่อ 9 LED -ไฟสว่างปกติตามภาพ
ขั้นตอนที่ 2: เพิ่มเซ็นเซอร์วัดแสงชั่วคราว
เราไม่สามารถทุ่มเงินที่ร้านค้าอิเล็กทรอนิกส์ได้ ดังนั้นฉันจึงตัดสินใจที่จะทำให้โครงการนี้ราคาถูก โดยใช้ไฟ LED ธรรมดาเป็นเซ็นเซอร์วัดแสงชั่วคราว
สิ่งที่คุณต้องทำคือเชื่อมต่อด้านบวกของไฟ LED เข้ากับพอร์ตแอนะล็อกพอร์ตใดพอร์ตหนึ่งของคุณ (ในกรณีของฉัน A0) และด้านลบกับพื้นของคุณ
ขั้นตอนที่ 3: เพิ่มพจนานุกรมของคุณ
![เพิ่มพจนานุกรมของคุณ เพิ่มพจนานุกรมของคุณ](https://i.howwhatproduce.com/images/004/image-9974-11-j.webp)
อย่างแรกเลย เรามาเริ่มด้วยการเพิ่มพจนานุกรมประเภทหนึ่งเพื่อแปลตัวอักษรเป็นรหัสมอร์สที่เกี่ยวข้องกัน ในการทำเช่นนี้ เราเพียงแค่สร้างอาร์เรย์ขนาด 26 คูณ 5 โดยที่ช่องแรกของอาร์เรย์รองทุกช่องจะมีตัวอักษรและช่องถัดไปอีก 4 ช่องจะมีรหัสมอร์สที่สอดคล้องกันหรือเว้นวรรคหากไม่มีรหัสเหลืออยู่ ตัวอย่างเช่น ด้วยตัวอักษร s ช่องแรกมี 's' ช่องที่สอง สาม และสี่มี '.' และช่องสุดท้ายมี ' '
ขั้นตอนที่ 4: ทำให้ไฟสว่างขึ้นตามค่าเริ่มต้น
![ทำให้ไฟสว่างขึ้นตามค่าเริ่มต้น ทำให้ไฟสว่างขึ้นตามค่าเริ่มต้น](https://i.howwhatproduce.com/images/004/image-9974-12-j.webp)
![ทำให้ไฟสว่างขึ้นตามค่าเริ่มต้น ทำให้ไฟสว่างขึ้นตามค่าเริ่มต้น](https://i.howwhatproduce.com/images/004/image-9974-13-j.webp)
ในขั้นตอนนี้ เราตรวจสอบให้แน่ใจว่าไฟติดสว่างเมื่อโปรแกรมเริ่มทำงาน และมอร์สเป็นตัวอักษรที่แสดงเมื่อผู้ใช้เดาได้อย่างถูกต้อง (รหัสสำหรับการดำเนินการนี้จะถูกเขียนในขั้นตอนที่ 6) เรายังทำให้แน่ใจว่าจะมีแสงสว่างเพียงพอสำหรับชีวิตที่ผู้เล่นเหลืออยู่
ก่อนหน้านี้ ตรวจสอบให้แน่ใจว่าคุณมีอาร์เรย์ที่ตั้งค่าหมายเลขพอร์ตและจำนวนเต็มเป็น 0 เพื่อแสดงเวลาที่ไฟควรติด ปิด และส่วนใดของมอร์สที่ไฟ LED กำลังแสดงอยู่
ขั้นตอนที่ 5: การเพิ่มอินพุต
![การเพิ่มอินพุต การเพิ่มอินพุต](https://i.howwhatproduce.com/images/004/image-9974-14-j.webp)
ตอนนี้เราจะเขียนรหัสเพื่อตรวจสอบว่าผู้เล่นกำลังส่องแสงบนไฟ LED ที่เชื่อมต่อกับพอร์ตแอนะล็อก A0 ของเราหรือไม่และหากต้องแปลเป็นตัวอักษรที่ถูกต้อง
เพื่อให้แน่ใจว่าค่าที่อ่านได้ถูกต้อง เราจะเฉลี่ยทุกๆ 20 ค่าที่อ่านได้จากไฟ LED และใช้ตัวเลขนั้นเพื่อติดตามว่าไฟดับหรือเปิดอยู่ ในการดำเนินการนี้ เมื่อเริ่มต้นโปรแกรม เราตั้งค่า NUM_AVG เป็นจำนวนครั้งที่ต้องการให้ตรวจสอบแสงก่อนที่จะหาค่าเฉลี่ย ยิ่งตัวเลขนี้สูงเท่าใด การอ่านก็จะยิ่งแม่นยำมากขึ้นเท่านั้น แต่ก็อาจทำให้เกิดความล่าช้าได้เช่นกัน
msBtnPushed แสดงถึงระยะเวลาที่ไฟเปิด for.lastPressed เป็นบูลีนที่ติดตามว่าไฟเปิดอยู่ในลูปก่อนหน้าหรือไม่
ขั้นตอนที่ 6: การจัดการอินพุต
![การจัดการอินพุต การจัดการอินพุต](https://i.howwhatproduce.com/images/004/image-9974-15-j.webp)
![การจัดการอินพุต การจัดการอินพุต](https://i.howwhatproduce.com/images/004/image-9974-16-j.webp)
สำหรับขั้นตอนนี้ เราจะมาดูว่าต้องทำอย่างไรเมื่อเวลาผ่านไปพอสมควรแล้ว เพื่อไม่ให้มีการเพิ่มมอร์สอีก และเราจำเป็นต้องตรวจสอบว่ามอร์สที่ส่งในรูปแบบจดหมายหรือไม่และเป็นจดหมายที่ถูกต้องหรือไม่
ในการทำเช่นนี้ เราจำเป็นต้องมีสตริง wordToGuess ตั้งเป็นคำที่เราต้องการให้ผู้เล่นเดา โดยส่วนตัวฉันมีตัวสร้างตัวเลขสุ่มเพื่อตั้งค่าเป็นคำสุ่มในตอนเริ่มต้น แต่คุณสามารถตั้งค่าเป็นคำเดียวได้
เราต้องตรวจสอบให้แน่ใจว่าตัวนับเพิ่มขึ้นทีละหนึ่งวง มิฉะนั้น โปรแกรมทั้งหมดจะไม่ทำอะไรเลย นอกจากนี้ ฉันได้เพิ่มฟังก์ชันการหน่วงเวลา เพื่อให้แน่ใจว่ามีการวนซ้ำทุกมิลลิวินาที
PS: ฟังก์ชัน Serial.println ทั้งหมดใช้เพื่อการทดสอบเท่านั้น พวกเขาอาจถูกลบเมื่อเสร็จสิ้น
goodTimer และ badTimer เป็นเพียงค่าถ้าคุณวางแผนที่จะใช้องค์ประกอบ Piezo เพื่อเพิ่มเสียง หากคุณต้องการทำเช่นนั้น คุณต้องเพิ่มรหัสในภาพที่สองซึ่งเล่นเสียง
ขั้นตอนที่ 7: มอร์ซิ่งตัวอักษรที่เดาถูกต้อง
![Morsing จดหมายที่เดาถูกต้อง Morsing จดหมายที่เดาถูกต้อง](https://i.howwhatproduce.com/images/004/image-9974-17-j.webp)
ตามที่ได้สัญญาไว้ก่อนหน้านี้ ในขั้นตอนนี้ เราจะทำไฟที่แสดงถึงตัวอักษรที่เดาได้ถูกต้อง มอร์ส จดหมายของพวกเขา
สำหรับสิ่งนี้ ฉันได้เขียนสองฟังก์ชัน: morseThis และ nextLetter มันใช้ตัวเลขที่เราได้ตั้งค่าไว้ก่อนหน้านี้ในอาร์เรย์ตัวจับเวลาของเรา และเปลี่ยนแปลงตามส่วนใดของรหัสมอร์สที่มันกำลังส่องแสงอยู่
หากตัวจับเวลาถึงเวลาที่ไฟควรติด ก็แค่เปิดไฟและรันโค้ดเพื่อตั้งเวลาใหม่ให้ปิดและเปิดไฟใหม่อีกครั้ง หากตัวจับเวลาไปถึงส่วนที่แสงควรถอยหลัง ปิดไฟแล้วตั้งรหัสเพื่อแสดงส่วนถัดไปของตัวอักษร หากไม่มีภาคต่อ ให้รีเซ็ตเป็นภาคแรก
ขั้นตอนที่ 8: ตรวจสอบการตั้งค่าและรีเซ็ตของเรา
![ตรวจสอบการตั้งค่าและรีเซ็ตของเรา ตรวจสอบการตั้งค่าและรีเซ็ตของเรา](https://i.howwhatproduce.com/images/004/image-9974-18-j.webp)
แน่นอนว่าโปรแกรมจะไม่ทำงานหากไม่ได้ตั้งค่าไฟเป็นเอาต์พุตและอินพุต ฉันยังเพิ่มตัวสร้างตัวเลขสุ่มเพื่อเพิ่มคำจากรายการคำที่ฉันใส่ในอาร์เรย์ที่เรียกว่า wordToGuess
นอกจากนั้น เราควรเพิ่มฟังก์ชันรีเซ็ตและตรวจดูให้แน่ใจว่าค่าทั้งหมดถูกรีเซ็ตเป็นค่าเริ่มต้น
ขั้นตอนที่ 9: ตัวแปรทั้งหมดในภาพเดียว
![ตัวแปรทั้งหมดในภาพเดียว ตัวแปรทั้งหมดในภาพเดียว](https://i.howwhatproduce.com/images/004/image-9974-19-j.webp)
สุดท้าย คุณอาจใช้สิ่งนี้เพื่อตรวจสอบว่าคุณมีตัวแปรที่จำเป็นทั้งหมดตั้งค่าไว้อย่างถูกต้องหรือไม่
ตอนนี้สนุกกับการเล่นเพชฌฆาตในมอร์ส!
แนะนำ:
การออกแบบเกมในการสะบัดใน 5 ขั้นตอน: 5 ขั้นตอน
![การออกแบบเกมในการสะบัดใน 5 ขั้นตอน: 5 ขั้นตอน การออกแบบเกมในการสะบัดใน 5 ขั้นตอน: 5 ขั้นตอน](https://i.howwhatproduce.com/images/001/image-2360-j.webp)
การออกแบบเกมในการสะบัดใน 5 ขั้นตอน: การตวัดเป็นวิธีง่ายๆ ในการสร้างเกม โดยเฉพาะอย่างยิ่งเกมปริศนา นิยายภาพ หรือเกมผจญภัย
การตรวจจับใบหน้าบน Raspberry Pi 4B ใน 3 ขั้นตอน: 3 ขั้นตอน
![การตรวจจับใบหน้าบน Raspberry Pi 4B ใน 3 ขั้นตอน: 3 ขั้นตอน การตรวจจับใบหน้าบน Raspberry Pi 4B ใน 3 ขั้นตอน: 3 ขั้นตอน](https://i.howwhatproduce.com/images/002/image-5374-j.webp)
การตรวจจับใบหน้าบน Raspberry Pi 4B ใน 3 ขั้นตอน: ในคำแนะนำนี้ เราจะทำการตรวจจับใบหน้าบน Raspberry Pi 4 ด้วย Shunya O/S โดยใช้ Shunyaface Library Shunyaface เป็นห้องสมุดจดจำใบหน้า/ตรวจจับใบหน้า โปรเจ็กต์นี้มีจุดมุ่งหมายเพื่อให้เกิดความเร็วในการตรวจจับและจดจำได้เร็วที่สุดด้วย
วิธีการติดตั้งปลั๊กอินใน WordPress ใน 3 ขั้นตอน: 3 ขั้นตอน
![วิธีการติดตั้งปลั๊กอินใน WordPress ใน 3 ขั้นตอน: 3 ขั้นตอน วิธีการติดตั้งปลั๊กอินใน WordPress ใน 3 ขั้นตอน: 3 ขั้นตอน](https://i.howwhatproduce.com/images/004/image-9009-j.webp)
วิธีการติดตั้งปลั๊กอินใน WordPress ใน 3 ขั้นตอน: ในบทช่วยสอนนี้ ฉันจะแสดงขั้นตอนสำคัญในการติดตั้งปลั๊กอิน WordPress ให้กับเว็บไซต์ของคุณ โดยทั่วไป คุณสามารถติดตั้งปลั๊กอินได้สองวิธี วิธีแรกคือผ่าน ftp หรือผ่าน cpanel แต่ฉันจะไม่แสดงมันเพราะมันสอดคล้องกับ
การลอยแบบอะคูสติกด้วย Arduino Uno ทีละขั้นตอน (8 ขั้นตอน): 8 ขั้นตอน
![การลอยแบบอะคูสติกด้วย Arduino Uno ทีละขั้นตอน (8 ขั้นตอน): 8 ขั้นตอน การลอยแบบอะคูสติกด้วย Arduino Uno ทีละขั้นตอน (8 ขั้นตอน): 8 ขั้นตอน](https://i.howwhatproduce.com/images/007/image-19534-j.webp)
การลอยแบบอะคูสติกด้วย Arduino Uno ทีละขั้นตอน (8 ขั้นตอน): ตัวแปลงสัญญาณเสียงล้ำเสียง L298N Dc ตัวเมียอะแดปเตอร์จ่ายไฟพร้อมขา DC ตัวผู้ Arduino UNOBreadboardวิธีการทำงาน: ก่อนอื่น คุณอัปโหลดรหัสไปยัง Arduino Uno (เป็นไมโครคอนโทรลเลอร์ที่ติดตั้งดิจิตอล และพอร์ตแอนะล็อกเพื่อแปลงรหัส (C++)
Arduino ที่ถูกที่สุด -- Arduino ที่เล็กที่สุด -- Arduino Pro Mini -- การเขียนโปรแกรม -- Arduino Neno: 6 ขั้นตอน (พร้อมรูปภาพ)
![Arduino ที่ถูกที่สุด -- Arduino ที่เล็กที่สุด -- Arduino Pro Mini -- การเขียนโปรแกรม -- Arduino Neno: 6 ขั้นตอน (พร้อมรูปภาพ) Arduino ที่ถูกที่สุด -- Arduino ที่เล็กที่สุด -- Arduino Pro Mini -- การเขียนโปรแกรม -- Arduino Neno: 6 ขั้นตอน (พร้อมรูปภาพ)](https://i.howwhatproduce.com/images/003/image-6862-42-j.webp)
Arduino ที่ถูกที่สุด || Arduino ที่เล็กที่สุด || Arduino Pro Mini || การเขียนโปรแกรม || Arduino Neno:…………………………… โปรดสมัครสมาชิกช่อง YouTube ของฉันสำหรับวิดีโอเพิ่มเติม……. โปรเจ็กต์นี้เกี่ยวกับวิธีเชื่อมต่อ Arduino ที่เล็กที่สุดและถูกที่สุดเท่าที่เคยมีมา Arduino ที่เล็กที่สุดและถูกที่สุดคือ arduino pro mini คล้ายกับ Arduino