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

Үр ашигтай, хямд: STM32L4 дэлгэц: 13 алхам
Үр ашигтай, хямд: STM32L4 дэлгэц: 13 алхам

Видео: Үр ашигтай, хямд: STM32L4 дэлгэц: 13 алхам

Видео: Үр ашигтай, хямд: STM32L4 дэлгэц: 13 алхам
Видео: 🎶 ДИМАШ "ОПЕРА 2". История выступления и анализ успеха | Dimash "Opera 2" 2024, Арваннэгдүгээр
Anonim
Image
Image
Танилцуулга
Танилцуулга

Өнөөдөр бид маш их биширдэг гурван сэдвийн талаар ярих болно: бага эрчим хүч зарцуулдаг LCD дэлгэц, Core Arduino -тэй STM32, Arduino Mega Pro Mini. Энэ бол юмсын интернетийн хувьд алдаа мадаггүй гурвал юм. Дараа нь би танд HT1621 зургаан оронтой LCD дэлгэцийг танилцуулж, Arduino Mega Pro Mini болон STM32 L432KC хоёуланд нь ажилладаг код бүхий жишээг удирдах болно. Сонирхолтой зүйл бол хоёр микроконтроллерийн эх код нь ижилхэн юм. Би тогтоолыг бас өөрчлөхгүй. Энэ бол үнэхээр гайхалтай!

Алхам 1: Танилцуулга

Танилцуулга
Танилцуулга

HT1621 LCD дэлгэц нь мултиметр, электрон хэмжээс, электрон цаг, термометр, электрон хэмжих төхөөрөмжид ихэвчлэн хэрэглэгддэг дэлгэцтэй.

• Энэ нь 7 сегмент бүхий 6 оронтой тоотой

• Энэ нь 3 утастай SPI холболтыг ашигладаг

• Харанхуй орчинд тохирох арын гэрэлтэй

• Түүний ажиллах хүчдэл 4.7 ~ 5.2V байна

• Арын гэрэлтүүлэгтэй 4мА зарцуулдаг

ЗУРГААН оронтой тоо, ГУРВАН аравтын бутархай, ГУРВАН баартай батерейны тоолууртай болохыг анхаарна уу.

Алхам 2: Ашиглах номын сан

Бид ANXZHU github хэрэглэгчийн номын санг ашиглах болно, энэ нь маш энгийн. Үүнийг анхны хувилбараас доорх линкээс харж болно.

github.com/anxzhu/segment-lcd-with-ht1621

Номын сангийн нэр нь маш хачирхалтай тул би үүнийг нэрлэхээр шийдлээ (файл, анги, барилгачин гэх мэт). Анхны нэр нь "A6seglcd". Би энэ нэрийг "lcdlib" гэж орлуулсан.

Алхам 3: Номын сан

"Lcdlib" номын санг нэмнэ үү.

Холбоос руу орж номын санг татаж авна уу.

Файлыг задалж, Arduino IDE -ийн номын сангийн хавтсанд буулгана уу.

C: / Програмын файлууд (x86) / Arduino / номын сан

Алхам 4: Жагсаал

Жагсаал
Жагсаал

Arduino мега угсралт

Алхам 5: Жагсаал

Жагсаал
Жагсаал

SMT32 угсралт

Алхам 6: STM32 NUCLEO-L432KC

STM32 NUCLEO-L432KC
STM32 NUCLEO-L432KC

STM32-L432KC нь цуваа USB хөрвүүлэгчгүй гэдгийг би энд онцлохыг хүсч байна. Үүний оронд STMicroelectronics ST-link протоколыг ашигладаг бүрэн USB төхөөрөмжтэй. Тиймээс, энэ нь нэлээд боловсронгуй бөгөөд хэрэв та IR эсвэл Microvision ашиглаж байгаа бол маш үр дүнтэй дибаг хийх боломжийг олгодог. Arduino Core (MBED, Microsoft -ийн уугуул хэрэгслийг ашигладаг) байхын тулд өндөр мэргэжлийн хөрвүүлэгч ашигладаг. Би өөр зүйл хэлэх хэрэгтэй байна уу?

Алхам 7: Arduino Mega 2560 PRO MINI

Arduino Mega 2560 PRO MINI
Arduino Mega 2560 PRO MINI

Энэ нь "цэвэр", "жинхэнэ" Arduino тул би бас үүнд дуртай. Энэ бол маш олон IO -той Mega юм. Гэхдээ энэ бол Мини тул хаана ч таарах боломжтой. Би хаа сайгүй IO -д дуртай. Үүнтэй холбогдуулан би Led, SPI, i2c гэх мэтийг холбох дуртай. Энэ утгаараа энэ Мега бол гайхалтай.

Алхам 8: Чуулган

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

Манай чуулганд эрэгтэй зүүний эгнээ дотор талд, харин эмэгтэй зүү нь хамгийн гадна талд байгаа нь бидний ажлыг хөнгөвчлөх, протобардтай холбох ажлыг хөнгөвчилдөг. Бид Arduino Mega болон энэхүү Arduino Nano клон нь STM32-L432KC ижил бэхэлгээтэй байдгийг санаж SPI холболт хийдэг.

Алхам 9: Хөтөлбөр

Бид маш энгийн програм хийх бөгөөд дэлгэц дээр янз бүрийн тэмдэг (үсэг, тоо, цэг) бичнэ.

Энэ програм нь Arduino Mega Pro Mini болон STM32 L432KC дээр ажилладаг гэдгийг санаарай.

Алхам 10: Номын сан ба хувьсагчид

Дараа нь бид харилцаа холбоо хариуцах номын санг оруулж, дэлгэцийн хяналтыг эхлүүлнэ. "Const char" функц нь массивын хүснэгтийг харуулдаг. Эдгээр векторуудаар дамжуулан та дэлгэц дээр хэвлэж буй дүрийн талаар лавлах болно.

#include // biblioteca para controle do display

lcdlib lcd; // instancia do controlador do display /*0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, b, C, c, d, E, F, H, h, L, n, N, P, r, t, U, -, bat, pf, '', */ const char num = {0x7D, 0x60, 0x3E, 0x7A, 0x63, 0x5B, 0x5F, 0x70, 0x7F, 0x7B, 0x77, 0x4F, 0x1D, 0x0E, 0x6E, 0x1F, 0x17, 0x67, 0x47, 0x0D, 0x46, 0x75, 0x37, 0x06, 0x0F, 0x6D, 0x02, 0x80, 0xFF, 0x00}; / *индекс тоо 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 */

Алхам 11: Тохиргоо

Тохиргоог эхлүүлэхийн тулд бид зүүг тодорхойлж, анхны тохиргоог хийж, дэлгэцийн цэвэрлэгээг тохируулна. Бид дэлгэц дээр "Сайн байна уу" гэж харуулсныг тогтоосон бөгөөд хэсэг хугацааны дараа дэлгэцийн зурвас арилна.

void setup () {lcd.run (2, 3, 4, 5); // [cs wr data led+] definição dos pinos lcd.conf (); // тохиргоог хийх албан ёсны lcd.clr (); // limpa o display // escreve HELLO lcd.display (10, num [17]); lcd.display (8, тоо [15]); lcd.display (6, num [19]); lcd.display (4, num [19]); lcd.display (2, num [0]); // fim HELLO саатал (1000); lcd.clr (); // харуулах эсвэл харуулах}

Алхам 12: Loop

Энд бид "writeLoop" гэж нэрлэгддэг функцийг бүтээдэг бөгөөд энэ нь LOOP гэсэн үгийг дэлгэц дээр бичээд дараа нь манай массивын бүх тэмдгийг бичдэг. Мөн бид зайны тэмдэглэгээг хэвлэдэг "writeBattery" функцтэй.

Эцэст нь бидэнд хөвөгч цэгийн утгыг бичдэг "lcd.dispnum" команд байдаг.

Алхам 13: Файлуудыг татаж авах

PDF

INO

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