สารบัญ:
2025 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2025-01-13 06:58
ดังนั้น หลังจากสัปดาห์ของการวิจัย การดีบัก และการทดสอบ ในที่สุดฉันก็ได้ SeedStudio 2.8 Arduino TfT ที่ทำงานบน RasPi 0 W ของฉันกับ Kivy และ GPIO เพื่อสร้างนาฬิกาอัจฉริยะหรืออุปกรณ์แสดงผลขนาดเล็ก เมื่อเห็นว่าข้อมูลที่จำเป็นทั้งหมดกระจัดกระจาย ฉันคิดว่าฉันจะรวบรวมบางสิ่งบางอย่างโดยเริ่มจากการเดินสายไฟในหลาย ๆ เว็บไซต์ โปรดทราบว่าอินเทอร์เฟซแบบสัมผัสไม่ทำงานและต้องใช้พินอะนาล็อก 0-3 ฉันอาจจะทำให้มันใช้งานได้ในภายหลัง
ฉันใช้ Raspberry Pi Stretch อย่างเป็นทางการและสมมติว่าคุณมีดิสก์อิมเมจในไดรฟ์ usb แล้ว ฉันยังไม่ได้ทดสอบกับ Jessie หรือ distro อื่น ๆ ฉันยังสมมติว่าคุณมีความรู้ทั่วไปเกี่ยวกับการบัดกรี อุปกรณ์อิเล็กทรอนิกส์พื้นฐาน และความรู้เกี่ยวกับลินุกซ์
บทแนะนำนี้จะเริ่มต้นราวกับว่าคุณได้ติดตั้ง Stretch ใหม่
ขั้นตอนที่ 1: ขั้นตอนที่ 1: การเดินสายไฟ
จอแสดงผล SeedStudio 2.8 TfT สำหรับ Arduino จะใช้ 8 สายเพื่อเชื่อมต่อจอแสดงผลกับ RasPi โดยใช้อินเทอร์เฟซ SPI
หมายเหตุ: หากคุณไม่มีสาย mini HDMI คุณสามารถใช้หมุด "TV" แบบคอมโพสิตที่อยู่เหนือพอร์ต USB และต่อปลั๊กแบบบาร์เรลขนาดเล็กเข้ากับหมุดได้ หมุดสี่เหลี่ยมเป็นค่าบวก หมุดกลมเป็นค่าลบ ด้วยขั้วต่อตัวเมีย ให้บัดกรีขั้วบวกกับด้าม (ตรงกลาง) ของปลั๊กกระบอกและขั้วลบกับเคส ที่ด้านปลายตัวผู้ ให้หาว่าสายใดเป็นเคส (ใช้โอห์มมิเตอร์) แล้วบัดกรีให้เข้ากับกราวด์ของปลั๊ก RCA ต่อสายที่เหลือทั้งสองเข้าด้วยกัน เปิด Pi เพื่อทดสอบว่าใช้งานได้หรือไม่
เมื่อ pi เริ่มทำงานแล้วให้อัปเดต Pi ด้วย:
sudo rpi-update
อัปเดต sudo
sudo อัพเกรด
ดังนั้นในการต่อจอแสดงผลนี้ให้เชื่อมต่อสิ่งต่อไปนี้:
Arduino TfT พินเป็นพิน RasPi
MOSI D11 ถึง GPIO 10 (SPI_MOSI) MISO D12 ถึง GPIO 09 (SPI_MISO)
SCK D13 ถึง GPIO 11 (SPI_CLK)
TFT_CS D5 ถึง GPIO 08 (SPI_CE0_N)
TFT_DC D6 ถึง GPIO 24
รางไฟ 5V ถึง 5 โวลต์
Gnd สู่พื้น
รีเซ็ตเป็น GPIO 23
นอกจากนี้ คุณสามารถประสานจัมเปอร์ที่ด้านหลังที่มีป้ายกำกับว่า "แบ็คไลท์" และต่อสายเพิ่มเติมจาก TfT บนพิน D7 กับพินใดๆ บน RasPi เพื่อควบคุมไฟแบ็คไลท์
ขั้นตอนที่ 2: ขั้นตอนที่ 2: การตั้งค่า Raspberry Pi
เปิด Pi และเปิดเทอร์มินัล CTRL+ALT+T เป็นปุ่มลัด
ประเภท: sudo raspi-config
เลื่อนลงไปที่ตัวเลือกการเชื่อมต่อและเลือก SPI แล้วกด Enter เลือก "ใช่" เพื่อเปิดใช้งาน หากระบบขอให้รีบูตให้เลือกไม่ นอกจากนี้ในขณะที่อยู่ในเมนูนี้เปิดใช้งาน SSH รหัสผ่านเริ่มต้นคือราสเบอร์รี่ หากต้องการ SSH ลงใน Pi ให้พิมพ์ pi@Raspberry หรือสิ่งที่คุณเคยตั้งชื่อคุณว่า Pi บนคอมพิวเตอร์เครื่องอื่น
ประเภทถัดไป: sudo nano /boot/config.txt
เลื่อนลงไปที่ตำแหน่งที่ระบุว่า "framebuffer_width" และ "framebuffer_height" เปลี่ยนค่าเป็น 680 และ 420 ตามลำดับ และยกเลิกการใส่เครื่องหมายบรรทัดเหล่านั้น
ภายใต้นั้นจะมี "hdmi_group/_mode" ยกเลิกการใส่ความคิดเห็นเหล่านั้นและเปลี่ยนค่าเป็น 2 และ 87 ตามลำดับ และเพิ่ม "hdmi_cvt=680 420 60 1 0 0 0" เป็นบรรทัดใหม่
เลื่อนลงอีกครั้งจนกว่าจะถึง "dtparam=i2c_arm=on" และ "dtparam=spi=on" ยกเลิกการใส่ความคิดเห็นสองบรรทัดนั้น
ตอนนี้ที่ด้านล่างเพิ่มบรรทัดเหล่านี้:
dtoverlay=rpi-display #(แทนที่ด้วยอันที่ใช้งานได้กับไดรเวอร์ของคุณ ฉันใช้ ili9341 อุปกรณ์ GitHub dtoverlay)
dtparam=rotate90 #(0 เป็นแนวตั้ง)
dtparam=speed=48000000
dtparam=xohms=100
dtparam=debug=4
gpu_mem=64
กด CTRL+X จากนั้นกด Y แล้ว Enter เพื่อบันทึกไฟล์
ถัดไป: sudo nano /boot/cmdline.txt ที่ท้ายบรรทัด เพิ่ม: fbcon=map:10 fbcon=font:ProFont6x11
สุดท้าย: sudo nano /etc/modules
เพิ่ม: spi-bcm2835
snd-bcm2835
i2c-bcm2708
flexfb
fbtft_device
หากคุณทำทุกอย่างถูกต้อง แทนที่จะเป็นหน้าจอสีขาวตลอดเวลา หลังจากที่บูตเคอร์เนลเสร็จสิ้น คุณจะเห็นหน้าจอสีดำบน TfT นี่เป็นข่าวดีและหมายความว่า RasPi กำลังสื่อสารกับ TfT ผ่านอินเทอร์เฟซ SPI นอกจากนี้ คุณอาจเห็นหน้าจอการโหลดการบูตบน TfT เอง
ขั้นตอนที่ 3: ขั้นตอนที่ 3: Fbturbo Config และ FBCP Install
ตอนนี้หากคุณต้องการทดสอบและตรวจสอบให้แน่ใจว่า TfT สะท้อนการแสดงผล
ประเภท: sudo nano /usr/share/X11/xorg.conf.d/99-fbturbo.conf
ตำแหน่งที่ระบุว่า "ตัวเลือก "fbdev" "/dev/fb0"
เปลี่ยน "0" เป็น "1" ตอนนี้จะพอร์ตจอแสดงผล HDMI ไปที่หน้าจอ TfT เพียงรีบูต Pi และควรโหลดเดสก์ท็อปลงใน TfT เปลี่ยนกลับเป็น "0" และทำการสอนต่อ
ตอนนี้ เราต้องติดตั้ง cmake เพื่อคอมไพล์ fbcp และ fbcp เพื่ออนุญาตให้ทำการมิเรอร์ HDMI ไปยังอินเทอร์เฟซ SPI
ดังนั้น: sudo apt-get install cmake
เมื่อเสร็จแล้ว: sudo git clone
mkdir build
cd build
cmake /home/pi/rpi-fbcp (หรือที่ใดก็ตามที่คุณดาวน์โหลดไฟล์ rpi-fbcp ไป)
ทำ
sudo ติดตั้ง fbcp /usr/local/bin/fbcp
เมื่อเสร็จแล้วหากคุณพิมพ์ "fbcp &" TfT ควรสะท้อนเดสก์ท็อปของคุณ
หากต้องการให้มันทำงานบนบูต ให้แก้ไขไฟล์ rc.local โดย: sudo nano /etc/rc.local คุณสามารถลบคำสั่ง "if" ที่ไม่จำเป็นและเพิ่ม "fbcp &" เข้าที่ ออกจากทางออก 0 ที่ด้านล่าง
หลังจากทำตามขั้นตอนทั้งหมดเรียบร้อยแล้ว จอแสดงผล TfT ของคุณควรเริ่มทำงานและเริ่มทำงานโดยอัตโนมัติหลังจากบู๊ต คุณสามารถเปลี่ยนขนาดการแสดงผลใน /boot/config.txt หรือยกเลิกการแสดงเครื่องหมายโอเวอร์สแกน หากคุณมีขอบสีดำ