Orodha ya maudhui:

HD44780 LCD kwa Bodi ya Adapter ya I2C kwa Pirate ya Basi: Hatua 9
HD44780 LCD kwa Bodi ya Adapter ya I2C kwa Pirate ya Basi: Hatua 9

Video: HD44780 LCD kwa Bodi ya Adapter ya I2C kwa Pirate ya Basi: Hatua 9

Video: HD44780 LCD kwa Bodi ya Adapter ya I2C kwa Pirate ya Basi: Hatua 9
Video: Изучаю Ардуино Опыт 1 (работа с LCD дисплеем) 2024, Novemba
Anonim
HD44780 LCD kwa I2C Adapter Board kwa Bus Pirate
HD44780 LCD kwa I2C Adapter Board kwa Bus Pirate
HD44780 LCD kwa I2C Adapter Board kwa Bus Pirate
HD44780 LCD kwa I2C Adapter Board kwa Bus Pirate

Tabia za LCD za bei rahisi kulingana na chipset ya HD44780 huja kwa saizi anuwai: 2x16, 4x20, nk Maonyesho haya yana njia mbili za kiolesura, 4bit na 8bit sambamba. 8bit inahitaji jumla ya mistari 11 ya data, 4bit inahitaji 7 (6 kwa kuandika tu). Baadhi ya LCD zinaunga mkono hali ya ziada ya data ya data, kama VFD niliyoandika kwenye Hack a Day. HD44780 LCD kwa ujumla ni sehemu za 5volt na usambazaji tofauti wa taa ya nyuma. Bus Pirate ina pini tano tu za I / O zinazostahimili 5volt, kwa hivyo tulitengeneza bodi ndogo ya adapta na pini za kutosha kudhibiti LCD. Pirate ya Bus inadhibiti bodi ya adapta kupitia maktaba ya kiolesura cha LCD. Endelea kusoma juu ya bodi ya adapta ya basi ya Pir Pirate HD44780 na maktaba ya kiolesura. Ninaweza kuwa na PCB, kits, au vifaa vya kukusanyika vilivyotengenezwa na Seeed Studio kwa karibu $ 15, pamoja na usafirishaji ulimwenguni, zaidi hapa. Sikuweza kujumuisha vitu kadhaa vya kupangilia na meza za HTML kwa Agizo, unaweza kuona chapisho asili kwenye Prototypes Hatari. blogi.

Hatua ya 1: Vifaa

Vifaa
Vifaa
Vifaa
Vifaa
Vifaa
Vifaa

Katika kifungu hiki tunaelezea bodi ya adapta ya I2C kwa LCDs za HD44780. Tunadhihirisha na kiunga cha serial Pirate ya ulimwengu. Nambari ya chanzo ya Bus Pirate ya maktaba ya interface ya I2C ya HD44780 ni uwanja wa umma, kwa hivyo ni bure kukabiliana na miradi yako mwenyewe. HardwareFull size size image [PNG]. Mzunguko na PCB zilibuniwa na toleo la bure la Cadsoft Eagle. Faili za muundo zinaweza kupakuliwa kutoka Bus Pirate SVN. Kabla ya kutumia bodi ya adapta, hakikisha kudhibitisha data kwa LCD yako dhidi ya pinout ya adapta. Si LCD zote zinafanana. PCF8574 I / O expander IC Hii ni chip rahisi ya 8 ya I / O inayodhibitiwa kupitia kiwambo cha waya mbili cha I2C. Muunganisho wa I2C unapatikana kutoka kwa kichwa JP1. PCF8574 inafanya kazi kutoka 2.5 hadi 5volts. Pini za I / O zinafanya kazi kwenye voltage ya usambazaji, kwa hivyo ikiwa tutailisha 5volts inaingiliana na LCD kwa 5volts. C1 (0.1uF) hutenganisha IC kutokana na kushuka kwa kiwango cha usambazaji wa umeme. Pini moja ya PCF8574 inadhibiti 3mm LED (LED1) kupitia kizuizi cha sasa cha R2 (1000 ohms). Taa za LED kuonyesha mawasiliano mafanikio kati ya Bus Pirate na adapta. PCF8574 haiwezi kupata sasa ya kutosha kuwezesha LED, kwa hivyo tunawasha LED kutoka kwa usambazaji wa 5volt na kubadili ardhi. LCD Bodi ya adapta inawasiliana na HD44780 ya wahusika wa LCD katika hali ya interface ya 4bit sambamba. Pini za kiunganishi cha 4bit - RS, RW, EN, na D4-D7 - zimeunganishwa na pini saba za PCF8574 I / O. Tunapenda kutumia kichwa cha pini cha kiume cha 0.1 kuunganisha adapta kwenye LCD, unaweza kuegemea LCD dhidi ya pini ili kuunda mawasiliano ya kutosha kwa jaribio la haraka. Kichwa cha LCD. Hatukuunganisha pini za taa kwa sababu kuna mitindo anuwai tofauti ya taa za nyuma. Kutoa nguvu kwa taa ya mwangaza ya LED kunaweza kuharibu skrini inayohitaji usambazaji wa voltage hasi. Ugavi wa umeme LCD nyingi zinahitaji volt 5, hutoa usambazaji wa umeme wa nje kupitia kichwa JP2. Tulitoa pini ya pili ya usambazaji wa umeme kuunganisha vipinga-nguvu vya Bus Pirate. PCB Mzunguko na PCB zilibuniwa na toleo la bure la Cadsoft Eagle. Faili za muundo zinaweza kupakuliwa kutoka Bus Pirate SVN. PCB ni muundo wa upande mmoja, wote wa shimo na waya moja ya kuruka (iliyoonyeshwa kwa nyekundu). Tunaweza kuwa na PCB, vifaa, au vifaa vilivyokusanywa vilivyotengenezwa na Seeed Studio kwa karibu $ 15, pamoja na usafirishaji ulimwenguni, zaidi hapa. yote th shimo mbaya) C10.1uF / 10volts + R110000 (10K) ohm moja ya kugeuza / potentiometer, 6mmR21000 (1K) ohm resistor, 1/4 wattLED13mm (T1) LED, redJP1 + JP20.1 "kichwa cha kiume, pini 5 IC1PCF8574N, 8bit I2C I / O expander DIP16ICS116 pin DIP soketi kwa IC1I haikuweza kujumuisha vitu kadhaa vya kupangilia na meza za HTML kwenye Inayoweza Kuelekezwa, unaweza kuona chapisho asili kwenye blogi ya Prototypes Hatari.

