- การเชื่อมต่อ 16x2 LCD กับ Raspberry Pi:
- การติดตั้งแพ็คเกจที่จำเป็นสำหรับการสื่อสาร Bluetooth:
- การจับคู่อุปกรณ์กับ Raspberry Pi ผ่านบลูทู ธ :
- แผนภูมิวงจรรวม:
- การพิมพ์ด้วยเสียงบน LCD โดยใช้ Android App BlueTerm:
คุณต้องคุ้นเคยกับการพิมพ์ด้วยเสียงซึ่งมักใช้ในคอมพิวเตอร์และโทรศัพท์มือถือซึ่งคุณสามารถพิมพ์คำใดก็ได้โดยการพูด การพิมพ์ด้วยเสียงมีประโยชน์มากสำหรับผู้พิการหรือผู้ที่ต้องการพิมพ์เร็ว ดังนั้นวันนี้เรามีการดำเนินการเหมือนกันบนจอแสดงผลแอลซีดี 16x2 ที่ข้อความเสียงจะปรากฏบนจอแอลซีดีที่นี่เราใช้ LCD 16x2 แต่การตั้งค่านี้สามารถติดตั้งได้ในหลาย ๆ ที่พร้อมจอแสดงผลที่ใหญ่กว่าเพื่อถ่ายทอดข้อความใด ๆ เช่นที่สนามบินห้างสรรพสินค้าสำนักงาน ฯลฯ
ในโครงการนี้เราจะให้ใส่เสียงโดยใช้แป้นพิมพ์ของ Google Voice ผ่านทาง Android App (BlueTerm) และพิมพ์ข้อความบนจอแอลซีดี 16x2 โดยใช้ราสเบอร์รี่ Pi ที่นี่เราจะพิมพ์ข้อความบน LCD 16x2 โดยใช้ Bluetooth Medium แบบไร้สายและจะใช้ USB Bluetooth dongle กับ Raspberry Pi โดยพื้นฐานแล้วเราต้องใช้อินเทอร์เฟซ LCD 16x2 พร้อม Raspberry Pi และตั้งค่า Bluetooth ใน Raspberry Pi เพื่อรับข้อมูลที่ส่งโดยโทรศัพท์มือถือ เราได้เชื่อมต่อ LCD กับ Raspberry Pi แล้วและเขียนบทช่วยสอนเกี่ยวกับ Bluetooth ด้วย Raspberry Pi คุณสามารถตรวจสอบได้
การเชื่อมต่อ 16x2 LCD กับ Raspberry Pi:
ก่อนที่เราจะดำเนินการกับการตั้งค่าบลูทู ธ เป็นครั้งแรกที่เราจะ ติดต่อ 16x2 LCD พร้อมด้วยราสเบอร์รี่ Pi ในโครงการนี้เราได้ใช้ Adafruit Library ภายนอกเพื่อเชื่อมต่อ LCD 16x2 กับ Raspberry Pi ซึ่งคุณไม่จำเป็นต้องเขียนโค้ดหลายบรรทัดเพื่อขับเคลื่อน LCD และคุณสามารถพิมพ์บน LCD ได้โดยตรงโดยใช้เพียงบรรทัดเดียว รหัส. อย่างไรก็ตามไลบรารีนี้สร้างขึ้นโดย Adafruit แต่สามารถใช้กับโมดูล LCD ใดก็ได้ที่มีคอนโทรลเลอร์ HD44780 หากคุณต้องการเชื่อมต่อ LCD โดยไม่ใช้ไลบรารีภายนอกใด ๆ คุณสามารถตรวจสอบบทช่วยสอนก่อนหน้าของเราเพื่อเชื่อมต่อ LCD ในโหมด 8 บิตและเพื่อเชื่อมต่อ LCD ในโหมด 4 บิต
การใช้ไลบรารี Adafruit อันดับแรกเราจำเป็นต้อง ติดตั้งได้โดยใช้คำสั่งดังต่อไปนี้คำสั่งแรกจะโคลนที่เก็บ CharLCD (โดย Adafruit) บน Raspberry Pi ของคุณคำสั่งที่สองจะนำคุณเข้าไปในไดเร็กทอรีที่ดาวน์โหลดมาและสุดท้ายเราต้องเรียกใช้สคริปต์ setup.py ซึ่งนำเสนอภายในไดเร็กทอรี Adafruit_Python_CharLCD เพื่อติดตั้งไลบรารี
git clone https://github.com/adafruit/Adafruit_Python_CharLCD.git cd./Adafruit_Python_CharLCD sudo python setup.py ติดตั้ง
ตอนนี้ไลบรารีสำหรับ 16x2 LCD ได้รับการติดตั้งแล้วและคุณสามารถใช้ฟังก์ชันต่างๆได้โดยการนำเข้าไลบรารีนี้ในโปรแกรม python ของคุณโดยใช้บรรทัดด้านล่าง:
นำเข้า Adafruit_CharLCD เป็น LCD
มีสคริปต์ตัวอย่างบางส่วนในโฟลเดอร์ 'ตัวอย่าง' ซึ่งอยู่ในโฟลเดอร์ไลบรารี (Adafruit_Python_CharLCD) คุณสามารถทดสอบการตั้งค่าได้โดยเรียกใช้ สคริปต์ตัวอย่างchar_lcd.py แต่ก่อนหน้านั้นคุณต้องเชื่อมต่อพิน LCD กับ Raspberry Pi ตามที่ระบุด้านล่างในแผนภาพวงจรในส่วนถัดไป
คุณยังสามารถเชื่อมต่อ LCD กับพิน GPIO อื่น ๆ ของ Raspberry Pi ได้ทั้งหมดที่คุณต้องพูดถึงพินเชื่อมต่อที่ถูกต้องในโปรแกรม python ของคุณดังต่อไปนี้ เรียนรู้เพิ่มเติมเกี่ยวกับ Raspberry Pi GPIO Pins ที่นี่
# การตั้งค่าขา Raspberry Pi lcd_rs = 18 lcd_en = 23 lcd_d4 = 24 lcd_d5 = 16 lcd_d6 = 20 lcd_d7 = 21 lcd_backlight = 2
ตอนนี้คุณโดยตรงสามารถใช้ ฟังก์ชั่นให้โดย Adafruit ห้องสมุดในการควบคุมหน้าจอ LCD ฟังก์ชั่นบางอย่างได้รับด้านล่าง คุณสามารถค้นหาเพิ่มเติมในสคริปต์ตัวอย่าง:
- lcd.message (ข้อความ) = เพื่อพิมพ์ข้อความบน LCD
- lcd.clear () = เพื่อล้าง LCD
- lcd.set_cursor (col, row) = เลื่อนเคอร์เซอร์ไปที่ตำแหน่งใดก็ได้ที่คอลัมน์และแถว
- lcd.blink (True) = เพื่อกะพริบเคอร์เซอร์ (True หรือ False)
- lcd.move_left () = เพื่อเลื่อนเคอร์เซอร์ไปทางซ้ายทีละตำแหน่ง
- lcd.move_right () = เพื่อเลื่อนเคอร์เซอร์ไปทางขวาทีละตำแหน่ง
ตอนนี้เราจะเชื่อมต่อ Raspberry Pi กับโทรศัพท์สมาร์ท Android โดยใช้ Bluetooth
การติดตั้งแพ็คเกจที่จำเป็นสำหรับการสื่อสาร Bluetooth:
ที่นี่เราจะใช้ราสเบอร์รี่ 2 ชิ้นรุ่น B ที่ไม่ได้มีบลูทู ธ inbuilt ดังนั้นเราจะใช้ง่าย dongle บลูทู ธ USBสำหรับ การตั้งค่าบลูทู ธ ในการสื่อสารราสเบอร์รี่ Pi คุณควรติดตั้งการ์ดหน่วยความจำ Raspbian Jessie พร้อมกับ Raspberry Pi ตรวจสอบบทความนี้เพื่อติดตั้ง Raspbian OS และเริ่มต้นกับ Raspberry Pi ดังนั้นตอนนี้เราต้องอัปเดต Raspbian โดยใช้คำสั่งด้านล่างก่อน:
sudo apt-get update sudo apt-get upgrade
จากนั้นเราต้องติดตั้งแพ็คเกจที่เกี่ยวข้องกับบลูทู ธ บางส่วน:
sudo apt-get ติดตั้งบลูทู ธ blueman bluez
จากนั้นรีบูต Raspberry Pi:
sudo รีบูต
BlueZ เป็นโครงการโอเพ่นซอร์สและสแต็กโปรโตคอล Linux Bluetooth อย่างเป็นทางการ รองรับโปรโตคอล Bluetooth หลักทั้งหมดและตอนนี้กลายเป็นส่วนหนึ่งของ Linux Kernel อย่างเป็นทางการ
Blueman มีอินเทอร์เฟซเดสก์ท็อปเพื่อจัดการและควบคุมอุปกรณ์บลูทู ธ
ในที่สุดเราก็ต้องการ python Library สำหรับการสื่อสารบลูทู ธ เพื่อให้เราสามารถส่งและรับข้อมูลผ่าน RFCOMM โดยใช้ภาษา Python:
sudo apt-get ติดตั้ง python-bluetooth
ติดตั้งไลบรารีรองรับ GPIO สำหรับ Raspberry Pi ด้วย:
sudo apt-get ติดตั้ง python-rpi.gpio
ตอนนี้เราได้ติดตั้งแพ็คเกจที่จำเป็นสำหรับการสื่อสาร Bluetooth ใน Raspberry Pi เรียบร้อยแล้ว
การจับคู่อุปกรณ์กับ Raspberry Pi ผ่านบลูทู ธ:
การจับคู่อุปกรณ์บลูทู ธ เช่นโทรศัพท์มือถือกับ Raspberry Pi นั้นง่ายมาก ที่นี่เราได้ จับคู่โทรศัพท์ Android สมาร์ทของเรากับราสเบอร์รี่ Pi ก่อนหน้านี้เราได้ติดตั้ง BlueZ ใน Pi ซึ่งมียูทิลิตี้บรรทัดคำสั่งที่เรียกว่า " bluetoothctl " เพื่อจัดการอุปกรณ์บลูทู ธ ของเรา แต่ก่อนหน้านั้นให้เชื่อมต่อดองเกิล USB Bluetooth ของคุณกับ Raspberry Pi และตรวจสอบว่าตรวจพบหรือไม่โดยใช้คำสั่งด้านล่าง:
lsusb
ตอนนี้เปิด ยูทิลิตี้ bluetoothctl ตามคำสั่งด้านล่าง:
sudo bluetoothctl
คุณสามารถตรวจสอบคำสั่งทั้งหมดของ bluetoothctl ยูทิลิตี้โดยพิมพ์ ' ช่วย' ตอนนี้เราต้องป้อนคำสั่งด้านล่างตามลำดับที่กำหนด:
# เปิดเครื่อง # ตัวแทนบน # ค้นพบบน # จ่ายได้ใน # สแกนบน
หลังจากคำสั่งสุดท้าย“ scan on ” คุณจะเห็นอุปกรณ์ Bluetooth (โทรศัพท์มือถือ) ของคุณในรายการ ตรวจสอบให้แน่ใจว่ามือถือของคุณเปิดบลูทู ธ และอุปกรณ์ใกล้เคียงมองเห็นได้ จากนั้นคัดลอกที่อยู่ MAC ของอุปกรณ์ของคุณและจับคู่โดยใช้คำสั่งที่กำหนด:
คู่
จากนั้นคุณจะได้รับแจ้งให้ป้อนรหัสผ่านหรือพินในคอนโซลเทอร์มินัลของคุณจากนั้นพิมพ์รหัสผ่านที่นั่นแล้วกด Enter จากนั้นพิมพ์รหัสผ่านเดียวกันในโทรศัพท์มือถือของคุณเมื่อได้รับแจ้งและคุณจับคู่กับ Raspberry Pi เรียบร้อยแล้ว เราได้อธิบายกระบวนการทั้งหมดนี้ในบทช่วยสอนก่อนหน้านี้เกี่ยวกับการควบคุม GPIO ด้วยบลูทู ธ
แผนภูมิวงจรรวม:
การพิมพ์ด้วยเสียงบน LCD โดยใช้ Android App BlueTerm:
ตอนนี้หลังจากปอกเปลือกโทรศัพท์มือถือที่เราจำเป็นต้องติดตั้ง App Android สำหรับการสื่อสารกับราสเบอร์รี่ Pi โดยใช้อะแดปเตอร์บลูทู โปรโตคอล RFCOMM / SPP เลียนแบบการสื่อสารแบบอนุกรมผ่านบลูทู ธ ดังนั้นเราจึงติดตั้งแอป BlueTermที่นี่ ซึ่งรองรับโปรโตคอลนี้
คุณยังสามารถใช้แอพ Bluetooth Terminal อื่น ๆ ที่รองรับการสื่อสารผ่านซ็อกเก็ต RFCOMM
หลังจากดาวน์โหลดและติดตั้งแอพ BlueTerm แล้วให้ เรียกใช้โปรแกรม Python ด้านล่างจากเทอร์มินัลและเชื่อมต่อ อุปกรณ์ raspberrypi ที่ จับคู่ จากแอพ BlueTerm ในเวลาเดียวกัน หลังจากเชื่อมต่อสำเร็จคุณจะเห็นการ เชื่อมต่อ: raspberrypi ที่มุมขวาบนของแอพดังที่แสดงด้านล่าง ตอนนี้ เลือกแป้นพิมพ์ Google Voice Typing และเริ่มพูดมันจะปรากฏบนจอ LCD
โปรแกรม Python สำหรับโครงการนี้มีให้ด้านล่างและสามารถเข้าใจได้ง่าย ส่วนหลักทั่วไปเกี่ยวข้องกับการเขียนโปรแกรม Bluetooth ซึ่งเราได้อธิบายไว้ก่อนหน้านี้ ตรวจสอบส่วนการเขียนโปรแกรมของบทความนี้
เราสามารถขยายโครงการนี้เพิ่มเติมได้โดยใช้ Voice เพื่อควบคุมพิน Raspberry GPIO หรือสามารถใช้จอ LCD / TFT ที่ใหญ่กว่าเพื่อแสดงข้อความที่ใหญ่ขึ้น ตรวจสอบโครงการ Raspberry Pi และบทช่วยสอนก่อนหน้าของเราด้วย