สารบัญ:
2025 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2025-01-13 06:58
คำแนะนำนี้จะแสดงวิธีสร้างจอ LCD ที่แสดงเวลาปัจจุบันและ IP / โฮสต์ของ RPi
เสบียง
- ราสเบอร์รี่ปี่
- การ์ด SD พร้อม raspbian
- การเชื่อมต่อ WiFi
- Geek PI IIC/I2C 2004 2 Arduino UNO Raspberry Pi จอแสดงผล LCD (20x4)
- 4x สายจัมเปอร์ตัวเมียกับตัวเมีย
- คีย์บอร์ดและเมาส์
ขั้นตอนที่ 1: ขั้นตอนที่ 1: การเดินสายไฟ
- ต่อกราวด์พินของ LCD เข้ากับพินกราวด์บน RPi
- เชื่อมต่อพิน VCC ของ LCD กับพิน 5v บน RPi
- เชื่อมต่อพิน SDA ของ LCD กับพิน SDA 2 บน RPi
- เชื่อมต่อพิน SCL ของ LCD กับพิน SCL 3 บน RPi
ตามที่แสดงในภาพ
ขั้นตอนที่ 2: ขั้นตอนที่ 2: การโคลน Git Repo
- บูต RPI
- เปิดเทอร์มินัล
- พิมพ์ต่อไปนี้
sudo apt-get update
sudo apt-get อัพเกรด
โคลน git
sudo รีบูต
ขั้นตอนที่ 3: ขั้นตอนที่ 3: การติดตั้ง Python3
**คุณสามารถข้ามขั้นตอนนี้ได้ หากคุณติดตั้ง PYTHON3 และ PYTHON3-PIP แล้ว**
เพียงป้อนรหัสบรรทัดต่อไปนี้ลงในเทอร์มินัล
sudo apt-get ติดตั้ง python3
sudo apt-get ติดตั้ง python3-pip sudo รีบูต sudo apt-get อัปเดต sudo apt-get อัปเกรดเต็ม
ขั้นตอนที่ 4: ขั้นตอนที่ 4: การทดสอบรหัส
ตอนนี้คุณมีทุกอย่างที่ติดตั้งพร้อมทำงาน ไปที่ตำแหน่งที่มีไฟล์ที่คุณโคลนและพิมพ์:
python3 demo_lcd.py
โปรแกรมนี้แสดงว่า LCD ทำงาน ตอนนี้คุณสามารถเรียกใช้การสาธิตครั้งต่อไป:
python3 demo_clock.py
โปรแกรมนี้รันการตั้งค่านาฬิกาพื้นฐาน เวลาควรปรากฏบนหน้าจอและเปลี่ยนแปลงเมื่อเวลาเปลี่ยนไป
ขั้นตอนที่ 5: ขั้นตอนที่ 5: รหัส
ขั้นตอนนี้จะแสดงวิธีเขียนโค้ดนาฬิกาและโปรแกรม IP python
รหัสเริ่มต้นด้วยการนำเข้าไลบรารีที่เกี่ยวข้องทั้งหมด
นำเข้าไดร์เวอร์แอลซีดี
นำเข้าเวลานำเข้าวันที่นำเข้าซ็อกเก็ตแสดง = lcd.driver.lcd ()
ตอนนี้คุณสามารถรับ IP และชื่อโฮสต์:
testIP = "8.8.8.8"
s = socket.socket (socket. AF_INET, socket. SOCK_DGRAM)
s.connect((testIP, 0))
ipaddr = s.getsockname()[0]
โฮสต์ = socket.gethostname()
รหัสนี้จะได้รับ IP จาก RPi และตั้งเป็น "ipaddr"
ตอนนี้คุณสามารถพิมพ์ข้อความ:
text = str(input("ข้อความเข้า:"))
รหัสนี้ได้รับข้อความบางส่วนจากผู้ใช้ (คุณจะต้องมีแป้นพิมพ์และจอแสดงผลสำหรับสิ่งนี้) ถัดไป คุณสามารถส่งออกทุกอย่างไปยังจอแสดงผล:
ลอง: print("Writing to display") display.lcd_display_string(text, 1) # Write line of text to first line of display display.lcd_display_string(ipaddr, 3) display.lcd_display_string(host, 4) while True: display.lcd_display_string (str(datetime.datetime.now().time()), 2) # เขียนเฉพาะเวลาไปที่หน้าจอ # โปรแกรมแล้ววนซ้ำโดยไม่ชักช้า (สามารถเพิ่มได้ด้วย time.sleep)
ยกเว้น KeyboardInterrupt: # หากมี KeyboardInterrupt (เมื่อคุณกด ctrl+c) ให้ออกจากโปรแกรมและ cleanup print("Cleaning up!") display.lcd_clear()
โค้ดส่วนนี้ส่งออกตัวแปรทั้งหมดไปยังจอแสดงผล LCD และรีเฟรชเวลาตามที่เพิ่มขึ้น