Агуулгын хүснэгт:
- Алхам 1: Хэлхээний тойм
- Алхам 2: ПХБ -ийн үйлдвэрлэл
- Алхам 3: Програм хангамжийн тойм
- Алхам 4: Дизайныг турших
- Алхам 5: Дүгнэлт
- Алхам 6: Ашигласан лавлагаа
Видео: Uber I2C LCD хянагчийн модуль: 6 алхам
2024 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2024-01-30 11:02
Оршил
Энэхүү зааварчилгаанд HD44780 LCD дээр суурилсан хянагч модулийг хэрхэн яаж бий болгох талаар дэлгэрэнгүй тайлбарласан болно (дээрх зураг 1). Модуль нь хэрэглэгчид LCD дэлгэцийн бүх талыг I2C -ийн дагуу програмчаар удирдах боломжийг олгодог бөгөөд үүнд: LCD ба дэлгэц, тодосгогч болон арын гэрлийн эрч хүч. Arduino Uno R3 -ийг прототип хийхэд ашигладаг байсан ч I2C -ийг дэмждэг аливаа микроконтроллертой адил сайн ажиллах болно.
Танилцуулга
Дээр дурдсанчлан энэхүү нийтлэл нь I2C LCD хянагчийн модулийг бий болгох тухай баримтжуулсан бөгөөд энэ нь үндсэндээ практик ПХБ -ийг бий болгоход хэр удаан хугацаа шаардагдахыг тодорхойлох зорилготой байв.
Энэхүү загвар нь ердийн ерөнхий хянагчийн модулийг орлуулдаг (дээрх зураг 3), миний өмнө нь үйлдвэрлэсэн зааварчилгаа болон номын сангуудыг ашигласан болно.
Анхны үзэл баримтлалын загвараас (дээрх зураг 2) дууссан, бүрэн шалгагдсан ПХБ хүртэл (дээрх зураг 1) нийт 5.5 хоног зарцуулсан.
Надад ямар хэсгүүд хэрэгтэй вэ? Доор хавсаргасан материалыг үзнэ үү
Надад ямар програм хангамж хэрэгтэй вэ?
- Arduino IDE 1.6.9,
- Хэрэв та ПХБ -ийг өөрчлөхийг хүсвэл Kicad v4.0.7. Үгүй бол зүгээр л 'LCD_Controller.zip' -ийг JLCPCB рүү илгээнэ үү.
Надад ямар хэрэгсэл хэрэгтэй вэ?
- Хамгийн багадаа x3 микроскоп (SMT гагнуурын хувьд),
- SMD гагнуурын төмөр (шингэн урсгалтай үзэг ба флюс судалтай гагнууртай),
- Хүчтэй хясаа (SMT гагнуурын хувьд),
- Нарийн бахө (үзүүртэй, хамартай хамар),
- Дуу чимээ тасралтгүй байдлыг шалгах DMM.
Надад ямар ур чадвар хэрэгтэй вэ?
- Маш их тэвчээр,
- Маш их гарын авлага, гар/нүдний маш сайн зохицуулалт,
- Гагнуурын маш сайн ур чадвар.
Хамрах сэдвүүд
- Танилцуулга
- Хэлхээний тойм
- ПХБ -ийн үйлдвэрлэл
- Програм хангамжийн тойм
- Дизайныг туршиж байна
- Дүгнэлт
- Ашигласан лавлагаа
Алхам 1: Хэлхээний тойм
Дээрх 1 -р зурагт бүх электроникийн бүрэн схемийг доорх PDF файлын хамт өгсөн болно.
Энэхүү хэлхээг дараах сайжруулалттай стандарт PCF8574A I2C LCD хянагчийн модулийг яг солихоор бүтээсэн болно.
- I2C хэрэглэгчийн сонгож болох 3v3 эсвэл 5v нийцтэй байдал,
- Дижитал тодосгогч хяналт эсвэл ердийн тогооны тохиргоо,
- Гялалзсан бүдгэрүүлэхийн тулд Quartic хөнгөвчлөх функц бүхий арын гэрлийн эрч хүчийг сонгох боломжтой.
LCD дэлгэцийн хяналт
Энэ нь I2C -ийг зэрэгцээ хөрвүүлэхийн тулд PCF8574A (IC2) ашигладаг I2C LCD хянагчийн стандарт модулийн факсимил юм.
Анхдагч I2C хаяг нь 0x3F юм.
3v3 эсвэл 5v I2C нийцтэй байдал
3v3 үйлдлийн хувьд Q1, Q2 ROpt1, 2, 5 & 6, IC1, C2 ба C2 -т тохирно.
Хэрэв 5V -ийн ажиллагаа шаардлагатай бол 3v3 -ийн бүрэлдэхүүн хэсгүүдэд тохирохгүй, тэдгээрийг 0 Ом эсэргүүцэлтэй ROpt 3 ба 4 -ээр солино.
Дижитал тодосгогч
Дижитал тодосгогч хяналтыг дижитал потенциометр U2 MCP4561-103E/MS ба C4, R5 ашиглан гүйцэтгэдэг.
Хэрэв ердийн механик потенциометр шаардлагатай бол U2, C4, R5 -ийн оронд ПХБ, RV1 10K суурилуулж болно. Тохиромжтой потенциометрийг Монголбанкнаас үзнэ үү.
J6 холбогчийг холбосноор I2C хаяг нь 0x2E байна. Үүнийг хэвийн ажиллуулахын тулд үүнийг гүүр гэж үздэг.
Хувьсах арын гэрлийн эрч хүчийг сонгох
Хувьсах арын гэрлийн эрч хүчийг LCD LED арын гэрлийн PWM модуляцаар U1 зүү 6, ATTiny85 ашиглан хянадаг. I2C LCD хянагчийн стандарт модуль R1 -тэй бүрэн нийцтэй байдлыг хадгалахын тулд T1 R7 ба T2 -ийг нийлүүлэлтийн төмөр замыг өөрчлөхөд ашигладаг.
Анхдагч I2C хаяг нь 0x08 юм. Энэ нь U1 програмчлахаас өмнө хөрвүүлэх үед хэрэглэгчийн сонгох боломжтой юм.
Алхам 2: ПХБ -ийн үйлдвэрлэл
Өмнө дурьдсанчлан энэхүү зааварчилгаа нь үндсэндээ дизайн хийхэд хэр хугацаа шаардагдахыг тодорхойлох зорилготой дасгал байсан (практик зорилготой байсан).
Энэ тохиолдолд би бямба гаригийн үдээс хойш анхны үзэл баримтлалыг бодож, загварыг нь бямба гаригийн орой 1 -р зураг дээр хийж дуусгасан. Миний хэлсэн санаа бол I2C LCD хянагчийн модулийн ижил хувилбартай, I2C -ээс дээш LCD дэлгэцийг бүрэн програмчлах боломжийг санал болгох явдал байв.
Схемийн схем ба ПХБ -ийн схемийг Kicad v4.0.7 pics 2 ба 3 -р зураг дээр боловсруулсан болно. Үүнийг ням гарагийн үдээс хойш хийж дуусгасан бөгөөд эд ангиудыг Фарнелээс захиалж, ПХБ -ийг ням гарагийн орой гэхэд JLCPCB -д байршуулав.
Бүрэлдэхүүн хэсгүүд Лхагва гаригт Фарнеллаас ирсэн бөгөөд дараа нь Пүрэв гарагт JLCPCB -ийн ПХБ -ууд ирсэн (би DHL хүргэлтийн үйлчилгээг ашиглан ажлыг түргэсгэсэн) 4, 5, 6, 7 -р зураг.
Пүрэв гарагийн орой гэхэд 4 -ээс 20 хэмжээтэй LCD дэлгэц дээр хоёр самбар (3v3 ба 5v хувилбарууд) бүтээж амжилттай туршсан. Зураг 8, 9, 10.
Анхны үзэл баримтлалаас дуустал 5.5 хоног.
JLCPCB нь захиалга авч, хоёр талт PTH ПХБ -ийг үйлдвэрлэж, Их Британи руу илгээж чаддаг нь намайг гайхшруулдаг. Цэврүү нь үйлдвэрлэхэд 2 хоног, нийлүүлэхэд 2 хоног байна. Энэ нь Их Британид суурилсан ПХБ үйлдвэрлэгчдээс илүү хурдан бөгөөд үнийн багахан хувийг эзэлдэг.
Алхам 3: Програм хангамжийн тойм
I2C LCD хянагчийн модулийг хянахад шаардлагатай програм хангамжийн үндсэн гурван бүрэлдэхүүн хэсэг байдаг;
1. LiquidCrystal_I2C_PCF8574 Arduino номын сан
Энд байгаа
LCD дэлгэцийг хянахын тулд Arduino -ийн ноорог дээр ашиглах болно.
Тэмдэглэл: Энэ нь Ерөнхий I2C LCD модуль хянагчтай адил сайн ажилладаг. Зөвхөн энэ нь бусад номын сангаас илүү функцийг өгдөг.
2. MCP4561_DIGI_POT Arduino номын сан
LCD -ийн тодосгогчийг програмаар хянахад ноорог зурахдаа ашиглах болно
Энд байгаа
3. Гөлгөр бүдгэрүүлэхийн тулд ХОУХ болон Quartic хөнгөвчлөх функцийг ашиглан LCD арын гэрлийн түвшинг хянах програм хангамж
Өмнө дурьдсанчлан самбар нь дэлгэцийн арын гэрлийг аажмаар бүдгэрүүлэхэд ашигладаг ганц ATTiny85 -ийг агуулдаг.
Энэхүү програм хангамжийн дэлгэрэнгүй мэдээллийг өмнө нь өгсөн "ATTiny85 -ийн тусламжтайгаар ХОУХШ -ийн гөлгөр LED бүдгэрэх" зааварт өгсөн болно.
Энэ тохиолдолд ПХБ -ийн эцсийн хэмжээсийг хадгалахын тулд ATTiny85 -ийн SOIC хувилбарыг ерөнхий LCD хянагчийн модультай ижил байлгахаар сонгосон. Зураг 1 ба 2 нь ATTiny85 SOIC програмчлалын загварыг хэрхэн програмчилж, туршсан болохыг харуулж байна.
ATTiny85 програмчлагдсан код нь 'Tiny85_I2C_Slave_PWM_2.ino' байсан бөгөөд энд байгаа
Өөрийн ATTiny85 програмист хэрхэн үүсгэх талаар дэлгэрэнгүй мэдээллийг "ATTiny85, ATTiny84, ATMega328P: Arduino ISP болгон програмчлах" зааварчилгааг үзнэ үү.
Алхам 4: Дизайныг турших
Загварыг туршиж үзэхийн тулд би 'LCDControllerTest.ino' нэртэй ноорог бүтээсэн бөгөөд энэ нь хэрэглэгчид LCD -ийн ямар ч параметрийг цуваа терминал холболтоор шууд тохируулах боломжийг олгодог.
Ноорогыг миний GitHub репозитор I2C-LCD-Controller-Module дээрээс олж болно
Дээрх 1 -р зураг нь туршилтын кодыг анх удаа ажиллуулахдаа 4 -ийн 20 хэмжээтэй LCD дэлгэц, 5 -р зурагт 2 -т нийцсэн 5В I2C хавтанг харуулав.
Энэ нь арын гэрэл ба тодосголын хувьд дараах анхдагч утгуудыг ашигладаг;
- DISPLAY_BACKLIGHT_LOWER_VALUE_DEFAULT -г тодорхойлох ((гарын үсэг зураагүй урт) (10))
- #DISPLAY_CONTRAST_VALUE_DEFAULT -ийг тодорхойлох ((uint8_t) (40))
Сэлбэгийн хажууд хэвтэж байсан 4 -ээс 20 хэмжээтэй LCD дэлгэц дээр эдгээр нь сайн ажилладаг болохыг олж мэдэв.
Алхам 5: Дүгнэлт
Би электроник/програм хангамжийн салбарт анх нэлээд хэдэн жилийн өмнө анх ажиллаж байхдаа, хэрэв та алдаа гаргасан бол эцсийн хэлхээнд хэт их инженерчлэл хийж, загварчлахад төмөр ороомог эсвэл халхавч хийцийг ашиглахад ихээхэн анхаарал хандуулж байсан., самбарыг дахин эргүүлэх зардал, үргэлжлэх хугацааг харгалзан үзнэ.
Алдаа гаргах нь ихэвчлэн хуваарийн дагуу хэдэн долоо хоног зарцуулдаг бөгөөд ашгийн зөрүүг (магадгүй таны ажил) бууруулдаг.
ПХБ -ийг "урлагийн бүтээл" гэж нэрлэдэг байсан, учир нь тэдгээр нь үнэхээр урлагийн бүтээл байв. "Мөшгөгч" эсвэл зураачаар хийсэн наалдамхай хар дуран тууз ашиглан хоёр дахин бүрэн хэмжээгээр бүтээсэн бөгөөд зургийг стенилийг эсэргүүцэхийн тулд гоёмсог байшингаар гэрэл зургийн хэмжээгээр багасгасан.
Хэлхээний диаграммыг мөн мөшгөгчөөр бүтээсэн бөгөөд таны дизайны тэмдэглэлээс гараар зурсан болно. Хуулбарыг фото статик байдлаар хийж, "цэнхэр хэвлэмэл" гэж нэрлэдэг. Учир нь тэд үргэлж цэнхэр өнгөтэй байв.
Микроконтроллерууд дөнгөж нялх байхдаа байсан бөгөөд хэрэв танай компани дагалдах нарийн төвөгтэй, үнэтэй хөгжлийн орчинг бүрдүүлж өгөх боломжтой байсан бол ихэвчлэн хэлхээгээр дуурайдаг байв.
Тухайн үед үйлдвэрлэгчийн хувьд програм хангамж хөгжүүлэх багаж хэрэгслийн сүлжээний өртөг нь маш өндөр байсан тул та EPROM (хэрэв та маш азтай байсан бол RAM/Flash) дээр зургаан өнцөгт утгыг шууд оруулах шаардлагатай болсон бөгөөд үүний үр дүнд гарсан зан төлөвийг тайлбарлахын тулд хэдэн цаг зарцуулсан. Таны код хүлээгдэж буй шиг ажиллахгүй байсан бол хийж байсан (жаахан 'wiggling' эсвэл serial printf бол хамгийн алдартай дибаг хийх арга юм. Зарим зүйл хэзээ ч өөрчлөгддөггүй). Та ихэвчлэн өөрийн гэсэн бүх номын санг бичих ёстой байсан тул байхгүй байсан (интернет шиг баялаг эх сурвалж байхгүй байсан).
Энэ нь та ямар нэгэн зүйл хэрхэн ажилладагийг ойлгохын тулд маш их цаг зарцуулж, бүтээлчээр бүтээхэд бага цаг зарцуулсан гэсэн үг юм.
Таны бүх диаграммыг ихэвчлэн А4 эсвэл А3 хэмжээтэй гараар зурсан бөгөөд тэдгээрийг сайтар бодож, зүүнээс баруун тийш дохио дамжуулах логик урсгалыг өгөх ёстой байв. Залруулга нь ихэвчлэн шинэ хуудаснаас эхлэх хэрэгтэй гэсэн үг юм.
Ихэнх тохиолдолд таны эцсийн хэлхээг тасралтгүй ашиглахын тулд veroboard ашиглан бүтээсэн бөгөөд үүнийг "мэргэжлийн мэдрэгчтэй" болгохын тулд ABS -ийн энгийн хашлагад суулгасан болно.
Үүний эсрэгээр би энэ төслийг бүхэлд нь 5.5 хоногийн дотор боловсруулсан бөгөөд өндөр чанартай үнэгүй програм хангамжийг ашиглан мэргэжлийн стандарт ПХБ -ийг бий болгосон. Хэрэв энэ хүсэл намайг хүлээж авсан бол би үүнийг өөрийн гараар хийсэн 3D хэвлэсэн хайрцагт хийж болох байсан.
Арав гаруйхан жилийн өмнө таны мөрөөдөж байсан зүйл.
Бүх зүйл сайн тал руу хэрхэн өөрчлөгдсөн бэ.
Алхам 6: Ашигласан лавлагаа
KiCAD Схемийн зураг ба ПХБ -ийн дизайн
KiCAD EDA
Arduino ORG програм хангамж хөгжүүлэх хэрэгсэл
Ардуино
LiquidCrystal_I2C_PCF8574 Arduino номын сан
Энд
MCP4561_DIGI_POT Arduino номын сан
Энд
ATTiny85 -ийн тусламжтайгаар PWM LED гөлгөр
Энд
ATTiny85, ATTiny84 ба ATMega328P програмчлах: Arduino нь ISP байдлаар
Зөвлөмж болгож буй:
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 үүргэвчтэй 1602 LCD товчлууртай бамбай модуль: 6 алхам
I2C үүргэвчтэй 1602 LCD товчлууртай бамбай модуль: Томоохон төслийн нэг хэсэг болохын тулд би LCD дэлгэц, зарим энгийн цэсийг удирдах товчлууртай болохыг хүсч байсан. Би Arduino дээрх оролт/гаралтын портуудыг бусад ажилд ашиглах болно, тиймээс би LCD -ийн I2C интерфэйсийг хүсч байсан. Тиймээс би хэдэн тоног төхөөрөмж худалдаж авсан
I2C модуль бүхий LCD жолоодлого: 8 алхам
I2C модулийн тусламжтайгаар LCD жолоодох: Энэхүү гарын авлагад бид LCD дэлгэц хэрхэн ажилладаг, I2C модулийг хэрхэн илүү хялбар ашиглах талаар үзэх болно
I2C / IIC LCD дэлгэц - SPI LCD дэлгэцийг I2C LCD дэлгэц болгон хөрвүүлэх: 5 алхам
I2C / IIC LCD дэлгэц | SPI LCD дэлгэцийг I2C LCD дэлгэц болгон хөрвүүлэх: spi lcd дэлгэцийг ашиглахад хэт олон холболт шаардлагатай бөгөөд үүнийг хийх нь үнэхээр хэцүү тул i2c lcd -ийг spi lcd болгон хөрвүүлэх модулийг оллоо
Raspberry Pi -тай ажиллах 5V релений модуль модуль: 4 алхам
Raspberry Pi -тэй ажиллах 5V релений модулийн мод: Өнөөдөр буухиа самбар дээр гараа авах нь үнэхээр амархан боловч ихэнх нь 5В -т зориулагдсан бөгөөд энэ нь бөөрөлзгөнө муутай пи эсвэл бусад ямар нэгэн асуудал үүсгэж болохыг та хурдан олж мэдэх болно. 3.3V дээр ажилладаг микроконтроллер, Тэдэнд вольт байхгүй байна