Агуулгын хүснэгт:
- Хангамж
- Алхам 1: Шийдлийн гарал үүсэл
- Алхам 2: Тайлбар
- Алхам 3: Резисторыг тодорхойлж устгах
- Алхам 4: Шийдэл хоорондын харьцуулалт
- Алхам 5: Эцсийн дүгнэлт
Видео: Arduino 3.3V I2C -тэй 5V LCD дэлгэц: 5 алхам
2024 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2024-01-30 11:00
Энэхүү нийтлэл нь Arduino Due (эсвэл бусад 3.3V хавтанг) I2C адаптер модуль бүхий алдартай 16x2 LCD дэлгэцтэй ашиглах илүү хялбар аргыг тайлбарлах зорилготой юм.
Эхний асуудал бол арын гэрлийг зөв ажиллуулахын тулд LCD 5V шаардлагатай боловч SCL ба SDA тээглүүр нь 3.3V хүчдэлтэй ажиллах ёстой бөгөөд Arduino Due -т гэмтэл учруулахгүйгээр холбогдох ёстой. Үүнийг шийдэхийн тулд би хоёр сонголтыг олсон.
Хамгийн их дурдсан шийдэл бол хоёр чиглэлтэй логик түвшний хөрвүүлэгчийг ашиглах явдал юм. Гэхдээ энэ нь таны жагсаалтад өөр бүрэлдэхүүн хэсэг болон таны хэлхээний нэмэлт утас холболтыг нэмж өгдөг
Миний олж мэдсэн өөр нэг арга бол "I2C адаптер үүргэвчиндээ" 2 татах резисторыг LCD дэлгэцээс салгах явдал юм. Илүү хялбар байхаас гадна төгсгөлд нь харьцуулахдаа тайлбарласан бусад давуу талуудтай. Энэ арга нь энэ нийтлэлийн гол чиглэл юм
Хангамж
Arduino Due
I2C адаптер модуль бүхий LCD 16x2 дэлгэц
Гагнуурын төмөр
Гагнуурын насос эсвэл гагнуурын зулын гол
Хясаа
Алхам 1: Шийдлийн гарал үүсэл
Энэ шийдлийг миний зохион бүтээсэн зүйл биш, би доорхи линкээс Arduino форум дээр маш сайн санал, тайлбарыг олж харсан бөгөөд үүнийг би энэ нийтлэлд хуулбарлах болно.
forum.arduino.cc/index.php?topic=553725.0
Хариулт: david_prentice
Би интернетээс ямар ч бүрэн гарын авлага олж чадаагүй бөгөөд энэ нь маш нийтлэг асуудал тул би энэ шийдлийг нарийвчлан танилцуулж, энэ нь үнэхээр үр дүнтэй байгааг гэрчилж, үр дүнгийн талаар эргэлзээ төрүүлэх мэдээллийг нэмж оруулахыг хичээж байна.
Алхам 2: Тайлбар
Төхөөрөмжүүд
I2C холболт ажиллахын тулд SDA ба SCL тээглүүрт холбогдсон татах эсэргүүцэл шаардлагатай. Учир нь төхөөрөмжүүд харилцах үедээ эдгээр тээглүүрийг LOW бага эргүүлдэг. HIGH -ийг төлөөлөхийн тулд энэ нь LOW илгээхгүй байх ёстой бөгөөд таталтын ачаар HIGH руу явдаг. (энэ ойлголт нь хожим маш чухал байх болно)
LCD "I2C үүргэвч" нь I2C шаардлагад нийцсэн 4K7 гэсэн хоёр татах эсэргүүцэлтэй. Гэхдээ тэд Vcc -тэй холбогдсон тул хэрэв та 5 В -ийг ашиглавал тэд SDA болон SCL -ийг 5 В хүртэл татах болно.
Хэрэв та өгөгдлийн хүснэгтийг үзвэл бусад самбараас ялгаатай нь Due нь үндсэн SDA SCL тээглүүр дээрээ 1K5 татах эсэргүүцэлтэй байдаг бөгөөд тэдгээрийг 3.3 В хүртэл татаж чаддаг.
Туршилт
- LCD дэлгэц -> Arduino
- Gnd -> Gnd
- Vcc -> 5V
- SDA -> SDA
- SCL -> SCL
Хэрэв та зүгээр л LCD -ийг Төгсгөл дээр холбосон бол (дээрх утсыг дагаж), 3.3V -тэй холбогдсон 1k5 (эсвэл 1k0), 5V -д холбогдсон 4K7 LCD татах нь 3.7 V (3.6 V) дээр I2C шугам сул зогсох болно. 1k0). Энэ нь тийм ч сайн зүйл биш, учир нь Мэдээллийн хүснэгтэд оролт/гаралтын шугамын хамгийн их хүчдэлийг 3.6 В гэж заасан байдаг.
Энэхүү хувилбарыг зөвхөн LCD дэлгэцээр туршиж үзэхэд би 3, 56 В -тэй болсон. EEPROM модулийг ижил SDA ба SCL дээр нэмснээр 3.606 В хүртэл өссөн. Аль ч тохиолдолд бүх зүйл хэвийн ажиллаж байсан боловч тэдгээр нь хамгийн тохиромжтой хүчдэлээс хол байна. 3.6 В -ийн хамгийн дээд хэмжээг харгалзан үзнэ.
Тийм ээ, ямар ч өөрчлөлт хийгээгүй байхад яг минийх шиг ажиллах магадлал бий. Гэсэн хэдий ч хүчдэлийн түвшин тийм ч тохиромжтой биш байгаа бөгөөд учир нь LCD эсвэл LCD дэлгэц дээрх зарим зөрүү нь 3.6 В -ийн хязгаараас давж магадгүй юм. (5 В ба SCL/SDA зүү 3.6 В хүрэхээс өмнө хамгийн бага эсэргүүцэл нь 20K эсвэл 100К потенциометрээр туршиж үзэхийг зөвлөж байна.
Шийдэл
Шийдэл бол LCD үүргэвчнээс татах хүчийг 5 В хүртэл татахыг хичээдэг резисторуудыг салгах явдал юм. Дараа нь SCL ба SDA шугамыг 3.3V хүртэл татах шаардлагатай болно.. Энэ нь 3.262 V орчим сул зогсолтыг хадгалж төгс ажилласан!
Холболтууд ижил хэвээр байна:
- LCD дэлгэц -> Arduino
- Gnd -> Gnd
- Vcc -> 5V
- SDA -> SDA
- SCL -> SCL
Хэрэв та харилцах үед LCD шугамыг 5 В хүртэл татаж чадахгүй гэж бодож байвал I2C дээр төхөөрөмжүүд зөвхөн LOW шугамыг татдаг бөгөөд энэ нь хөндлөнгөөс оролцохгүй байх үеийн дохио бөгөөд энэ нь 3.3 V болно. Due-ийн онгоцны таталтууд.
Мөн 3.2 В нь I2C үүргэвчийг HIGH дохио гэж үзэхэд хангалттай.
Алхам 3: Резисторыг тодорхойлж устгах
Дээрх зураг нь миний модульд олсон татах эсэргүүцлийг улаанаар харуулсан болно.
Тодорхойлох
LCD I2C адаптерийн үүргэвч өөр өөр байж болох тул резисторууд ижил тохиргоотой биш байж магадгүй юм. Татах эсэргүүцлийг тодорхойлохын тулд тасралтгүй байдлын тест бүхий мултиметр ашиглаж болно. Татах эсэргүүцэл бүр нэг үзүүрийг SCL эсвэл SDA зүү, нөгөө үзүүрийг Vcc-тэй холбох ёстой.
Миний хувьд самбар дээр 4K7 (SMD кодын 472) резисторуудын гурав нь байсан. Тэдгээрийн зөвхөн хоёр нь дээрх шаардлагыг хангасан бөгөөд эдгээр нь бидний хайж байсан таталтууд гэдгийг онцолсон юм.
Нэмэлт урьдчилан сэргийлэх зорилгоор (хэрэв ямар нэгэн шалтгаанаар тэд 4K7 биш байсан бол) би бусад резисторуудыг туршиж үзээд тэдгээрийн хэн нь ч татах шаардлагад нийцэхгүй байгааг баталсан.
Устгах
Одоо таны хийх ёстой зүйл бол тэдгээрийг задлах явдал юм! Хэрэв танд туслах гагнуурын насос эсвэл гагнуурын зулын гол, хясаа байвал илүү хялбар болно.
Алхам 4: Шийдэл хоорондын харьцуулалт
Хоёр чиглэлтэй логик түвшний хөрвүүлэгч (ХХК)
Давуу тал:
Гагнуурын төхөөрөмж, ур чадвар шаарддаггүй
Сул тал:
Илүү олон кабель, ХХК -ийг таны жагсаалтын бүрэлдэхүүн хэсгүүдийн жагсаалтад оруулах
Нэмэлт бүрэлдэхүүн хэсгүүдтэй Messier холболтууд
Бага зэрэг илүү үнэтэй
LCD татах резисторуудыг задлах
Давуу тал:
Илүү цэвэр үр дүн
Та үүнийг ХХК -ийг хүлээх шаардлагагүй шууд хийх боломжтой байх
Хэрэв та нарийн төвөгтэй төсөлд янз бүрийн бүрэлдэхүүн хэсэг, угсралтын нарийн төвөгтэй байдлыг багасгахыг хүсч байгаа эсвэл хуулбарлахыг хүсч байвал энэ нь ялангуяа сайн болно
Сул тал:
LCD хэлхээг өөрчилдөг (хэрэв та Uno -той "ашиглахад бэлэн" байхыг хүсч байвал 4K7 -ийг аль хэдийн авсан бол тэдгээрийг дахин зарах өөрчлөлтийг буцааж болно)
Алхам 5: Эцсийн дүгнэлт
Энэхүү гарын авлага нь энэхүү нийцтэй байдлын асуудал болон зарим шийдлүүдийг тодруулж өгсөн гэж найдаж байна.
Хэрэв танд сайжруулах санаа, илүү сайн тайлбар, шинэ шийдэл, эсвэл нийтлэлээс ямар нэгэн алдаа олсон бол сэтгэгдлээр надад хэлээрэй!:)
Зөвлөмж болгож буй:
I2C: 7 алхам бүхий 20х4 хэмжээтэй LCD дэлгэц ашиглан гар Arduino цаасан рок хайч тоглоом
I2C -тэй 20х4 хэмжээтэй LCD дэлгэц ашиглан гар аргаар хийдэг Arduino цаасан рок хайч тоглоом: Бүгдээрээ сайн уу, эсвэл би "Сайн уу ертөнц!" Гэж хэлэх нь зүйтэй болов уу, Arduino -ийн олон зүйлд миний оруулсан төслийг тантай хуваалцах нь үнэхээр таатай байх болно. Энэ бол I2C 20x4 LCD дэлгэц ашиглан гар аргаар хийдэг Arduino Paper Rock Scissors тоглоом юм. Би
Micropython бүхий TTGO (өнгөт) дэлгэц (TTGO T-дэлгэц): 6 алхам
Micropython бүхий TTGO (өнгөт) дэлгэц (TTGO T-дэлгэц): TTGO T-Display нь ESP32 дээр суурилсан 1.14 инчийн өнгөт дэлгэцтэй самбар юм. Уг самбарыг 7 доллараас бага үнээр худалдаж авах боломжтой (тээвэрлэлт, шагналыг banggood дээрээс үзнэ үү). Энэ бол дэлгэцийг багтаасан ESP32 -ийн гайхалтай шагнал юм
I2C / IIC LCD дэлгэц - Arduino ашиглан SPI -IIC модулийг ашиглан I2C LCD дэлгэц рүү SPI LCD ашиглах: 5 алхам
I2C / IIC LCD дэлгэц | IUC LCD дэлгэц дээр SPI LCD дэлгэцийг SPI -ийг IIC модулийг ашиглан Arduino ашиглан ашиглаарай: Сайн байна уу залуусаа, ердийн SPI LCD 1602 -ийг холбоход хэт олон утас байдаг тул үүнийг arduino -той холбоход маш хэцүү боловч зах зээл дээр боломжтой нэг модуль байдаг. SPI дэлгэцийг IIC дэлгэц болгон хөрвүүлэх тул та зөвхөн 4 утас холбох хэрэгтэй
I2C / IIC LCD дэлгэц - SPI LCD дэлгэцийг I2C LCD дэлгэц болгон хөрвүүлэх: 5 алхам
I2C / IIC LCD дэлгэц | SPI LCD дэлгэцийг I2C LCD дэлгэц болгон хөрвүүлэх: spi lcd дэлгэцийг ашиглахад хэт олон холболт шаардлагатай бөгөөд үүнийг хийх нь үнэхээр хэцүү тул i2c lcd -ийг spi lcd болгон хөрвүүлэх модулийг оллоо
VGA дэлгэц задлагчийг компьютерийн хяналттай дэлгэц шилжүүлэгч рүү хөрвүүлэх: 4 алхам
VGA монитор задлагчийг компьютерийн хяналттай дэлгэц шилжүүлэгч болгон хөрвүүлэх: Энэхүү заавар нь нэг компьютерийг хоёр дэлгэцтэй холбоход ашигладаг хямд (20 еврогийн) VGA дэлгэц задлагчийг компьютерийн хяналттай дэлгэц солих төхөөрөмж болгон хувиргах аргыг тайлбарласан болно. Эцсийн төхөөрөмжийг зэрэгцээ портоор хянаж, эргүүлэх боломжийг олгодог