Агуулгын хүснэгт:

I2C: 7 алхам бүхий 20х4 хэмжээтэй LCD дэлгэц ашиглан гар Arduino цаасан рок хайч тоглоом
I2C: 7 алхам бүхий 20х4 хэмжээтэй LCD дэлгэц ашиглан гар Arduino цаасан рок хайч тоглоом

Видео: I2C: 7 алхам бүхий 20х4 хэмжээтэй LCD дэлгэц ашиглан гар Arduino цаасан рок хайч тоглоом

Видео: I2C: 7 алхам бүхий 20х4 хэмжээтэй LCD дэлгэц ашиглан гар Arduino цаасан рок хайч тоглоом
Видео: #5 Жидкокристаллический дисплей I2C || ESP8266 FLPROG ЛЕСТНИЧНАЯ ЛОГИКА 2024, Долдугаар сарын
Anonim
I2C хэмжээтэй 20х4 хэмжээтэй LCD дэлгэц ашиглан гар Arduino цаасан рок хайч тоглоом
I2C хэмжээтэй 20х4 хэмжээтэй LCD дэлгэц ашиглан гар Arduino цаасан рок хайч тоглоом
I2C бүхий 20х4 хэмжээтэй LCD дэлгэц ашиглан гар Arduino цаасан рок хайч тоглоом
I2C бүхий 20х4 хэмжээтэй LCD дэлгэц ашиглан гар Arduino цаасан рок хайч тоглоом
I2C хэмжээтэй 20х4 хэмжээтэй LCD дэлгэц ашиглан гар Arduino цаасан рок хайч тоглоом
I2C хэмжээтэй 20х4 хэмжээтэй LCD дэлгэц ашиглан гар Arduino цаасан рок хайч тоглоом

Бүгдээрээ сайн уу, эсвэл би "Сайн уу Дэлхий!" Гэж хэлэх ёстой.

Ардуиногийн олон зүйлд миний оруулсан төслийг тантай хуваалцах нь үнэхээр таатай байх болно. Энэ бол I2C 20x4 LCD дэлгэцийг ашигладаг гар хийцийн Arduino Paper Rock Scissors тоглоом юм. Та "Өөр нэг цаасан рок хайч тоглоом уу?" Гэж бодож байж магадгүй гэдгийг би мэдэж байна. Гэхдээ ихэнх Arduino Paper Rock Scissors тоглоомууд энгийн LED -ийг ашигладаг бөгөөд би бас servo -ээр өргөгдсөн цаасан тэмдгийг ашигладаг тоглоомыг харсан. Эдгээр нь дажгүй юм. Энэхүү төсөл нь 20х4 хэмжээтэй LCD дэлгэцийг ашигладаг бөгөөд нэгийг нь I2C, нэгийг нь харуулдаггүй (энд харуулаагүй болно). Зүгээр л талхны тавцангийн эмх замбараагүй, дууссан төрхтэй хямд үнэтэй хайрцаг авахыг хүсч байна. Хүн бүр 3D принтер ашиглах эрхгүй бөгөөд үүнийг хийсэн хүнд мөнгө төлөхийг хүсдэггүй. Би бусадтай санаа бодлоо хуваалцахын тулд үүнийг хялбархан хийхийг хүсч байсан. Миний програмчлалын ур чадвар анхан шатны түвшинд байгаа тул ноорог нь маш энгийн бөгөөд ойлгоход хялбар, засварлахад хялбар байдаг. Энэ бол ноорог хийх миний хувийн боловсрол байсан юм. Та ноорог дээр маш олон тэмдэглэл олох болно, энэ нь зөв гэдэгт итгэх хүртэл олон (20+?) Давталтуудыг давсан болно. Төслийн өртөг нь $ 20 хүрэхгүй (I2C бус).

Got Arduino -ийг 2018 онд эхлүүлсэн бөгөөд тэдний вэбсайтыг үзэж, миний чадах бүх зүйлийг уншсан. Олон жилийн турш хуваалцсан олон зааварчилгааны төслийг дагалдах жишээ төслүүдийг бүтээж, туршиж үзсэн. Тэднийг үнэхээр үнэлдэг бөгөөд та бүгдээс маш их зүйлийг сурч авсан. Баярлалаа. Одоо би өөрийнхөө бүтээлч байдлыг нэмж сурсан зүйлээсээ хуваалцахыг хүсч байна. Сэтгэгдлүүдийн хэсэг үүнийг хэрхэн хийх талаар олон асуулт цуглуулахаас өмнө үүнийг санаж байгаарай, би үүнийг Arduino -д туршлагагүй байдлаар эхлүүлсэн. Би жишээ төслүүдийг Arduino болон Instructables вэбсайтууд дээр бий болгосноор олж мэдсэн. Залуус аа, би та нараас сурсан. Хэрэв та гацсан бол эдгээр нь таны шийдлийг олох хамгийн хурдан арга байж магадгүй юм.

Алхам 1: Төслийн танилцуулга

Төслийн танилцуулга
Төслийн танилцуулга
Төслийн танилцуулга
Төслийн танилцуулга

Амазоны LCD дэлгэцийг сонгож, хямд өртөгтэй (ойролцоогоор 12-18 доллар), утас, програмчлалын хялбар байдлаас шалтгаалан I2C 20x4 LCD -ийг сонгосон. Хэрэв та хүсвэл I2C -гүй нэгийг ашиглаж болох бөгөөд 7 доллараар хямд авах боломжтой. Гэхдээ та өөр номын сан, утсан холболтын схемийг ашиглаж, илүү их Arduino зүү ашиглах хэрэгтэй болно. Санаа зоволтгүй, аль ч замаар явахад л хангалттай. Цуврал I2C 20x4 -ийг бүтээхэд илүү хялбар байх болно, цөөн тооны утас нь төөрөгдөл үүсгэдэггүй. Гэхдээ зэрэгцээ 20x4 хэмжээтэй LCD дэлгэц ойролцоогоор 5 доллараар хямд байна. Би утсан холболтын хоёулангийнх нь схемийг зурсан. Бусад хэсгүүдийн ихэнхийг Амазон болон дотоодын хэд хэдэн дэлгүүрээс худалдаж авсан. Миний хайрцаг бол хоосон капучино ундааны холимог хайрцаг юм. Таг асаах/унтраах, ямар ч эд анги дээр ажиллах эсвэл батерейг солихын тулд таг амархан унтрах дуртай. Тэгээд "Хөөе!" хайрцаг үнэгүй байсан, би капучино дуртай. Хуванцарыг дахин боловсруулах нь байгаль орчинд ээлтэй. Та дуртай бүх хайрцгийг ашиглаж болно, бүх зүйл нь төсөлд багтсан эсвэл хайрцаг эсвэл талхны тавцан дээр алгасч болно. Би хямд үнээр "дууссан төслийн дүр төрхийг" харахыг хүсч байсан. 3D хэвлэсэн хувилбарыг хэн нэгэн бүтээсэн гэдэгт би мөрийцдөг. Arduino нь LCD дэлгэц дээр Paper Rock Scissors тоглоомыг тоглодог, оноо хадгалдаг, товчлуураар оруулдаг, хэрэв та сонговол хууран мэхлэх боломжтой сонголт байдаг. Анх хууран мэхлэх функцийг дибаг хийх зорилгоор бичсэн бөгөөд үүнийг дуусгаад би үүнийг тайлбарлав. Зүгээр л хөгжилтэй байхын тулд би үүнийг буцааж оруулав.

Алхам 2: Талхны тавцан

Талхны тавцан
Талхны тавцан
Талхны тавцан
Талхны тавцан

Би Arduino Uno ашиглан тойрогтоо суулгасан боловч хайрцагт илүү сайн тохирдог тул бүгдийг нь нэгтгэхдээ Arduino Nano-ийг ашигласан. Тиймээс та үүнийг аль нэгээр нь барьж болно. Гэхдээ IDE дээрх хос тохиргоог өөрчлөхээ мартуузай. Наног LCD дэлгэцийн ар талд Command Strips эсвэл хоёр талт наалдамхай тууз ашиглан суулгасан болно. Arduino Nano -г I2C piggyback хавтангийн хажууд байрлуул, ингэснээр USB холбогч гадагшаа (LCD -ийн баруун талд) харагдана. Та 9v эсвэл 4x AA (6v өгдөг) батерейны хайрцгийг SPST слайд унтраалгатай, хайрцгийн дотор суурилуулсан тэжээлд ашиглаж болно. Үүнийг хоёуланг нь бүтээсэн Arduino нь хүчдэлийн зохицуулагчтай бөгөөд шаардлагатай 5 вольт хүртэл бууруулдаг. Хэрэв та энэ талаар бодож үзвэл энэ тоглоом нь "ихэвчлэн үхсэн 9В батерейг" дахин боловсруулж, сайн ажиллаж чаддаг. (Та утааны детекторын батерейг жилд хоёр удаа сольдог, тийм үү?) 9в батерей ашигладаг бусад төхөөрөмжүүд 6-8 вольтоор цэнэггүй болсон гэж хэлж болно; гэхдээ "Arduino Dead!" дууг дуустал үхээгүй.

Төсөл зохиохдоо би 4 SPST товчлуурыг оруулахад ашигласан боловч дууссан тоглоомыг хайрцагт байрлуулахдаа 5 SPST товчлуурыг ашигласан бөгөөд ирээдүйд илүү олон товчлуур хэрэгтэй тоглоом хийхийг оролдож магадгүй гэж бодож байна. Магадгүй лабиринт тоглоом уу? Товчлуурт зориулсан резистор хүчдэл хуваагуурыг тушаалын зурвас дээр бэхлэх боломжтой хаягдал хавтан дээр байрлуулсан болно.

Алхам 3: угсрах

Чуулган
Чуулган
Чуулган
Чуулган
Чуулган
Чуулган

Чуулган:

4 үндсэн угсралт бол нэмэлт I2C piggyback самбар бүхий LCD, Arduino Nano, хоорондоо холбогддог прото самбар болон батерейны хайрцгийг асаах/унтраах хэлхээнд холбогдсон резистор ба унтраалга юм.

Та схемийн дагуу хэлхээний талх эсвэл прото самбарыг хатуу утсаар холбох хэрэгтэй. Би LCD -ийг маажихгүйн тулд хайрцагныхаа таган дээр доош харуулан хадгалах дуртай. Би Arduino -ийн зөвхөн нэг талд 5v -ийн толгойг прото самбартай холбохын тулд ашигласан. Би Arduino-аас прото самбар хүртэл 3 толгойтой (гагнуурын ажил ихтэй) гүүр хийсэн тул тэд LCD-ийн ар талд командын тууз эсвэл хоёр талт наалдамхай туузаар хэвтэв. Гэхдээ үнэхээр самбарыг гагнуурын утсыг нэгээс нөгөө рүү холбож болно. Эмэгтэй толгойг ашиглан прото самбарыг LCD I2C -тэй холбосон. Товчнуудын 5 гагнуурын цэгийг хийхийн тулд прото хавтангийн резистор хөлийг ашиглаж болно. Товчлуур бүрийн нөгөө хөл нь Arduino pin A0 руу ордог. Товчлуур бүрт 2 утас гагнах шаардлагатай болно. Ом товчлуур ашиглан аль товчлуурын хөлийг ашиглахыг тодорхойлох боловч ерөнхийдөө та зэргэлдээгүй хөлтэй (бие биенээсээ диагональ) алдаа гаргаж чадахгүй.

IDE дээр Arduino -ийнхээ тохиргоог сонгоно уу. Ноорог зургийг татаж аваад Arduino дээр ачаалж, туршилт / асуудалтай тэмцэх.

Үүнийг хайрцагт хийхэд бэлэн үү? Капучиногийн шошгыг арилгаж, хайрцгийг минь угааж, хатаав. Таны харж байгаагаар LCD хайрцгийн нүхийг сайтар хэмжиж хайчилж аваарай. Үүнийг 3 LCD алчуураар холбож, LCD булангийн гурван нүхэнд (хайрцгийн ёроолд 2, тагны дэргэд 1) байрлуулна. хайрцагны ар талд байрлуулж үрэлтийн хамт байрлуулна. LCD дээрх шурагны нүх нь терминал дээр хэт ойрхон байж магадгүй тул би үүнийг орхигдуулсан болно. Эксакто хутга ашиглан шурагны шурагны нүхийг өрөмдөхөд хуваахгүй (болгоомжтой, гулсаж, хутгалж болохгүй, бахө бариул барь). Эцсийн суулгацыг хийхийн тулд хайрцгийг бага зэрэг нугалах хэрэгтэй. Товчнуудын нүхийг "өрөмдөж" байрлуулж (шулуун ирмэг бүхий шугам зурж), терминалуудыг хайрцгийг "хайлах хүртэл" гагнуурын төмрөөр халаана. Дараа нь хөргөж, 6 " - 9" CAT 5e утаснуудын хаягдал эсвэл 18га -аас 22га хүртэлх утсыг товчлуур дээр гагнаж дууссаны дараа товчлууруудыг арилгав. Товчлууруудыг эхлээд утсандаа нүхэнд нь суулгаад дараа нь резисторын прото хавтан дээр гагнана. Супер цавуу, халуун цавуу эсвэл бүр үрэлтийн цэгүүд нь товчлууруудыг байрандаа байлгадаг. Нэг барилга дээр батерейны хайрцаг, резистор прото самбар, LCD / Arduino угсралтын хоорондох сүүлчийн холболтыг хөнгөвчлөхийн тулд утасны кабелийн залгуурыг (тунгалаг хуванцар блок дахь улаан тойрог) ашигласан. Хэрэв та хүсвэл оронд нь гагнуур, дулаан агшаагч хэрэглэж болно. Дараа нь бүх утас, эд ангиудыг хайрцагт аажмаар түлхэж, тагийг нь хаа. Та энэ бүхнийг хийхээсээ өмнө зайгаа суулгаад Arduino -ийн ноорогыг байршуулсан уу? Мөн танд Github дээр үнэгүй татаж авах боломжтой 20x4 хэмжээтэй LCD дэлгэцтэй I2C -тэй эсвэл дургүй номын сан хэрэгтэй болно. Үүнийг асааж, туршиж үзээрэй, энэ нь ажиллаж байгаа эсэхийг шалгаарай. Хожим нь би ноорогоо уншихад хялбар болгох үүднээс түр зогсолтоор засварлаж, "анивчсан цэгийн эффект" болон бусад зүйлийг нэмж, олон сэтгэгдлүүдийг оруулсан. USB холбогдож, шинэ ноорог байршуулахын тулд Arduino -г байрлуулахыг хичээ. Мэдээжийн хэрэг, ноорог хийхдээ урсгалын диаграмыг ашигласан. Урсгалын диаграмын блок бүр хаана байсныг тодорхойлсон тайлбарыг та олох болно.

Та товчлуурууд нь хэд хэдэн товчлуурыг нэг Arduino оролтын зүү ашиглах боломжийг олгодог цуврал / зэрэгцээ хэлхээнд байгааг олж мэдэх болно. Энэ хэлхээ нь хүчдэл хуваагч шиг ажилладаг бөгөөд товчлуур дарагдсан тус бүрийн унших утгыг өөрчилж аналог зүү рүү өгдөг. Та цуваа монитор ашиглан резистор дээрээ үндэслэн хэлхээнийхээ утгыг тодорхойлж, ноорог дээрх "зөвшөөрөгдсөн утгуудыг" өөрчлөх боломжтой.

Та өөрийн гараар барилга барьж хөгжилтэй байна гэж найдаж байна! Хэрэв та үүнээс нэгийг нь эсвэл бүр заримыг нь хийвэл бусадтайгаа хуваалцаарай. Уншсанд баярлалаа.

Алхам 4: Програмчлал ба тохиргоо

Програмчлал ба тохиргоо
Програмчлал ба тохиргоо
Програмчлал ба тохиргоо
Програмчлал ба тохиргоо

Одоо IDE ашиглан зугаацаарай. Та капучино уусан гэж найдаж байна. Сэрүүн байхын тулд танд хэрэгтэй байж магадгүй юм.

Зарим номын сан байгуулах шаардлагатай болж магадгүй юм. Танд I2C -ийн хувьд Wire.h, LCD -ийн хувьд LCD.h, I2C хяналттай LCD -ийн хувьд LiquidCrystal_I2C.h хэрэгтэй болно. Та мөн lcd.begin (20, 4) тушаалыг ашиглан Arduino -д 20 тэмдэгт 4 мөр бүхий LCD дэлгэц ашиглаж байгаа гэдгээ хэлэх хэрэгтэй бөгөөд бусад тохиргоо байж магадгүй юм.

Номын сан суулгах тухай мэдээллийг https://www.arduino.cc/en/Guide/Libraries дээрээс үзнэ үү.

Arduino IDE дээр та самбар болон холбогдох портоо тохируулах шаардлагатай болно. Портыг таны компьютерын хяналтын самбар/төхөөрөмжийн менежер/Universal Serial Bus хянагчдаас олж болно. Та ямар Arduino ашиглаж байгаагаа олж мэдэх хэрэгтэй. Би Arduino Nano -г ашиглаж байгаа боловч Uno энэ талаар ажилладаг. Тохиргоогоо анхааралтай сонгох хэрэгтэй.

Та I2C хаягаа олж мэдэх хэрэгтэй болж магадгүй юм. Та үүнийг самбараас үсрэгчдээс шууд унших боломжтой байх ёстой. Та I2C скан хийгчийг Arduino.cc эсвэл https://www.gammon.com.au/forum/?id=10896 болон бусад газраас татаж авах боломжтой.

Ойролцоогоор хаа нэгтээ та програмыг Arduino руу ачаалж, ажиллагааг шалгах боломжтой байх ёстой. LCD дэлгэц асдаг уу? Та дүрүүдийг уншиж чадах уу? Нэг удаа би хэлхээг байгуулаад арын гэрлийг асаасан боловч тэмдэгтүүдийг унших боломжгүй байсан. Үүнийг зөв бүтээсэн эсэхийг шалгахын тулд тохиргоог туршиж, холболтыг оролдож хэдэн цаг зарцуулсан (энэ нь зөв, HOURS). Хэдэн өдрийн турш бууж өгөв. Хожим нь буцаж ирсэн бөгөөд гахайн самбар дээрх хувьсах эсэргүүцэлийг хамгийн бага хэмжээнд тохируулсан болохыг олж мэдэв. Үүнийг эргүүлж, дүрүүд нь харагдаж байв. Ширээн дээр толгойгоо цохих. Толгойгоо ширээн дээр цохиулах бас нэг шалтгаан? Хэрэв та батерейгаа солих шаардлагатай бол энэ хувьсах эсэргүүцлийг дахин тохируулах шаардлагатай болж магадгүй юм. Ийм зүйл тохиолдоход би нэвтрэхийн тулд хайрцгийн арын жижиг нүхийг хайчилж авав.

Та өөрийн товчлуурт ашигладаг резистор дээр үндэслэн энэ програмд өөрийн товчлуурын утгыг тохируулах шаардлагатай болж магадгүй юм. Үүнийг хийхийн тулд та энэ жижиг зургийг ашиглаж болох бөгөөд цуваа дэлгэцийг идэвхжүүлэхээ мартуузай. Ноорогыг ажиллуулж, товчлуур бүрийг дарж, утга бүрийг бичнэ үү. Дараа нь товчлуурын утгыг тусгахын тулд ноорогоо засаарай. Дараа нь засварласан ноорогоо самбар дээрээ байршуулж, энэ нь ажиллаж байгаа эсэхийг шалгаарай.

Маш олон жижиг хувьсагчууд бүгд зөв байх ёстой бөгөөд таных минийхээс өөр байж магадгүй юм. Тэвчээртэй байж, өөр өөр зүйлийг туршиж үзэх нь таныг ажил хэрэг болгоход тусална. Arduino хувьсагчуудаа тохируулсны дараа (самбарын нэр, com 3, 5 гэх мэт, процессор, програмист гэх мэт) бүгдийг нь тохируулсан байж магадгүй, гэхдээ дахин ачаалах шаардлагатай байгаа тул ажиллахгүй байж магадгүй гэдгийг санаарай. Arduino -г салгаад компьютер дээрээ буцааж залгаарай. Та компьютерээ хадгалаад дахин ачаалах хэрэгтэй болж магадгүй юм.

Энэхүү ноорогыг байршуулж, дэлгэцийг ажиллуулж, товчлууруудыг дарж, утгыг бүртгэж, эсэргүүцлийн утгыг өөрийнхөөрөө сольж, Paper Rock Scissors -ийн зургийг засаарай. Paper Rock Scissors ноорогыг ажиллуулаад зөв ажиллаж байгаа эсэхийг шалгаарай. Өө, та товчлууруудаа буруу дарааллаар суулгасан уу? Хэрэв та тэдгээрийг тодорхой дарааллаар оруулахыг хүсч байвал тэдгээрийг дахин суулгах шаардлагатай болж магадгүй юм.

Хөгжилтэй байгаарай!

Алхам 5: Товч унших ноорог нь үндсэн эскиз дээр засварлахын тулд эсэргүүцэгч үнэт зүйлсээ олоход тусална. Гол схемд оруулахын тулд товчлуур бүрийг дарж, эсэргүүцлийн утгуудаа бичнэ үү

// товч унших тойм

хүчингүй тохиргоо () {

// нэг удаа ажиллуулахын тулд тохиргооны кодоо энд оруулна уу.

Цуваа эхлэх (9600);

}

void loop () {

// давтан ажиллуулахын тулд үндсэн кодоо энд оруулна уу.

int buTTon; // Унших товчлууруудын хувьд

buTTon = 0; // Унших товчлууруудын хувьд

buTTon = analogRead (A0); // Command товчлууруудыг уншдаг байсан

саатал (100);

Serial.println (buTTon);

Алхам 6: Танд хэрэгтэй байж болох эд ангиудын жагсаалт, багаж хэрэгсэл

Амазоноос авсан эд ангиудын жагсаалт:

Arduino Uno эсвэл Arduino Nano

20x4 хэмжээтэй LCD дэлгэц, I2C -тэй эсвэл үгүй

SPST слайд унтраалгатай 9в эсвэл 6в батерейны хайрцаг (эсвэл слайд шилжүүлэгчийг тусад нь авах)

5 удаа SPST товчлуур

1х татах эсэргүүцэл 1k - 5k

1х -аас бага 5х резистор, 200 - 500 Ом сайн

Сэлбэгийн жагсаалт Бусад байршил эсвэл дэлгүүрүүд:

9в буюу 4х 1.5 вольтын батерей (9в сонголт нь "ихэвчлэн үхсэн" батерейг дахин боловсруулах боломжийг олгодог)

Command Strips (дахин дүүргэсэн багц ашигласан) эсвэл хоёр талт наалдамхай тууз

Утасны кабель залгуур (заавал биш боловч утас холбоход хялбар болгодог)

1/4 инчийн хэдхэн инч

Жижиг модон эрэг ашиглан dowels -ийг LCD дэлгэц дээр холбоно

Гагнуур

18 га утсыг халаах

Хаягдал эсвэл дахин боловсруулах хэсэг:

Хоосон капучино ундааны холимог хайрцаг (хүн бүр 3D принтергүй, капучинотой байж, хуванцарыг дахин боловсруулдаг)

Ойролцоогоор 1 "x 2" хэмжээтэй прото хавтангийн хаягдал, гэхдээ би Амазоноос протобоард ашигласан

Янз бүрийн урттай 18-22 гига утас эсвэл Cat 5e хатуу цөм

Танд хэрэгтэй байж болох хэрэгслүүд:

Жижиг Philips халив

Жижиг хавтгай халив

Exacto хутга

Гагнуурын төмөр ба гагнуур

Хүнд даацын хайч

Зүү хамар бахө

Шугам

Алхам 7: Нэмэлт мэдээлэл ба үндсэн тойм

Уншсанд баярлалаа. Маш их гэдгийг би мэдэж байна. Энэ бол миний анхны Intructable бөгөөд ганцаараа л надад бага зэрэг боловсрол өгсөн юм. Эргээд харахад би зарим газарт үг хэллэгтэй, зарим талаар хэтэрхий товчхон байна. Би угсралтыг алхам алхмаар илүү задлах ёстой байсан. Тэгээд би энэ төслийг хэдэн арван удаа хийснээс хойш яг зөв болтол нь зарим загварыг нэг загвар эсвэл өөр загвараас авсан болно. Би буцаж очоод ганцхан загварын зураг авах хэрэгтэй байна. Би бас ганц хоёр видео оруулмаар байна. Тийм ээ, би эргэж ирээд энэ зүйлийг засах болно. Гэхдээ одоогоор би үүнийг таны гарт өгсөн. Над шиг үүнийг бүтээх нь танд таалагдана гэж найдаж байна. Уншсанд дахин баярлалаа.

Зөвлөмж болгож буй: