У овом упутству уводимо концепт АДЦ (аналогно у дигиталну конверзију) у АРДУИНО УНО. Ардуино плоча има шест АДЦ канала, као што је приказано на доњој слици. Међу њима се било који од њих или сви могу користити као улази за аналогни напон. Ардуино Уно АДЦ, је 10-битном резолуцијом (тако да су вредности број од (0- (2 ^ 10) 1023)). То значи да ће мапирати улазни напон између 0 и 5 волти у целобројне вредности између 0 и 1023. Дакле, за сваки (5/1024 = 4,9 мВ) по јединици.
У свему овоме повезаћемо потенциометар или пот на канал 'А0' и приказаћемо АДЦ резултат на једноставном дисплеју. Једноставни дисплеји су дисплеј јединице 16к1 и 16к2. Екран 16к1 имаће 16 знакова и налази се у једном реду. 16к2 имаће укупно 32 знака 16 у 1. реду и још 16 у 2. реду. Овде треба схватити да у сваком знаку има 5к10 = 50 пиксела, па да би се приказао један знак, свих 50 пиксела мора да ради заједно, али не треба да бринемо због тога, јер у јединици екрана постоји други контролер (ХД44780) који врши посао контроле пиксела (можете га видети на ЛЦД јединици, то је црно око позади).
Компоненте потребне
Хардвер: АРДУИНО УНО, напајање (5в), ЈХД_162АЛЦД (16к2ЛЦД), кондензатор 100уФ, пот 100КΩ или потенциометар, кондензатор 100нФ.
Софтвер: ардуино ИДЕ (Ардуино сваке ноћи)
Шема и објашњење
На ЛЦД екрану од 16к2 има 16 пинова ако постоји позадинско светло, а ако нема позадинског светла, биће 14 пинова. Може се напајати или оставити игле задњег светла. Сада у 14 пинова постоји 8 пинова за податке (7-14 или Д0-Д7), 2 пина за напајање (1 и 2 или ВСС & ВДД или ГНД & + 5в), трећи пин за контролу контраста (ВЕЕ - контролише колико дебели знакови треба да буду приказано) и 3 контролна пина (РС & РВ & Е).
У колу можете приметити да сам узео само два контролна пина, контрастни бит и РЕАД / ВРИТЕ се не користе често, тако да могу бити кратко спојени на масу. Ово ЛЦД поставља у највећи контраст и режим читања. Само треба да контролишемо ЕНАБЛЕ и РС пинове да би у складу са тим слали знакове и податке.
Конекције које се раде за ЛЦД дате су у наставку:
ПИН1 или ВСС на масу
ПИН2 или ВДД или ВЦЦ до + 5в снаге
ПИН3 или ВЕЕ на земљу (даје максимални контраст најбољи за почетнике)
ПИН4 или РС (регистрацијски избор) до ПИН8 АРДУИНО УНО
ПИН5 или РВ (читање / писање) на масу (ставља ЛЦД у режим читања олакшава комуникацију за корисника)
ПИН6 или Е (Омогући) до ПИН9 АРДУИНО УНО
ПИН11 или Д4 до ПИН10 АРДУИНО УНО
ПИН12 или Д5 до ПИН11 АРДУИНО УНО
ПИН13 или Д6 до ПИН12 од АРДУИНО УНО
ПИН14 или Д7 до ПИН13 АРДУИНО УНО
АРДУИНО ИДЕ омогућава кориснику да користи ЛЦД у 4-битном режиму. Ова врста комуникације омогућава кориснику да смањи употребу пин-а на АРДУИНО, за разлику од других, АРДУИНО не мора бити програмиран одвојено за употребу у 4 ит режиму, јер је АРДУИНО подразумевано подешен за комуникацију у 4 битном режиму. У кругу можете видети да смо користили 4-битну комуникацију (Д4-Д7).
Дакле, из пуког посматрања из горње табеле повезујемо 6 пинова ЛЦД-а на контролер у којем су 4 пина податковни пинови и 2 пина за контролу.
Горња слика приказује графички дијаграм АДЦ-а АРДУИНО УНО.
Рад
Да бисмо повезали ЛЦД са АРДУИНО УНО, морамо знати неколико ствари.
|
Пре свега, УНО АДЦ канали имају подразумевану референтну вредност од 5В. То значи да можемо дати максимални улазни напон од 5В за АДЦ конверзију на било ком улазном каналу. Будући да неки сензори пружају напоне од 0-2,5В, са референцом од 5В добијамо мању тачност, па имамо упутство које нам омогућава да променимо ову референтну вредност. Дакле, за промену референтне вредности имамо („аналогРеференце ();“)
Подразумевано добијамо максималну АДЦ резолуцију плоче од 10 бита, ова резолуција се може променити помоћу упутстава („аналогРеадРесолутион (битови);“). Ова промена резолуције може добро доћи у неким случајевима.
Ако су горњи услови постављени на подразумеване, можемо очитати вредност из АДЦ-а канала '0' директним позивом функције „аналогРеад (пин);“, овде „пин“ представља пин где смо повезали аналогни сигнал, у овом случају бити „А0“. Вредност из АДЦ може се узети у цео број као „инт АДЦВАЛУЕ = аналогРеад (А0); ”, Овим упутством вредност након АДЦ-а се чува у целом броју„ АДЦВАЛУЕ ”.
САДА хајде да разговарамо мало о ЛЦД екрану од 16к2. Прво морамо да омогућимо датотеку заглавља ('#инцлуде
Друго, морамо да кажемо плочи коју врсту ЛЦД-а овде користимо. Будући да имамо толико различитих врста ЛЦД-а (попут 20к4, 16к2, 16к1 итд.). Овде ћемо повезати ЛЦД 16к2 са УНО-ом, па ћемо добити 'лцд.бегин (16, 2);'. За 16к1 добијамо 'лцд.бегин (16, 1);'.
У овом упутству ћемо рећи плочи где смо спојили пинове. Пинови који су повезани треба да буду представљени по реду као „РС, Ен, Д4, Д5, Д6, Д7“. Ове чиоде треба правилно представити. Будући да смо РС повезали на ПИН0 и тако даље, као што је приказано на дијаграму кола, представљамо пин број на плочу као „ЛикуидЦристал лцд (0, 1, 8, 9, 10, 11);“.
Након што горе остаје само слање података, подаци који треба да се прикажу на ЛЦД-у требају бити написани као „цд.принт („ здраво, свет! “); Овом командом ЛЦД приказује „здраво, свет!“.
Као што видите, не треба да бринемо ни због чега другог, само треба да се иницијализујемо и УНО ће бити спреман за приказ података. Не морамо овде писати програмску петљу да бисмо овде слали податке по бајт.
Коришћење АДЦ-а Ардуино Уно је објашњено корак по корак у Ц програму датом у наставку.