สารบัญ:

Rasberry Pi Zero W พร้อม Arduino TfT (ili9341): 3 ขั้นตอน
Rasberry Pi Zero W พร้อม Arduino TfT (ili9341): 3 ขั้นตอน

วีดีโอ: Rasberry Pi Zero W พร้อม Arduino TfT (ili9341): 3 ขั้นตอน

วีดีโอ: Rasberry Pi Zero W พร้อม Arduino TfT (ili9341): 3 ขั้นตอน
วีดีโอ: RetroPie on a Raspberry Pi Zero at 50FPS on an SPI LCD Screen With ILI9341 Driver 2024, มิถุนายน
Anonim
Rasberry Pi Zero W พร้อม Arduino TfT (ili9341)
Rasberry Pi Zero W พร้อม Arduino TfT (ili9341)

ดังนั้น หลังจากสัปดาห์ของการวิจัย การดีบัก และการทดสอบ ในที่สุดฉันก็ได้ SeedStudio 2.8 Arduino TfT ที่ทำงานบน RasPi 0 W ของฉันกับ Kivy และ GPIO เพื่อสร้างนาฬิกาอัจฉริยะหรืออุปกรณ์แสดงผลขนาดเล็ก เมื่อเห็นว่าข้อมูลที่จำเป็นทั้งหมดกระจัดกระจาย ฉันคิดว่าฉันจะรวบรวมบางสิ่งบางอย่างโดยเริ่มจากการเดินสายไฟในหลาย ๆ เว็บไซต์ โปรดทราบว่าอินเทอร์เฟซแบบสัมผัสไม่ทำงานและต้องใช้พินอะนาล็อก 0-3 ฉันอาจจะทำให้มันใช้งานได้ในภายหลัง

ฉันใช้ Raspberry Pi Stretch อย่างเป็นทางการและสมมติว่าคุณมีดิสก์อิมเมจในไดรฟ์ usb แล้ว ฉันยังไม่ได้ทดสอบกับ Jessie หรือ distro อื่น ๆ ฉันยังสมมติว่าคุณมีความรู้ทั่วไปเกี่ยวกับการบัดกรี อุปกรณ์อิเล็กทรอนิกส์พื้นฐาน และความรู้เกี่ยวกับลินุกซ์

บทแนะนำนี้จะเริ่มต้นราวกับว่าคุณได้ติดตั้ง Stretch ใหม่

ขั้นตอนที่ 1: ขั้นตอนที่ 1: การเดินสายไฟ

ขั้นตอนที่ 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 หรือยกเลิกการแสดงเครื่องหมายโอเวอร์สแกน หากคุณมีขอบสีดำ

แนะนำ: