Բովանդակություն:

HD44780 LCD- ից I2C ադապտերային տախտակ ավտոբուսային ծովահենների համար. 9 քայլ
HD44780 LCD- ից I2C ադապտերային տախտակ ավտոբուսային ծովահենների համար. 9 քայլ

Video: HD44780 LCD- ից I2C ադապտերային տախտակ ավտոբուսային ծովահենների համար. 9 քայլ

Video: HD44780 LCD- ից I2C ադապտերային տախտակ ավտոբուսային ծովահենների համար. 9 քայլ
Video: Ինչպես պատրաստել LDmicro Arduino PLC I2C LCD- ով 2024, Նոյեմբեր
Anonim
HD44780 LCD- ից I2C ադապտերային տախտակ ավտոբուսային ծովահենների համար
HD44780 LCD- ից I2C ադապտերային տախտակ ավտոբուսային ծովահենների համար
HD44780 LCD- ից I2C ադապտերային տախտակ ավտոբուսային ծովահենների համար
HD44780 LCD- ից I2C ադապտերային տախտակ ավտոբուսային ծովահենների համար

HD44780 չիպսեթի վրա հիմնված էժան կերպարով LCD էկրանները տարբեր չափսերի են ՝ 2x16, 4x20 և այլն: Այս էկրաններն ունեն երկու ստանդարտ ինտերֆեյսի ռեժիմ ՝ 4 բիթ և 8 բիթ զուգահեռ: 8 բիթը պահանջում է ընդհանուր առմամբ 11 տվյալների տող, 4 բիթը `7 (6-ը` միայն գրելու համար): Որոշ LCD- ներ ապահովում են լրացուցիչ սերիական տվյալների ռեժիմ, ինչպես VFD I- ը, որը լուսաբանել եմ Hack a Day- ում: HD44780 LCD- երը, ընդհանուր առմամբ, 5 վոլտ մասեր են ՝ հետին լուսավորության առանձին մատակարարմամբ: Bus Pirate- ն ունի ընդամենը 5 վոլտ հանդուրժող I/O հինգ կապում, այնպես որ մենք փոքրիկ ադապտերային տախտակ պատրաստեցինք, որը բավականաչափ կապում էր ՝ LCD- ը վերահսկելու համար: Bus Pirate- ը վերահսկում է ադապտերային տախտակը իր LCD ինտերֆեյսի գրադարանի միջոցով: Շարունակեք կարդալ Bus Pirate HD44780 բնույթի LCD ադապտերատախտակի և ինտերֆեյսի գրադարանի մասին: Ես կարող եմ ունենալ Seeed Studio- ի արտադրած PCB- ներ, հավաքածուներ կամ հավաքված հավաքածուներ մոտ $ 15 -ով, ներառյալ համաշխարհային առաքումը, ավելին այստեղ: Ես չեմ կարող ներառել որոշ ձևաչափման տարրեր և HTML աղյուսակներ Instructable- ում, դուք կարող եք տեսնել օրիգինալ գրառումը Վտանգավոր նախատիպերում բլոգ.

Քայլ 1: Սարքավորումներ

Սարքավորումներ
Սարքավորումներ
Սարքավորումներ
Սարքավորումներ
Սարքավորումներ
Սարքավորումներ

Այս հոդվածում մենք ուրվագծում ենք I2C ադապտերային տախտակ HD44780- ի վրա հիմնված LCD- ների համար: Մենք դա ցուցադրում ենք Bus Pirate ունիվերսալ սերիական ինտերֆեյսով: I2C- ի վրա հիմնված HD44780 ինտերֆեյսի գրադարանի Bus Pirate- ի աղբյուրի կոդը հանրային տիրույթն է, ուստի անվճար է հարմարվել ձեր սեփական նախագծերին: Շղթան և PCB- ն նախագծված են Cadsoft Eagle- ի անվճար տարբերակով: Դիզայնի ֆայլերը կարելի է ներբեռնել Bus Pirate SVN- ից: Նախքան ադապտերատախտակն օգտագործելն, անպայման ստուգեք ձեր LCD- ի տվյալների թերթիկը `ադապտերների ճեղքման դեմ: Ոչ բոլոր LCD- ները նույնն են: PCF8574 I/O ընդլայնիչ IC Սա պարզ 8 I/O ընդլայնիչ չիպ է, որը վերահսկվում է երկալար I2C ինտերֆեյսի միջոցով: I2C ինտերֆեյսը հասանելի է JP1 վերնագրից: PCF8574- ը աշխատում է 2.5 -ից մինչև 5 վոլտ: I/O կապումներն աշխատում են մատակարարման լարման դեպքում, այնպես որ, եթե մենք այն սնուցում ենք 5 վոլտ, այն միանում է LCD- ին 5 վոլտ -ով: C1 (0.1uF) անջատում է IC- ն էլեկտրամատակարարման տատանումներից: PCF8574- ի մեկ քորոցը վերահսկում է 3 մմ LED (LED1) ընթացիկ սահմանափակող դիմադրության R2 (1000 օմ) միջոցով: LED լույսերը ցույց են տալիս Bus Pirate- ի և ադապտերի հաջող հաղորդակցությունը: PCF8574- ը չի կարող բավարար հոսանք ապահովել LED- ն սնուցելու համար, ուստի մենք LED- ն ապահովում ենք 5 վոլտ սնուցման աղբյուրից և միացնում ենք գետինը: LCD Ադապտերային տախտակը հաղորդակցվում է HD44780- ի վրա հիմնված LCD բնույթի հետ ՝ 4 բիթ զուգահեռ ինտերֆեյսի ռեժիմում: 4 բիթանոց ինտերֆեյսի կապում ՝ RS, RW, EN և D4 -D7, միացված են PCF8574 I/O կապերից յոթին: Մեզ դուր է գալիս օգտագործել 0.1 "արական կապի վերնագիր` ադապտորը LCD- ին միացնելու համար, սովորաբար կարող եք LCD- ը հենել կապումներին `արագ փորձարկման համար բավարար կոնտակտ ստեղծելու համար: Հեծանիվ դիմադրություն R1 (10K) ապահովում է կոնտրաստի 3 -ի կոնտրաստային լարումը: LCD վերնագիր: Մենք չենք միացրել հետևի լուսավորության կապերը, քանի որ կան շատ տարբեր լուսային ոճեր: LED լուսավորության լուսավորությունը կարող է վնասել բացասական լարման աղբյուր պահանջող էկրանին: Էներգամատակարարում LCD- ների մեծ մասը պահանջում է 5 վոլտ, ապահովում է արտաքին էներգիայի մատակարարում header JP2. Մենք տրամադրեցինք երկրորդ սնուցման աղբյուրը Bus Pirate- ի քաշվող դիմադրիչները միացնելու համար: PCB Շղթան և PCB- ն նախագծված էին Cadsoft Eagle- ի անվճար տարբերակով: Դիզայնի ֆայլերը կարելի է ներբեռնել Bus Pirate SVN- ից: PCB- ն է միակողմանի, ամբողջ անցք ունեցող դիզայն ՝ մեկ թռիչքային մետաղալարով (ցուցադրված է կարմիր գույնով): Մենք կարող ենք ունենալ PCB- ներ, հավաքածուներ կամ հավաքված հավաքածուներ, որոնք արտադրվում են Seeed Studio- ի կողմից մոտ $ 15-ով, ներառյալ համաշխարհային առաքումը, ավելին այստեղ: Partlist Part Value (բոլորը րդ կոպիտ անցք) C10.1uF/10volts+R110000 (10K) ohm մեկ պտույտ հարմարվողական/պոտենցիոմետր, 6mmR21000 (1K) ohm դիմադրիչ, 1/4 վտ LED 13 մմ (T1) LED, կարմիր JP1+JP20.1 "արական գլխիկ, 5 կապ PICIC1PCF8574N, 8bit I1C I/O ընդլայնիչ DIP16ICS116 կապ DIP վարդակից IC1- ի համար Ես չէի կարող ներառել որոշ ձևաչափման տարրեր և HTML աղյուսակներ Instructable- ում, դուք կարող եք տեսնել սկզբնական գրառումը Վտանգավոր նախատիպերի բլոգում:

Քայլ 2: Միացումներ

Միացումներ
Միացումներ

Սարքը ՝ HD44780 նիշի LCD: Ավտոբուս ՝ 4 բիթ զուգահեռ, PCF8574 I2C ադապտերային տախտակով: Ուժի պահանջներ ՝ 5 վոլտ: Հղումներ ՝ օրինակ տվյալների թերթ [PDF], HD44780 հրամանի տեղեկանք, HD44780 LCD uber-site: Ավտոբուսի ծովահենների նստաշրջանի ամբողջական գրանցում այս ցուցադրման համար: նախագծեց Bus Pirate ունիվերսալ սերիալային ինտերֆեյսի LCD գրադարանի ադապտերը, սակայն այն կաշխատի այն ամենի հետ, ինչը կարող է խոսել I2C արձանագրության մասին: Նայեք Bus Pirate- ի աղբյուրի կոդին ՝ I2C-> HD44780 իրականացման օրինակով: Միացրեք Bus Pirate- ը ադապտերատախտակին, ինչպես ցույց է տրված աղյուսակում: Աղյուսակը նաև ցույց է տալիս PCF8574 IC- ի չմշակված միացումները, եթե հետևում եք առանց ադապտերային տախտակի: Միացրեք ադապտորը LCD- ի համար բավարար էներգիայի աղբյուրին, ընդհանուր առմամբ 5 վոլտ: I2C ադապտորի և Bus Pirate- ի միջև կապը պահանջում է 2-ից 10K միջակայքի ձգման դիմադրություններ: Ահա ավելի շատ տեղեկություններ խառը լարման հետ շփման և քաշքշուկների և Bus Pirate- ի ինքնագնաց դիմադրության մասին: Ես չկարողացա որոշ ձևաչափման տարրեր և HTML աղյուսակներ ներառել Instructable- ում, կարող եք դիտել բնօրինակ գրառումը Վտանգավոր նախատիպերի բլոգում.

Քայլ 3. Քայլ 1. Տեղադրեք գրադարանը

Քայլ 1. Տեղադրեք գրադարանը
Քայլ 1. Տեղադրեք գրադարանը

Ինտերֆեյս Մենք լուսաբանել ենք ադապտերների դիզայնը և ինչպես այն միացնել Bus Pirate- ին, այժմ վերջապես ժամանակն է LCD- ին ինչ -որ բան գրել: HiZ> m <<11 <<1 <<W <

p <<2 <<v <<< ստանալ լարման հաշվետվություն ԼԱՐԻ ՄՈՆԻՏՈՐ, 5 Վ: 4.9 | 3.3 Վ ՝ 3.3 | VPULLUP: 5.0 <<Bus Pirate տերմինալում սեղմեք 'm' և ընտրեք LCD գրադարանը: Այն ներկայումս աջակցում է միայն HD44780 բնույթի LCD- ներին `օգտագործելով սույն հոդվածի առաջին կեսում նկարագրված PFC8574 ադապտերը (տարբերակ 1): Միացրեք էներգիայի աղբյուրները (մեծ« W ») և ձգվող դիմադրողները (ընտրացանկը« p »): Ստուգեք լարման մոնիտորը (ընտրացանկ 'v') և համոզվեք, որ ձգման լարումը (Vpullup) կարդում է մոտ 5 վոլտ:

Քայլ 4. Քայլ 2. Վերագործարկեք և սկսեք

Քայլ 2. Վերագործարկեք և սկսեք
Քայլ 2. Վերագործարկեք և սկսեք
Քայլ 2. Վերագործարկեք և սկսեք
Քայլ 2. Վերագործարկեք և սկսեք

Այս աղյուսակը ներկայացնում է մեկ բայթ հրամանները, որոնք վերահսկում են HD44780 LCD- ը, ահա մանրամասն տեղեկանք: Այս հրամանները կարող են մուտքագրվել Bus Pirate հրամանի տողից, սակայն դրանցից շատերի համար մենք մակրո ենք պատրաստել `ժամանակ խնայելու համար: LCD> (0) <<< ցույց է տալիս մակրո ընտրացանկը 0. մակրո մենյու <<< այս ընտրացանկը 1. LCD- ի վերականգնում << <զրոյացնել LCD2. Սկզբնական LCD <<< վերակայել և սկզբնականացնել LCD3- ը: Մաքրել LCD <<< մաքուր LCD, կուրսորը վերադարձնել 04 -ին: Կուրսորի դիրքը ՝ օրինակ ((4: 0) <<< սահմանել կուրսորի դիրքը 5. Գրեք թեստային տեքստը <<Մակրո 0 -ն ցուցադրում է մակրո մենյու ցանկացած ավտոբուսային ծովահենության ռեժիմի համար: LCD> (2) <<< նախաստորագրել LCD մակրո Displayուցադրման գծեր. 1. 1 <<< մեկ տող ցուցադրում 2. Բազմակի <<2 'RESET <<< մակրո 2 -ը ներառում է վերակայման հաջորդականություն INIT <<LCD մակրոի սկզբնավորումը (2) կարգավորում է էկրանը 4 բիթանոց ինտերֆեյսի ռեժիմի համար, հնարավորություն է տալիս ցուցադրել ցուցիչը և սահմանել մի քանի այլ օգտակար տարբերակներ: Կարգավորեք ցուցադրման տողերի քանակը, ընտրեք 1 -ը մեկ տողի ցուցադրման համար, կամ 2 -ը մյուս բոլոր ցուցադրումների համար: Նախաստորագրումից հետո էկրանը պետք է մաքուր լինի, անկյունում տեսանելի կուրսորը: Եթե այն չաշխատեց, ստուգեք I2C կապը, ձգվող դիմադրիչները և էլեկտրամատակարարումը, այնուհետև նորից փորձեք: HD44780 LCD- ները պետք է վերակայվեն հատուկ ազդանշանային հաջորդականությամբ ՝ նախքան դրանք 4bit կամ 8bit ինտերֆեյսի ռեժիմում նախաստորագրվելու համար: Մակրո 1 -ը ստեղծում է այս հաջորդականությունը: Մակրո 2 -ը ներառում է վերակայման հաջորդականությունը, ուստի մակրո 1 -ից առաջ մակրո 1 օգտագործելու կարիք չկա:

Քայլ 5. Քայլ 3. Գրեք թեստային կերպարներ

Քայլ 3. Գրեք թեստային կերպարներ
Քայլ 3. Գրեք թեստային կերպարներ
Քայլ 3. Գրեք թեստային կերպարներ
Քայլ 3. Գրեք թեստային կերպարներ

LCD> (6:80) <<Գրելու համարների մակրոը LCD- ը լցնում է 0 -ից 9 -ի թեստային թվերով: Կոլոնից հետո թիվը Bus Pirate- ին ասում է, թե քանի թեստ պետք է գրել, մենք օգտագործում ենք 4x20LCD, ուստի 80 թվ ենք գրում այն լրացնելու համար: Ուշադրություն դարձրեք, որ կուրսորը վերջանում է 0 դիրքում ՝ առաջին «0» -ի ներքո: LCD> (7:80) <<Գրելու նշանների մակրոյը LCD- ը լրացնում է ASCII նիշերով, մուտքագրեք քանակությունը հաստ կետից հետո: Ուշադրություն դարձրեք, որ բռունցքի գիծը շարունակվում է երրորդի վրա, երրորդը `երկրորդի վրա, իսկ երկրորդը` վերջինի վրա: Նիշերը շարունակական չեն, քանի որ նիշերի LCD- ները չեն փաթաթվում մեկ տողից մյուսը: Այս մասին մի փոքր ավելի կխոսենք ավելի ուշ:

Քայլ 6: Քայլ 4. Մաքրել LCD- ը

Քայլ 4. Մաքրել LCD- ը
Քայլ 4. Մաքրել LCD- ը

LCD> (3) <<Հստակ LCD մակրոտն ուղարկում է HD44780 հրամանը, որը ջնջում է էկրանը և կուրսորը վերադարձնում առաջին դիրքին: Դուք կարող եք նաև կատարել այս գործողություններից որևէ մեկն առանց մակրոների, տե՛ս այս բաժնի սկզբում գտնվող հրամանների աղյուսակը: Մուտքագրեք «[0b1» - ը Bus Pirate- ում ՝ ինտերֆեյսը հրամանի ռեժիմին ([) դնելու և HD44780 հստակ էկրանի հրամանը (0b00000001) առանց մակրո ուղարկելու համար:]

Քայլ 7: Քայլ 5. Մուտքագրեք տեքստը

Քայլ 5. Մուտքագրեք տեքստը
Քայլ 5. Մուտքագրեք տեքստը
Քայլ 5. Մուտքագրեք տեքստը
Քայլ 5. Մուտքագրեք տեքստը

LCD> (8) <<< տեղադրեք օգտվողի տեքստ Մուտքագրեք տեքստ ՝ նշորդի դիրքում տեղադրելու համար: HD44780 LCD ցուցադրում <<4 -րդ քայլում LCD- ը մաքրելուց հետո կուրսորը տեղադրվում է առաջին բլոկում: Մենք կարող ենք այն սահմանել նաև մակրոով (4: 0), որը կուրսորը տեղափոխում է առաջին նիշ: Կուրսորը մակրո տեքստը տեղադրելը տեքստի մուտքագրում է պահանջում, այնուհետև այն պատճենել LCD- ին: enter մուտքագրելիս: ՝ 0x40) <& lt

LCD> (8) <<< տեղադրեք տեքստ Մուտքագրեք տեքստ ՝ կուրսորը տեղադրելու համար: Bus Pirate v2go <<Երկրորդ տողին գրելը մի փոքր ավելի բարդ է, այն իրականում սկսվում է 4x20 LCD- ի 64 -րդ նիշից: Եթե շարունակիք գրել տողի 1 -ից (կերպար 20), ապա կհայտնվեք երրորդ տողի սկզբում: Այս էջն ունի հիշողության քարտեզների գեղեցիկ հավաքածու ՝ բնույթի LCD չափսերի մեծ մասի համար: Նախ, կուրսորը տեղադրում ենք երկրորդ տողում (4: 0x40): Հաջորդը, «տեղադրեք տեքստը» մակրոը գրավում է մեր մուտքը և պատճենում այն LCD- ին: LCD> (4: 0x14) (8) (4: 0x54) (8) <<< բազմակի մակրո շարահյուսություն Մուտքագրեք տեքստ ՝ կուրսորը տեղադրելու համար: Firmware v2.0+ <<< մենք մուտքագրել ենք սա Մուտքագրեք տեքստ ՝ կուրսորը տեղադրելու համար: Վտանգավոր նախատիպեր <<Ավտոբուսի ծովահենն ընդունում է մի քանի մակրո միևնույն տողում, այնպես որ ամբողջ էկրանը կարող է միանգամից գրվել: Վերջին երկու տողերին գրել ենք շարահյուսության մեկ տողով: Կարող էինք օգտագործել '(3) (4: 0) (8) (4: 0x40) (8) (4: 0x14) (8) (4: 0x54) (8) 'մաքրելու LCD- ն և գրելու բոլոր չորս տողերը մեկ շարահյուսական գրառմամբ:

Քայլ 8. Քայլ 6. Կարդալ LCD- ից

Քայլ 6. Կարդալ LCD- ից
Քայլ 6. Կարդալ LCD- ից

Bus Pirate և LCD ադապտերային տախտակը կարող են կարդալ LCD- ից: Մենք կկարդանք մեր գրած տեքստը էկրանին (DDRAM), բայց կարող եք կարդալ նաև պարամետրերը և հատուկ բնույթի խոյը (CGRAM) ՝ ճիշտ հասցե սահմանելով: '] HD44780 RS LOW, COMMAND MODE <<< գրանցել ընտրել քորոց ցածր CMD ԳՐԵԼ: 0x80 <<Նախ, մենք ավտոբուսային ծովահենին ասում ենք, որ տվյալները ուղարկի LCD հրամանի գրանցամատյան ([): Հաջորդը, մենք օգտագործում ենք սահմանված DDRAM հասցեի հրամանը (0b1xxxxxxx), որպեսզի ընթերցված ցուցիչը դնենք DDRAM- ի սկզբին (xxxxxxx = 0000000):] LCD>] rrrrrrr <<< կարդալ տվյալների հիշողություն HD44780 RS HIGH, DATA MODE <<< գրանցում ընտրել քորոց բարձր << '8'READ: 0x30 <<<' 0'LCD> Վերջապես, ասեք Bus Pirate- ին կարդալ տվյալների հիշողությունից (]), այնուհետև կարդացեք մի քանի բայթ (rrrrrrr): Մենք ստացանք «HD44780», տեքստը, որը մենք գրել ենք էկրանին 5 -րդ քայլում: Դուք նաև պետք է կարողանաք օգտագործել դյուրանցումը r: 7 յոթ բայթ կարդալու համար, սակայն ընթացիկ որոնվածում այն չի աշխատում. Մենք դա շտկելու ենք նախքան հաջորդ թողարկումը:

Քայլ 9: Ավելին անել

Ավելին անելով
Ավելին անելով

Ներկայացրեք Step– ի ընդհանուր նկարագրությունը HD44780 նիշ ունեցող LCD ադապտերը հարմար աքսեսուար է Bus Pirate- ի համար: Այն կարող է օգտագործվել արագ փորձարկման կամ ավելի առաջադեմ տրամաբանության զարգացման համար: Բացի LCD- ներից, ութ 2.5volt-5volt I/O կապանքները կարող են օգտակար լինել Bus Pirate- ի բարձր ցուցանիշների համար: Մենք կարող ենք ունենալ PCB, փաթեթներ, կամ Seeed Studio- ի արտադրած հավաքված հավաքածուները մոտ 15 դոլարով, ներառյալ համաշխարհային առաքումը, ավելին այստեղ: Ես չէի կարող ներառել որոշ ձևաչափման տարրեր և HTML աղյուսակներ Instructable- ում, դուք կարող եք տեսնել օրիգինալ գրառումը Վտանգավոր նախատիպերի բլոգում:

Խորհուրդ ենք տալիս: