- ส่วนประกอบที่ใช้:
- โมดูลบลูทู ธ HC-05
- การเขียนโปรแกรม Arduino UNO สำหรับคำสั่ง AT:
- การกำหนดค่า HC05 ในโหมดคำสั่ง AT:
- การเชื่อมต่อวงจรสำหรับ
ในขณะที่ทำโปรเจ็กต์โดยใช้ Arduino เราจำเป็นต้องเชื่อมต่อ Arduino กับพีซีเสมอเพื่ออัปโหลดโปรแกรมในนั้น แต่บางครั้งมันก็อึดอัดมากที่ต้องเชื่อมต่อบอร์ดกับพีซีราวกับว่ามันเป็นโปรเจ็กต์หุ่นยนต์คุณต้องย้ายหุ่นยนต์ไปใกล้กับห้องปฏิบัติการเพื่อตั้งโปรแกรมใหม่เสมอ ปัญหานี้สามารถแก้ไขได้โดยการตั้งโปรแกรม Arduino แบบไร้สาย ดังนั้นที่นี่เรากำลังสร้างวงจรไปยังโปรแกรม Arduino แบบไร้สายบลูทู ธ ใช้โมดูล HC-05
ส่วนประกอบที่ใช้:
- Arduino UNO
- โมดูลบลูทู ธ HC05
- Perfboard
- ส่วนหัวชายหญิง
- จัมเปอร์
- ตัวต้านทาน 1K, 2.2K
- ตัวเก็บประจุ 0.1uF
- แบตเตอรี่ 9V
โมดูลบลูทู ธ HC-05
HC05 นั้นเป็นโมดูลบลูทู ธ ที่รองรับ Serial Port Protocol (SPP) และนิยมใช้ในแอพพลิเคชั่นไร้สายจำนวนมาก HC05 สามารถใช้เพื่อสลับระหว่างโหมดหลักและโหมดทาสและมีระยะการส่งข้อมูล 20-30 เมตรในพื้นที่ว่าง ก่อนหน้านี้เราได้ทำโครงการบลูทู ธ มากมายโดยใช้ HC-05 และโมดูลบลูทู ธ อื่น ๆ
ปักหมุด:
คำอธิบายพิน:
- + 5V:ขาจ่ายไฟของ HC05 ซึ่งสามารถรับได้ด้วย + 5V
- GND:พินกราวด์
- TX:ใช้เป็นพินเครื่องส่งสัญญาณใน UART
- RX:ใช้เป็นพินตัวรับใน UART
- EN / KEY:เปิดใช้งานพินของ HC05 สามารถปล่อยให้อยู่ในสถานะลอยหรือสามารถเชื่อมต่อกับแหล่งจ่าย 3.3V เพื่อเปิดใช้งาน HC05 หากเชื่อมต่อกับกราวด์โมดูลจะถูกปิดใช้งาน นอกจากนี้ยังใช้เพื่อสร้าง HC05 ในโหมดคำสั่ง AT
- STATE:สถานะพินซึ่งเป็น LOW ในกรณีที่ไม่ได้เชื่อมต่อกับอุปกรณ์ใด ๆ และสูงเมื่อเชื่อมต่อกับอุปกรณ์ใด ๆ
การเขียนโปรแกรม Arduino UNO สำหรับคำสั่ง AT:
ก่อนอื่นเราต้องตั้งโปรแกรม Arduino ให้ตอบสนองต่อคำสั่ง ATผ่าน Serial monitor โปรแกรมนั้นง่ายมากและแนบมาในตอนท้ายของบทช่วยสอนนี้เรากำลังอธิบายโปรแกรมทีละบรรทัดที่นี่
ขั้นแรกให้รวมไฟล์ส่วนหัวสำหรับไลบรารีอนุกรมของซอฟต์แวร์และกำหนดพินตัวส่งและตัวรับสำหรับอนุกรมซอฟต์แวร์ใน Arduino ซึ่งเป็นพิน 3 และ 2 ในกรณีนี้
# รวม
ถัดไปในฟังก์ชันการตั้งค่ากำหนดอัตรารับส่งข้อมูลสำหรับพอร์ตอนุกรมฮาร์ดแวร์และพอร์ตอนุกรมของซอฟต์แวร์ ที่นี่เราได้นำมาเป็น 9600 และ 38400 ตามลำดับ
การตั้งค่าเป็นโมฆะ () {Serial.begin (9600); Serial.println ("ป้อนคำสั่ง AT:"); HC05.begin (38400); }
ในฟังก์ชันลูปมีสองเงื่อนไข - หนึ่งคือเมื่อกำหนดคำสั่งใด ๆ ให้กับ HC05 และจะเขียนไว้ที่ Arduino serial Monitor เงื่อนไขอีกประการหนึ่งคือเมื่อมีคำสั่งใด ๆ ที่ Arduino serial monitor และจะส่งไปยัง HC05
เป็นโมฆะ loop () {if (HC05.available ()) Serial.write (HC05.read ()); ถ้า (Serial.available ()) HC05.write (Serial.read ()); }
การกำหนดค่า HC05 ในโหมดคำสั่ง AT:
ก่อนอื่นให้เชื่อมต่อส่วนประกอบตามแผนภาพวงจรด้านล่าง จากนั้นทำตามขั้นตอนด้านล่างเพื่อให้โมดูลอยู่ในโหมดคำสั่ง AT
ในการเข้าสู่โหมด AT ของ HC05 เราต้องใช้ปุ่ม KEY ก่อนอื่นให้กดปุ่มปุ่มค้างไว้จนกระทั่งไฟ LED ของโมดูลเริ่มกะพริบในช่วงเวลา 2 วินาที หากไฟ LED เริ่มกะพริบทุกๆ 2 วินาทีหมายความว่าโมดูลอยู่ในโหมดคำสั่ง ตอนนี้เราสามารถให้คำสั่ง AT ได้โดยใช้ Serial monitor ของ Arduino IDE
หากโมดูลไม่มีปุ่มคีย์ใด ๆ เราสามารถเชื่อมต่อพิน KEY / EN ของโมดูลกับพิน 3.3 โวลต์เพื่อสลับโมดูลในโหมดคำสั่ง
คำสั่ง AT เพื่อกำหนดค่า HC05 สำหรับการเขียนโปรแกรมไร้สาย:
เมื่ออัปโหลดร่างไปยัง Arudino แล้วให้เปิดมอนิเตอร์แบบอนุกรมที่อัตรารับส่งข้อมูล 9600 เลือก CR + NL และคุณจะสามารถส่งคำสั่ง AT ไปยัง HC-05
หลังจากทำตามขั้นตอนข้างต้นสำเร็จแล้วให้ส่งคำสั่ง AT ที่เหมาะสมเพื่อกำหนดค่า HC05 ส่งคำสั่ง AT ต่อไปนี้ทีละคำสั่งที่ Arduino serial Monitor และในทางกลับกันควรตอบตกลง มิฉะนั้นให้ตรวจสอบการเชื่อมต่ออีกครั้งแล้วลองอีกครั้ง
ที่
เป็นคำสั่งทดสอบพื้นฐานของ HC05 ทุกครั้งที่ส่ง AT จะต้องส่งคืน OK
ที่ + ORGL
คำสั่งนี้จะคืนค่าการตั้งค่าเริ่มต้นของ HC05 การตั้งค่าเริ่มต้นสำหรับโหมดทาสรหัสผ่าน = 1234 และอัตราการส่งข้อมูล = 38400 บิต / วินาที
ที่ + ชื่อ = วงจร DIGEST
คำสั่งนี้จะตั้งชื่อโมดูล HC05 ในกรณีของฉันฉันตั้งชื่อเป็น "CIRCUIT DIGEST"
ที่ + ROLE = 0
คำสั่งนี้จะกำหนดค่า HC05 ในโหมดทาส
ที่ + POLAR = 1,0
คำสั่งนี้ตั้งค่าการกำหนดค่าไดรฟ์ LED ของ PIO
ที่ + UART = 115200,0,0
สิ่งนี้จะเปลี่ยนอัตราการส่งข้อมูลเป็น 115200 โดยมี 0 บิตหยุดและ 0 พาริตี
ที่ + INIT
สิ่งนี้จะเริ่มต้นโปรไฟล์ SPP ของโมดูล
การเชื่อมต่อวงจรสำหรับ
หลังจากส่งคำสั่ง AT ไปยัง Arduino สำเร็จแล้วเพียงแค่ลบการเชื่อมต่อทั้งหมดและสร้างใหม่ตามแผนผังด้านล่าง
ในกรณีของฉันฉันได้บัดกรีมันบนเพอร์บอร์ดเพื่อให้สามารถติดตั้งพิน Arduino ได้ง่ายและสามารถทำงานเป็น Arduino Shield หลังจากการบัดกรีเสร็จสิ้นจะมีลักษณะดังนี้:
จากนั้นวางสิ่งนี้ไว้บน Arduino ตามภาพด้านล่างจากนั้นเชื่อมต่อ Arduino กับแหล่งจ่ายไฟแบตเตอรี่ 9V
หลังจากนั้นค้นหาการตั้งค่าบลูทู ธ ในพีซีของคุณแล้วคลิกเพิ่มอุปกรณ์บลูทู ธสิ่งนี้จะสแกนหาอุปกรณ์ใหม่และในผลลัพธ์เราจะได้รับอุปกรณ์บลูทู ธ ของเรา เลือกอุปกรณ์และคลิกถัดไปคลิกที่“ ป้อนรหัสอุปกรณ์จับคู่”ตัวเลือก เมื่อมันขอรหัสการจับคู่ให้ป้อน“ 1234” เป็นรหัสผ่านของคุณ จากนั้นคุณจะได้รับการตอบรับสำหรับการจับคู่อุปกรณ์ที่ประสบความสำเร็จ
หลังจากจับคู่อุปกรณ์สำเร็จแล้วให้ดำเนินการค้นหาพอร์ต COM สำหรับโมดูลบลูทู ธ HC05 ต่อไป สำหรับเรื่องนี้ค้นหาเปลี่ยนการตั้งค่าบลูทู ธแล้วคลิกที่แท็บพอร์ต COMนี่จะแสดงพอร์ต COM สองพอร์ตหนึ่งพอร์ตสำหรับขาเข้าและอีกพอร์ตสำหรับขาออก เราต้องจดหมายเลขพอร์ต COM ขาออกตามที่ต้องการเพิ่มเติมขณะอัปโหลดโปรแกรม
ขั้นตอนสุดท้ายคือการอัปโหลดโปรแกรมตัวอย่างไปยัง Arduino แบบไร้สายเพื่อตรวจสอบสภาพอากาศArduino Wireless Programmingว่าทำงานได้อย่างสมบูรณ์หรือไม่ สำหรับสิ่งนี้ให้เลือกโปรแกรม Arduino จากโปรแกรมตัวอย่าง Arduino IDE ที่นี่ฉันได้เลือกโปรแกรมกะพริบ LED เลือก Arduino UNO ในบอร์ดจากนั้นเลือกพอร์ต COM ที่ถูกต้องในพอร์ตดังที่แสดงด้านบน หลังจากนั้นคลิกที่ปุ่มอัปโหลดและควรอัปโหลดไปยังบอร์ด Arduino ของคุณสำเร็จ
ตรวจสอบวิดีโอสาธิตด้านล่างและเพลิดเพลินกับการเขียนโปรแกรมแบบไร้สายและไม่ยุ่งยาก !!!