Hatua ya 2: Uunganisho

Miunganisho
Miunganisho

Kifaa: LCD ya wahusika wa HD44780. Basi: 4bit sambamba, na bodi ya adapta ya PCF8574 I2C. Mahitaji ya Nguvu: 5volts. Rejeleo: mfano wa data [PDF], rejeleo la amri ya HD44780, tovuti ya Uber ya HD44780. iliyoundwa adapta kwa maktaba ya LCD ya Bus Pirate interface ya serial, lakini itafanya kazi na chochote kinachoweza kuzungumza itifaki ya I2C. Angalia nambari ya chanzo ya Pir Pirate kwa mfano I2C-> HD44780 utekelezaji. Unganisha Pirate ya basi kwenye bodi ya adapta kama inavyoonyeshwa kwenye jedwali. Jedwali pia linaonyesha unganisho ghafi na PCF8574 IC ikiwa unafuata bila bodi ya adapta. Unganisha adapta kwa usambazaji wa umeme wa kutosha kwa LCD, kwa ujumla 5volts. Uunganisho wa I2C kati ya adapta na Pirate ya basi inahitaji vizuizi vya kuvuta kati ya 2 na 10K. Hapa kuna habari zaidi juu ya kuingiliana kwa voltage iliyochanganywa na vuta-kuvuta, na vipinga-vuta vya Bus Pirate kwenye bodi. Siwezi kujumuisha vitu kadhaa vya kupangilia na meza za HTML kwenye Inayoweza Kuelekezwa, unaweza kuona chapisho asili kwenye blogi ya Prototypes Hatari..

Hatua ya 3: Hatua ya 1. Sanidi Maktaba

Hatua ya 1. Sanidi Maktaba
Hatua ya 1. Sanidi Maktaba

Kuingiliana Tumefunika muundo wa adapta na jinsi ya kuiunganisha na Pirate ya basi, sasa ni wakati wa kuandika kitu kwa LCD.11 <<1 <<W <

p <<2 <<v <<< pata ripoti ya voltage MONITOR WA VOLTAGE: 5V: 4.9 | 3.3V: 3.3 | VPULLUP: 5.0 <<Bonyeza 'm' katika kituo cha Bus Pirate na uchague maktaba ya LCD. Hivi sasa inasaidia tu LCD za wahusika wa HD44780 kwa kutumia adapta ya PFC8574 iliyoelezewa katika nusu ya kwanza ya kifungu hiki (chaguo 1) Wezesha vifaa vya umeme (kubwa 'W') na vipinga-kuvuta (menyu 'p'). Angalia mfuatiliaji wa voltage (menyu 'v') na uhakikishe kuwa voltage ya kuvuta (Vpullup) inasoma karibu 5volts.

Hatua ya 4: Hatua ya 2. Weka upya na Uanzishaji

Hatua ya 2. Weka upya na Uanzishaji
Hatua ya 2. Weka upya na Uanzishaji
Hatua ya 2. Weka upya na Uanzishaji
Hatua ya 2. Weka upya na Uanzishaji

Jedwali hili linaelezea amri za baiti moja zinazodhibiti HD44780 LCD, hapa kuna kumbukumbu ya kina. Amri hizi zinaweza kuingizwa kutoka kwa laini ya amri ya Bus Pirate, lakini tumefanya macros kwa wengi wao kuokoa muda. <weka upya LCD2. Init LCD <<< rekebisha na uanzishe LCD3. Futa LCD <<< wazi LCD, rudisha mshale kwa 04. Nafasi ya mshale zamani: (4: 0) << seti mshale postion5. Andika maandishi ya mtihani <<Macro 0 huonyesha orodha ya jumla ya hali yoyote ya basi ya Pirate. 1 <<< mstari mmoja kuonyesha 2. << nyingi2 'Rudisha <<< jumla 2 inajumuisha mlolongo wa kuweka upyaINIT <<Anzisha LCD jumla (2) inasanidi skrini kwa hali ya kiolesura cha 4bit, inawezesha kuonyesha mshale, na huweka chaguzi zingine kadhaa za kusaidia. Sanidi idadi ya laini za kuonyesha, chagua 1 kwa onyesho moja la laini, au 2 kwa maonyesho mengine yote. Baada ya kuanza, skrini inapaswa kuwa wazi na mshale unaonekana kwenye kona. Ikiwa haikufanya kazi, angalia muunganisho wa I2C, vizuizi vya kuvuta, na usambazaji wa umeme, kisha ujaribu tena. HD44780 LCD zinahitaji kuwekwa upya na mlolongo maalum wa ishara kabla ya kuzinduliwa kwa hali ya kiolesura cha 4bit au 8bit. Macro 1 inaunda mlolongo huu. Macro 2 inajumuisha mlolongo wa kuweka upya, kwa hivyo hakuna haja ya kutumia jumla 1 kabla ya jumla 2.

Hatua ya 5: Hatua ya 3. Andika Wahusika wa Mtihani

Hatua ya 3. Andika Wahusika wa Mtihani
Hatua ya 3. Andika Wahusika wa Mtihani
Hatua ya 3. Andika Wahusika wa Mtihani
Hatua ya 3. Andika Wahusika wa Mtihani

LCD> (6:80) <<Nambari za kuandika jumla hujaza LCD na nambari za majaribio kati ya 0 na 9. Nambari baada ya koloni kumwambia Pir Pirate ni nambari ngapi za mtihani kuandika, tunatumia 4x20LCD, kwa hivyo tunaandika nambari 80 kuijaza. Ona kwamba mshale huishia katika nafasi 0, chini ya kwanza '0'. LCD> (7:80) <<Herufi kubwa za kuandika hujaza LCD na herufi za ASCII, ingiza idadi baada ya koloni. Angalia kuwa laini ya ngumi inaendelea kwa tatu, ya tatu kwa pili, na ya pili mwisho. Wahusika hawaendelei kwa sababu LCD za wahusika hazifuniki kutoka mstari mmoja hadi mwingine. Tutazungumza zaidi juu ya hii baadaye.

Hatua ya 6: Hatua ya 4. Futa LCD

Hatua ya 4. Futa LCD
Hatua ya 4. Futa LCD

LCD> (3) <<Macro ya wazi ya LCD hutuma amri ya HD44780 ambayo inafuta skrini na kurudisha mshale kwenye nafasi ya kwanza. Unaweza pia kufanya shughuli zozote hizi bila macros, rejea meza ya amri mwanzoni mwa sehemu hii. Ingiza '[0b1' katika basi Pirate ili kuweka kiolesura cha kuamuru modi ([) na kutuma HD44780 amri ya skrini wazi (0b00000001) bila jumla.]

Hatua ya 7: Hatua ya 5. Andika Nakala

Hatua ya 5. Andika Nakala
Hatua ya 5. Andika Nakala
Hatua ya 5. Andika Nakala
Hatua ya 5. Andika Nakala

LCD> (8) <<< ingiza maandishi ya mtumiaji Ingiza maandishi ili kuingiza kwenye nafasi ya mshale. HD44780 onyesho la LCD <<Baada ya kusafisha LCD katika hatua ya 4, mshale umewekwa kwenye kizuizi cha kwanza. Tunaweza pia kuiweka na jumla (4: 0), ambayo inasogeza mshale kwa herufi ya kwanza. Nakala ya kuingiza kwenye macro ya kielekezi inauliza uingizaji wa maandishi, halafu unakili kwa LCD unapobonyeza kuingia. LCD> (4: 0x40) <& lt

LCD> (8) <<< ingiza maandishi Ingiza maandishi ili kuingiza kwenye nafasi ya mshale. Basi Pirate v2go <<Kuandika kwa laini ya pili ni ngumu kidogo, kwa kweli huanza kwa tabia 64 kwenye 4x20 LCD. Ukiendelea kuandika kutoka mwisho wa mstari wa 1 (tabia 20) basi utaishia mwanzoni mwa mstari wa tatu! Ukurasa huu una mkusanyiko mzuri wa ramani za kumbukumbu kwa saizi nyingi za LCD. Kwanza, tunaweka mshale kwenye laini ya pili (4: 0x40). Ifuatayo, 'maandishi ya kuingiza' jumla inachukua uingizaji wetu na kuiga nakala kwenye LCD. LCD> (4: 0x14) (8) (4: 0x54) (8) <<< syntax nyingi za kuingiza kuingiza kwenye nafasi ya mshale. Firmware v2.0 + <<< tuliandika maandishi haya Ingiza maandishi ili kuingiza kwenye nafasi ya mshale.Pirate ya basi inakubali macro nyingi kwenye mstari huo, kwa hivyo skrini nzima inaweza kuandikwa mara moja. Tuliandika kwa mistari miwili ya mwisho na laini moja ya sintaksia. Tungeweza kutumia '(3) (4: 0) (8) (4: 0x40) (8) (4: 0x14) (8) (4: 0x54) (8) 'kusafisha LCD na kuandika mistari yote minne kwa kiingilio kimoja cha sintaksia.

Hatua ya 8: Hatua ya 6. Kusoma Kutoka kwa LCD

Hatua ya 6. Kusoma Kutoka kwa LCD
Hatua ya 6. Kusoma Kutoka kwa LCD

Bodi ya adapta ya Bus Pirate na LCD inaweza kusoma kutoka kwa LCD. Tutasoma maandishi tuliyoandika kwenye skrini (DDRAM), lakini pia unaweza kusoma mipangilio na kondoo wa tabia ya kawaida (CGRAM) kwa kuweka anwani sahihi. LCD> [0b10000000 "" '] HD44780 RS LOW, COMMAND MODE <<< rejista chagua pin chiniCMD WRITE: 0x80 <<Kwanza, tunamwambia Pirate wa basi atume data kwenye rejista ya amri ya LCD ([). Ifuatayo, tunatumia amri ya kuweka anwani ya DDRAM (0b1xxxxxxx) kuweka pointer ya kusoma hadi mwanzo wa DDRAM (xxxxxxx = 0000000).] LCD>] rrrrrrr <<< soma kumbukumbu ya dataHD44780 RS HIGH, Modi ya DATA <<< rejista chagua pin high SOMA: 0x48 <<< 'H'READ: 0x44 <<<' D'READ: 0x34 <<< '4'READ: 0x34 <<<' 4'READ: 0x37 <<< '7'READ: 0x38 < << '8'READ: 0x30 <<<' 0'LCD> Mwishowe, mwambie Pirate wa Bus asome kutoka kwa kumbukumbu ya data (]), halafu soma ka chache (rrrrrrr). Tunayo "HD44780", maandishi tuliyoandika kwenye skrini katika hatua ya 5. Unapaswa pia kutumia njia ya mkato r: 7 kusoma ka saba, lakini haifanyi kazi katika firmware ya sasa - tutarekebisha hii kabla ya kutolewa ijayo.

Hatua ya 9: Kufanya Zaidi

Kufanya Zaidi
Kufanya Zaidi

Toa maelezo ya jumla ya adapta ya LCD ya StepThe HD44780 ni nyongeza inayofaa kwa Pirate ya basi. Inaweza kutumika kwa jaribio la haraka, au maendeleo ya juu zaidi ya mantiki. Mbali na LCD, pini nane za 2.5volt-5volt I / O zinaweza kuwa muhimu kwa matumizi mengine ya juu ya hesabu ya Bus Pirate. au vifaa vilivyokusanywa vilivyotengenezwa na Seeed Studio kwa karibu $ 15, pamoja na usafirishaji ulimwenguni, zaidi hapa. Sikuweza kujumuisha vipengee kadhaa vya uumbizaji na meza za HTML kwenye Inayoweza Kuelekezwa, unaweza kuona chapisho asili kwenye blogi ya Prototypes Hatari.

Ilipendekeza: