สารบัญ:
- ขั้นตอนที่ 1: ฮาร์ดแวร์
- ขั้นตอนที่ 2: การเชื่อมต่อ
- ขั้นตอนที่ 3: ขั้นตอนที่ 1. ตั้งค่าไลบรารี
- ขั้นตอนที่ 4: ขั้นตอนที่ 2. รีเซ็ตและเริ่มต้น
- ขั้นตอนที่ 5: ขั้นตอนที่ 3 เขียนอักขระทดสอบ
- ขั้นตอนที่ 6: ขั้นตอนที่ 4 ล้าง LCD
- ขั้นตอนที่ 7: ขั้นตอนที่ 5. พิมพ์ Text
- ขั้นตอนที่ 8: ขั้นตอนที่ 6 การอ่านจาก LCD
- ขั้นตอนที่ 9: ทำมากขึ้น
วีดีโอ: HD44780 บอร์ดอะแดปเตอร์ LCD เป็น I2C สำหรับ Bus Pirate: 9 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:09
LCD ตัวอักษรราคาถูกที่ใช้ชิปเซ็ต HD44780 มีหลายขนาด: 2x16, 4x20 เป็นต้น จอแสดงผลเหล่านี้มีโหมดอินเทอร์เฟซมาตรฐานสองโหมด คือ 4 บิตและ 8 บิตแบบขนาน 8bit ต้องการทั้งหมด 11 สายข้อมูล 4bit ต้องการ 7 (6 สำหรับการเขียนเท่านั้น) LCD บางรุ่นรองรับโหมดข้อมูลซีเรียลเพิ่มเติม เช่น VFD I ที่ครอบคลุมใน Hack a Day โดยทั่วไปแล้ว HD44780 LCD จะเป็นชิ้นส่วน 5 โวลต์ที่มีแหล่งจ่ายไฟแยกต่างหากสำหรับไฟด้านหลัง Bus Pirate มีพิน I/O ที่ทนทานต่อ 5 โวลต์เท่านั้น ดังนั้นเราจึงสร้างบอร์ดอะแดปเตอร์ขนาดเล็กที่มีพินเพียงพอสำหรับควบคุม LCD Bus Pirate ควบคุมบอร์ดอะแดปเตอร์ผ่านไลบรารีอินเทอร์เฟซ LCD อ่านต่อไปเกี่ยวกับบอร์ดอะแดปเตอร์ LCD ตัวละคร Bus Pirate HD44780 และไลบรารีอินเทอร์เฟซ ฉันสามารถมี PCB, ชุดอุปกรณ์ หรือชุดประกอบที่ผลิตโดย Seeed Studio ได้ในราคาประมาณ $15 รวมค่าขนส่งทั่วโลก และอื่นๆ ที่นี่ ฉันไม่สามารถรวมองค์ประกอบการจัดรูปแบบและตาราง HTML ใน Instructable คุณสามารถดูโพสต์ต้นฉบับได้ที่ Dangerous Prototypes บล็อก
ขั้นตอนที่ 1: ฮาร์ดแวร์
ภาพรวมในบทความนี้ เราจะสรุปเกี่ยวกับบอร์ดอะแดปเตอร์ I2C สำหรับ LCD ที่ใช้ HD44780 เราสาธิตด้วยอินเทอร์เฟซอนุกรมสากลของ Bus Pirate ซอร์สโค้ด Bus Pirate สำหรับไลบรารีอินเทอร์เฟซ HD44780 ที่ใช้ I2C เป็นสาธารณสมบัติ ดังนั้นจึงสามารถปรับให้เข้ากับโปรเจ็กต์ของคุณเองได้ฟรี ฮาร์ดแวร์อิมเมจวงจรขนาดเต็ม [PNG] วงจรและ PCB ได้รับการออกแบบด้วย Cadsoft Eagle เวอร์ชันฟรี ไฟล์การออกแบบสามารถดาวน์โหลดได้จาก Bus Pirate SVN ก่อนใช้บอร์ดอะแดปเตอร์ ตรวจสอบให้แน่ใจว่าได้ตรวจสอบแผ่นข้อมูลสำหรับ LCD ของคุณกับพินอะแดปเตอร์ LCD ทั้งหมดไม่เหมือนกัน PCF8574 I/O expander IC นี่คือชิปขยาย 8 I/O แบบธรรมดาที่ควบคุมผ่านอินเทอร์เฟซ I2C แบบสองสาย อินเทอร์เฟซ I2C สามารถเข้าถึงได้จากส่วนหัว JP1 PCF8574 ทำงานได้ตั้งแต่ 2.5 ถึง 5 โวลต์ พิน I/O ทำงานที่แรงดันไฟฟ้า ดังนั้นหากเราป้อน 5 โวลต์ พินจะเชื่อมต่อ LCD ที่ 5 โวลต์ C1 (0.1uF) แยกไอซีออกจากความผันผวนของแหล่งจ่ายไฟ PCF8574 หนึ่งพินควบคุม LED 3 มม. (LED1) ผ่านตัวต้านทานจำกัดกระแส R2 (1000 โอห์ม) ไฟ LED แสดงการสื่อสารที่ประสบความสำเร็จระหว่าง Bus Pirate และอะแดปเตอร์ PCF8574 ไม่สามารถจ่ายกระแสไฟได้เพียงพอที่จะจ่ายไฟให้กับ LED ดังนั้นเราจึงจ่ายไฟ LED จากแหล่งจ่าย 5 โวลต์และเปลี่ยนกราวด์ LCD บอร์ดอะแดปเตอร์จะสื่อสารกับ LCD แบบอักขระที่ใช้ HD44780 ในโหมดอินเทอร์เฟซแบบขนาน 4 บิต พินอินเทอร์เฟซ 4 บิต - RS, RW, EN และ D4-D7 - เชื่อมต่อกับพิน PCF8574 I/O เจ็ดพิน เราชอบที่จะใช้หัวพินตัวผู้ขนาด 0.1" เพื่อเชื่อมต่ออะแดปเตอร์กับ LCD โดยปกติแล้ว คุณสามารถพิง LCD กับหมุดเพื่อสร้างหน้าสัมผัสที่เพียงพอสำหรับการทดสอบอย่างรวดเร็ว ตัวต้านทานทริมเมอร์ R1 (10K) ให้แรงดันปรับความคมชัดที่พิน 3 ของ ส่วนหัวของ LCD เราไม่ได้เชื่อมต่อหมุดแบ็คไลท์เพราะมีรูปแบบแบ็คไลท์ที่แตกต่างกันมากมาย การจ่ายไฟให้กับไฟแบ็คไลท์ LED อาจทำให้หน้าจอที่ต้องใช้แรงดันลบเสียหายได้ แหล่งจ่ายไฟ LCD ส่วนใหญ่ต้องใช้ไฟ 5 โวลต์ โดยให้แหล่งจ่ายไฟภายนอกผ่าน ส่วนหัว JP2 เราจัดเตรียมพินพาวเวอร์ซัพพลายตัวที่สองเพื่อเชื่อมต่อตัวต้านทานแบบดึงขึ้นของ Bus Pirate PCB วงจรและ PCB ได้รับการออกแบบด้วย Cadsoft Eagle เวอร์ชันฟรี ไฟล์การออกแบบสามารถดาวน์โหลดได้จาก Bus Pirate SVN PCB คือ แบบด้านเดียวแบบเจาะรูทั้งหมดด้วยสายจัมเปอร์เส้นเดียว (แสดงเป็นสีแดง) เราสามารถมี PCB, ชุดอุปกรณ์ หรือชุดประกอบที่ผลิตโดย Seeed Studio ได้ในราคาประมาณ $15 รวมค่าขนส่งทั่วโลก ดูรายละเอียดเพิ่มเติมได้ที่นี่ ทั้งหมด รูหยาบ) C10.1uF/10volts+R110000 (10K) ohm single-turn trimmer/potentiometer, 6mmR21000 (1K) ohm resistor, 1/4 wattLED13mm (T1) LED, redJP1+JP20.1" male header, 5 pinsIC1PCF8574N, 8bit I2C I/O expander DIP16ICS116 pin DIP socket สำหรับ IC1I ไม่สามารถรวมองค์ประกอบการจัดรูปแบบและตาราง HTML ใน Instructable คุณสามารถดูโพสต์ต้นฉบับได้ที่บล็อก Dangerous Prototypes
ขั้นตอนที่ 2: การเชื่อมต่อ
อุปกรณ์: LCD อักขระ HD44780 บัส: ขนาน 4 บิต พร้อมบอร์ดอะแดปเตอร์ PCF8574 I2C ข้อกำหนดด้านพลังงาน: 5volts. References:example datasheet [PDF], HD44780 command reference, HD44780 LCD uber-site. Complete Bus Pirate session log สำหรับการสาธิตนี้เรา ออกแบบอะแดปเตอร์สำหรับไลบรารี LCD ของอินเทอร์เฟซอนุกรมสากล Bus Pirate แต่จะใช้ได้กับทุกอย่างที่สามารถพูดโปรโตคอล I2C ได้ ดูซอร์สโค้ด Bus Pirate สำหรับตัวอย่างการใช้งาน I2C->HD44780 เชื่อมต่อ Bus Pirate กับบอร์ดอะแดปเตอร์ตามที่แสดงในตาราง ตารางนี้ยังแสดงการเชื่อมต่อแบบ raw กับ PCF8574 IC หากคุณติดตามโดยไม่มีบอร์ดอะแดปเตอร์เชื่อมต่ออะแดปเตอร์กับแหล่งจ่ายไฟที่เพียงพอสำหรับ LCD โดยทั่วไปคือ 5 โวลต์ การเชื่อมต่อ I2C ระหว่างอะแดปเตอร์และ Bus Pirate ต้องใช้ตัวต้านทานแบบดึงขึ้นระหว่าง 2 ถึง 10K ต่อไปนี้เป็นข้อมูลเพิ่มเติมเกี่ยวกับการเชื่อมต่อแรงดันไฟฟ้าผสมกับ pull-ups และตัวต้านทานแบบดึงขึ้นบน Bus Pirate ฉันไม่สามารถรวมองค์ประกอบการจัดรูปแบบและตาราง HTML ใน Instructable คุณสามารถดูโพสต์ต้นฉบับได้ที่บล็อก Dangerous Prototypes.
ขั้นตอนที่ 3: ขั้นตอนที่ 1. ตั้งค่าไลบรารี
การเชื่อมต่อ เราได้ครอบคลุมการออกแบบอะแดปเตอร์และวิธีเชื่อมต่อกับ Bus Pirate ตอนนี้ก็ถึงเวลาเขียนบางอย่างไปยัง LCD แล้ว HiZ>m <<
ขั้นตอนที่ 4: ขั้นตอนที่ 2. รีเซ็ตและเริ่มต้น
ตารางนี้สรุปคำสั่งแบบไบต์เดี่ยวที่ควบคุม HD44780 LCD ต่อไปนี้คือข้อมูลอ้างอิงโดยละเอียด คำสั่งเหล่านี้สามารถป้อนได้จากบรรทัดคำสั่ง Bus Pirate แต่เราได้สร้างมาโครสำหรับคำสั่งส่วนใหญ่เพื่อประหยัดเวลา LCD>(0) <<<แสดงเมนูมาโคร0.เมนูมาโคร <<<เมนูนี้1.รีเซ็ต LCD << <รีเซ็ต LCD2. Init LCD <<< รีเซ็ตและเริ่มต้น LCD3. Clear LCD <<< LCD ชัดเจน เลื่อนเคอร์เซอร์กลับไปที่ 04.ตำแหน่งเคอร์เซอร์ เช่น:(4:0) <<<กำหนดตำแหน่งเคอร์เซอร์5.เขียนข้อความทดสอบ <<
ขั้นตอนที่ 5: ขั้นตอนที่ 3 เขียนอักขระทดสอบ
จอแอลซีดี>(6:80) <<
ขั้นตอนที่ 6: ขั้นตอนที่ 4 ล้าง LCD
จอแอลซีดี>(3) <<
ขั้นตอนที่ 7: ขั้นตอนที่ 5. พิมพ์ Text
LCD>(8) <<<ใส่ข้อความผู้ใช้ป้อนข้อความที่จะแทรกที่ตำแหน่งเคอร์เซอร์การสาธิต LCD HD44780 <<
LCD>(8) <<<ใส่ข้อความป้อนข้อความที่จะแทรกที่ตำแหน่งเคอร์เซอร์ Bus Pirate v2go <<
ขั้นตอนที่ 8: ขั้นตอนที่ 6 การอ่านจาก LCD
บอร์ดอะแดปเตอร์ Bus Pirate และ LCD สามารถอ่านได้จาก LCD เราจะอ่านข้อความที่เราเขียนบนหน้าจอ (DDRAM) แต่คุณยังสามารถอ่านการตั้งค่าและ RAM อักขระที่กำหนดเอง (CGRAM) ได้ด้วยการตั้งค่าที่อยู่ที่ถูกต้อง LCD>[0b10000000 '''<<<set the read pointer'' ']HD44780 RS LOW, COMMAND MODE <<<ลงทะเบียนเลือกพิน lowCMD WRITE: 0x80 <<
ขั้นตอนที่ 9: ทำมากขึ้น
ให้คำอธิบายทั่วไปเกี่ยวกับอแดปเตอร์ LCD อักขระ StepThe HD44780 เป็นอุปกรณ์เสริมที่มีประโยชน์สำหรับ Bus Pirate สามารถใช้สำหรับการทดสอบอย่างรวดเร็วหรือการพัฒนาลอจิกขั้นสูงได้ นอกจาก LCD แล้ว พิน I/O 2.5 โวลต์-5 โวลต์แปดตัวอาจมีประโยชน์สำหรับแอพพลิเคชั่น Bus Pirate ที่มีจำนวนพินสูงอื่นๆ เราสามารถมี PCB, ชุดอุปกรณ์, หรือชุดประกอบที่ผลิตโดย Seeed Studio ในราคาประมาณ $15 รวมทั้งการจัดส่งทั่วโลก เพิ่มเติมที่นี่ ฉันไม่สามารถรวมองค์ประกอบการจัดรูปแบบและตาราง HTML ใน Instructable คุณสามารถดูโพสต์ต้นฉบับได้ที่บล็อก Dangerous Prototypes
แนะนำ:
Arduino Based (JETI) PPM เป็น USB Joystick Converter สำหรับ FSX: 5 ขั้นตอน
Arduino Based (JETI) PPM เป็น USB Joystick Converter สำหรับ FSX: ฉันตัดสินใจเปลี่ยนตัวส่งสัญญาณ JETI DC-16 จากโหมด 2 เป็นโหมด 1 ซึ่งโดยพื้นฐานแล้วจะสลับคันเร่งและลิฟต์จากซ้ายไปขวาและในทางกลับกัน เนื่องจากฉันไม่ต้องการทำให้โมเดลของฉันพังเพราะสมองสับสนทางซ้าย/ขวา ฉันจึง
แปลง Python สำหรับ Loop เป็น Java: 12 ขั้นตอน
แปลง Python สำหรับ Loop เป็น Java: Python และ Java เป็นภาษาโปรแกรมที่ใหญ่ที่สุดสองภาษาของเทคโนโลยี ที่คนนับล้านใช้ทุกวัน ด้วยคำแนะนำเหล่านี้ ผู้ใช้ Python ทุกระดับสามารถเริ่มใช้ทักษะของตนกับ Java เรียนรู้วิธีใช้โค้ดที่มีอยู่กับสถานการณ์ที่เขียน
อะแดปเตอร์ DSUB-15 เป็น USB สำหรับ Cobalt Flux DDR Pads: 5 ขั้นตอน
อะแดปเตอร์ DSUB-15 เป็น USB สำหรับ Cobalt Flux DDR Pads: เมื่อเร็ว ๆ นี้ฉันคุ้นเคยกับ DDR มากที่ร้านค้าและต้องการแผ่นรองของตัวเองเพื่อเล่นกับ Stepmania ที่บ้าน หลังจากซื้อเสื่อราคาถูกใน Amazon และไม่พอใจเลย ฉันพบแผ่น Cobalt Flux DDR บน OfferUp ในพื้นที่ของฉัน อย่างไรก็ตาม มันไม่ได้มาไว
จอ LCD I2C / IIC - ใช้ SPI LCD กับจอแสดงผล LCD I2C โดยใช้โมดูล SPI เป็น IIC กับ Arduino: 5 ขั้นตอน
จอ LCD I2C / IIC | ใช้ SPI LCD กับจอแสดงผล LCD I2C โดยใช้โมดูล SPI เป็น IIC กับ Arduino: สวัสดีทุกคน เนื่องจาก SPI LCD 1602 ปกติมีสายเชื่อมต่อมากเกินไป ดังนั้นจึงยากมากที่จะเชื่อมต่อกับ Arduino แต่มีโมดูลเดียวในตลาดที่สามารถทำได้ แปลงจอแสดงผล SPI เป็นจอแสดงผล IIC ดังนั้นคุณต้องเชื่อมต่อเพียง 4 สายเท่านั้น
Bus Pirate 3EEPROM Explorer Board: 5 ขั้นตอน
Bus Pirate 3EEPROM Explorer Board: หากคุณมีหนึ่งใน Hack a Day's Bus Pirates คุณจะทำอย่างไรกับมัน เรียนรู้เกี่ยวกับ 1-wire, I2C และ SPI EEPROM ด้วยบอร์ดสำรวจ 3EEPROM (เราเรียกว่า THR-EE-PROM)EEPROM เป็นชิปหน่วยความจำประเภทหนึ่งที่จัดเก็บข้อมูลโดยไม่ต้องใช้พลังงานต่อเนื่อง