Мазмұны:

Uber I2C LCD контроллері модулі: 6 қадам
Uber I2C LCD контроллері модулі: 6 қадам

Бейне: Uber I2C LCD контроллері модулі: 6 қадам

Бейне: Uber I2C LCD контроллері модулі: 6 қадам
Бейне: 6 Поворотный энкодер FLProg и ЖК-дисплей I2C |ESP32 NodeMCU |Визуальное программирование для Arduino 2024, Қараша
Anonim
Uber I2C СКД контроллері модулі
Uber I2C СКД контроллері модулі
Uber I2C СКД контроллері модулі
Uber I2C СКД контроллері модулі
Uber I2C СКД контроллері модулі
Uber I2C СКД контроллері модулі

Кіріспе

Бұл нұсқаулықта HD44780 СКД контроллері модулін қалай құру керектігі туралы егжей -тегжейлі айтылады (жоғарыдағы 1 -сурет). Модуль пайдаланушыға I2C арқылы СКД барлық аспектілерін басқаруға мүмкіндік береді; СКД мен дисплей, контраст және артқы жарық қарқындылығы. Arduino Uno R3 прототипі үшін қолданылғанымен, ол I2C қолдайтын кез келген микроконтроллермен жақсы жұмыс істейді.

Кіріспе

Жоғарыда айтылғандай, бұл мақала I2C СК контроллер модулін құруды құжаттайды, ол ең алдымен практикалық жұмыс ПХД құруға қанша уақыт кететінін анықтауға арналған дизайн жаттығуы ретінде арналған.

Дизайн стандартты жалпы контроллер модулін ауыстырады (жоғарыдағы 3 -сурет) және мен бұрын шығарған нұсқаулықтар мен кітапханаларға негізделген.

Бастапқы тұжырымдамалық прототиптен (жоғарыдағы 2 -сурет) аяқталған, толық тексерілген ПХД -ге дейін (жоғарыдағы 1 -сурет) барлығы 5,5 күнге созылды.

Маған қандай бөлшектер қажет? Төменде берілген материалдарды қараңыз

Маған қандай бағдарламалық қамтамасыз ету қажет?

  • Arduino IDE 1.6.9,
  • Егер сіз ПХД өзгерткіңіз келсе, Kicad v4.0.7. Әйтпесе JLCPCB -ге 'LCD_Controller.zip' жіберіңіз.

Маған қандай құралдар қажет?

  • Микроскоп кемінде x3 (SMT дәнекерлеу үшін),
  • SMD дәнекерлеу үтігі (сұйық ағынды қаламмен және ағынды дәнекерленген дәнекермен),
  • Күшті пинцет (SMT дәнекерлеу үшін),
  • Жіңішке қысқыштар (мұрынды және ұшы),
  • Үзіліссіздікті тексеретін DMM.

Маған қандай дағдылар қажет?

  • Көп шыдамдылық,
  • Қолдың ептілігі мен қол мен көзді тамаша үйлестіру,
  • Дәнекерлеудің керемет дағдылары.

Тақырыптар қамтылды

  • Кіріспе
  • Схемаға шолу
  • ПХД өндірісі
  • Бағдарламалық қамтамасыз етуге шолу
  • Дизайнды сынау
  • Қорытынды
  • Қолданылған әдебиеттер

1 -қадам: схемаға шолу

Схемаға шолу
Схемаға шолу

Барлық электрониканың толық схемасы төмендегі PDF файлымен бірге жоғарыдағы 1 -суретте келтірілген.

Схема келесі жақсартулармен PCF8574A I2C СКР контроллерінің стандартты модулін дәл ауыстыруға арналған;

  • I2C пайдаланушы 3v3 немесе 5v үйлесімділігін таңдай алады,
  • Сандық контрастты басқару немесе кастрюльдің әдеттегі параметрі,
  • Тегіс жоғалуға қол жеткізу үшін Quartic жеңілдету функциясы бар артқы жарық қарқындылығын таңдау.

СКД дисплейін басқару

Бұл I2C параллель түрлендіруге арналған PCF8574A (IC2) қолданатын стандартты I2C LCD контроллер модулінің факсимилесі.

Бұл үшін әдепкі I2C мекенжайы - 0x3F.

3v3 немесе 5v I2C үйлесімділігі

3v3 жұмысы үшін Q1, Q2 ROpt1, 2, 5 & 6, IC1, C2 және C2 сәйкес келеді.

Егер 5В жұмыс қажет болса, онда 3v3 компоненттерін сыйдырмаңыз, оларды 0 Ом резисторлары ROpt 3 және 4 -ке ауыстырыңыз.

Сандық контраст

Сандық контрастты басқару U2 MCP4561-103E/MS және C4, R5 цифрлық потенциометрін қолдану арқылы жүзеге асады.

Егер әдеттегі механикалық потенциометр қажет болса, онда U2, C4 және R5 орнына ПХД, RV1 10K орнатуға болады. Үйлесімді потенциометрді білу үшін банкоматты қараңыз.

J6 секіргішті байланыстыру арқылы I2C адресі 0x2E болады. Бұл қалыпты жұмыс үшін бұл көпір деп ойлады.

Айнымалы артқы жарық қарқындылығын таңдау

Артқы жарықтың ауыспалы қарқындылығы UT -6 -ATTiny85 арқылы СКД жарықдиодты артқы жарығының PWM модуляциясы арқылы бақыланады. Стандартты I2C LCD реттегіш модулімен толық үйлесімділікті сақтау үшін R1, T1 R7 және T2 +велосипед рельсін модуляциялау үшін қолданылады.

Бұл үшін әдепкі I2C мекенжайы - 0x08. Бұл U1 бағдарламалауға дейін компиляция кезінде пайдаланушы таңдауы мүмкін.

2 -қадам: ПХД өндірісі

ПХД өндірісі
ПХД өндірісі
ПХД өндірісі
ПХД өндірісі
ПХД өндірісі
ПХД өндірісі
ПХД өндірісі
ПХД өндірісі

Жоғарыда айтылғандай, бұл нұсқаулық, ең алдымен, дизайнды аяқтауға қанша уақыт кететінін анықтауға арналған практикалық мақсат болды.

Бұл жағдайда мен сенбі күні түстен кейін алғашқы тұжырымдаманы ойладым және жоғарыдағы сенбі күні кешкі 1 суретке дейін прототипін аяқтадым. Менің айтқанымдай, I2C СК -диспетчер модулінің өзіндік ізі бар, СКД -ді I2C -тен толық бағдарламалық басқаруды ұсынатын өз нұсқасын жасау болды.

Схемалық диаграмма мен ПХД схемасы Kicad v4.0.7 2 және 3 суреттерімен жасалды. Бұл жексенбі күні түстен кейін аяқталды, ал бөлшектер Фарнеллден тапсырыс алды және ПХД жексенбі күні кешке дейін JLCPCB -ге жүктелді.

Компоненттер Фарнеллден сәрсенбіде келді, содан кейін бейсенбіде JLCPCB ПХД (мен жылдамдықты жоғарылату үшін DHL жеткізу қызметін қолдандым) суреттері 4, 5, 6 және 7.

Бейсенбі күні кешке қарай 4 -тен 20 -ға дейінгі СК дисплейде екі тақта (3v3 және 5v нұсқалары) құрастырылды және сәтті сыналды. Суреттер 8, 9 және 10.

Бастапқы тұжырымдамадан аяғына дейін 5,5 күн.

Бұл мені JLCPCB тапсырысты тез қабылдай алатынына, екі жақты PTH ПХД шығаратынына және Ұлыбританияға жіберетініне таң қалдырады. Өндіруге 2 күн және жеткізуге 2 күн блистерде. Бұл Ұлыбританияда орналасқан ПХД өндірушілеріне қарағанда тезірек және бағаның аз бөлігінде.

3 -қадам: Бағдарламалық қамтамасыз етуге шолу

Бағдарламалық қамтамасыз етуге шолу
Бағдарламалық қамтамасыз етуге шолу
Бағдарламалық қамтамасыз етуге шолу
Бағдарламалық қамтамасыз етуге шолу

I2C СКД контроллері модулін басқаруға қажетті бағдарламалық қамтамасыз етудің үш негізгі компоненті бар;

1. LiquidCrystal_I2C_PCF8574 Arduino кітапханасы

Мұнда қол жетімді

LCD дисплейін басқару үшін Arduino эскизінде қолданылады.

Ескерту: Бұл жалпы I2C LCD модуль контроллерімен жақсы жұмыс істейді. Тек ол басқа кітапханаларға қарағанда функционалдылық береді.

2. MCP4561_DIGI_POT Arduino кітапханасы

Эскизде СКД контрастын бағдарламалық басқару үшін қолданылады

Мұнда қол жетімді

3. Тегіс өшуге қол жеткізу үшін PWM және Quartic жеңілдету функциясын қолдана отырып, СКД артқы жарық деңгейін бағдарламалық басқару

Жоғарыда айтылғандай, тақтада дисплейдің артқы жарығының біртіндеп өшуін бақылау үшін қолданылатын бір ATTiny85 бар.

Бұл бағдарламалық жасақтама туралы егжей -тегжейлі нұсқаулық «ATTiny85 көмегімен PWM светодиодты сөнуі» нұсқаулығында берілген.

Бұл жағдайда ПХД соңғы өлшемдерін сақтау үшін ATTiny85 SOIC нұсқасы таңдалды. 1 және 2 суреттер ATTiny85 SOIC прототипінде қалай бағдарламаланғанын және сыналғанын көрсетеді.

ATTiny85 бағдарламаланған код мұнда 'Tiny85_I2C_Slave_PWM_2.ino' болды.

Өзіңіздің ATTiny85 бағдарламашыңызды қалай құру керектігі туралы толық ақпаратты мына ATTiny85, ATTiny84 және ATMega328P: Arduino провайдер ретінде бағдарламалауды қараңыз.

4 -қадам: Дизайнды тексеру

Дизайнды сынау
Дизайнды сынау
Дизайнды сынау
Дизайнды сынау

Дизайнды тексеру үшін мен 'LCDControllerTest.ino' эскизін жасадым, ол пайдаланушыға кез келген СКД нақты параметрін сериялық терминал қосылымы арқылы тікелей орнатуға мүмкіндік береді.

Эскизді менің GitHub репозиторийімде табуға болады I2C-LCD-контроллері-модулі

Жоғарыдағы 1 -суретте 4 -тен 20 -ға дейінгі LCD дисплейге орнатылған 5В I2C үйлесімді тақтайшасы және 2 -суретте сынақ кодын бірінші рет іске қосқанда әдепкі дисплей көрсетілген.

Ол артқы жарық пен контраст үшін келесі әдепкі мәндерді пайдаланады;

  • #DISPLAY_BACKLIGHT_LOWER_VALUE_DEFAULT ((белгісіз ұзын) (10))
  • #DISPLAY_CONTRAST_VALUE_DEFAULT анықтау ((uint8_t) (40))

Мен олардың 4 -тен 20 -ға дейінгі LCD дисплейінде жақсы жұмыс істейтінін білдім.

5 -қадам: Қорытынды

Мен электроника/бағдарламалық қамтамасыз ету саласында алғаш рет жұмыс істей бастаған кезімде, егер сіз қателескен болсаңыз, соңғы тізбектегі инженерия көп болған кезде прототиптеу үшін сыммен қаптауды немесе вертолет конструкциясын қолдануға үлкен көңіл бөлінді., тақтаны қайта айналдыру құны мен ұзақтығын ескере отырып.

Әдетте қате сізге кестеде бірнеше аптаға созылады және пайда маржасын (мүмкін сіздің жұмысыңызды) бұзады.

ПХД «өнер туындылары» деп аталды, себебі олар нағыз өнер туындылары болды. Фото трафареттерге төзімді болу үшін «іздеуші» немесе суретші жабысқақ қара креп таспасын қолдана отырып, толық көлемде екі есе жасалды және фабрикамен фотографиялық түрде қысқартылды.

Схема диаграммалары сонымен қатар трассерлермен жасалды және сіздің конструкторлық жазбаларыңыздан қолмен алынды. Көшірмелер фото-статикалық түрде жасалды және «көгілдір басып шығару» деп аталды. Өйткені олар үнемі көк түсті болды.

Микроконтроллерлер тек нәресте кездерінде болды және әдетте сіздің компанияңызға ілеспе күрделі және қымбат даму ортасы қажет болса, олар әдетте эмуляцияланады.

Сол кездегі өндіруші ретінде, бағдарламалық қамтамасыз етуді әзірлеу құралдарының тізбегінің бағасы өте қымбат болды, сіз міндетті түрде EPROM -ге алтыбұрышты мәндерді енгізуге мәжбүр болдыңыз (егер сіз өте бақытты болсаңыз, RAM/Flash), содан кейін нәтижені анықтау үшін бірнеше сағат жұмсайсыз. егер сіздің кодыңыз күткендегідей жұмыс істемесе (осылай жұмыс істейді). Әдетте сіз өзіңіздің жеке кітапханаларыңызды жазуға мәжбүр болдыңыз, өйткені олардың ешқайсысы жоқ (әрине интернет сияқты бай көз жоқ).

Бұл дегеніміз, сіз көп нәрсені қалай жұмыс істейтінін түсінуге тырысып, шығармашылықпен айналысуға аз уақыт жұмсадыңыз.

Сіздің барлық диаграммалар әдетте A4 немесе A3 форматында қолмен салынған және оларға солдан оңға қарай сигнал жолының логикалық ағымын бере отырып, мұқият ойластырылуы керек еді. Түзетулер әдетте жаңа парақтан бастау керек дегенді білдіреді.

Көбінесе сіздің соңғы тізбегіңіз тұрақтылық үшін вертолет көмегімен жасалды және оған «кәсіби жанасу» беру үшін ABS қарапайым корпусына орнатылды.

Керісінше, мен бұл жобаны 5,5 күн ішінде жоғары сапалы ақысыз бағдарламалық жасақтаманың көмегімен жасадым, нәтижесінде кәсіби стандартты ПХД пайда болды. Егер қалау мені қабылдаса, мен оны өз қолыммен жасалған 3D басып шығарылған қорапқа салатын едім.

Сіз он жыл бұрын армандаған нәрсе.

Жағдай жақсы жаққа қалай өзгерді.

6 -қадам: Қолданылған әдебиеттер

KiCAD Схемалық түсіру және ПХД дизайны

KiCAD EDA

Arduino ORG бағдарламалық қамтамасыз етуді құралы

Ардуино

LiquidCrystal_I2C_PCF8574 Arduino кітапханасы

Мұнда

MCP4561_DIGI_POT Arduino кітапханасы

Мұнда

ATTiny85 көмегімен PWM светодиодының тегіс өшуі

Мұнда

ATTiny85, ATTiny84 және ATMega328P бағдарламалау: Arduino провайдер ретінде

Ұсынылған: