תוכן עניינים:

יעיל וזול: תצוגה עם STM32L4: 13 שלבים
יעיל וזול: תצוגה עם STM32L4: 13 שלבים

וִידֵאוֹ: יעיל וזול: תצוגה עם STM32L4: 13 שלבים

וִידֵאוֹ: יעיל וזול: תצוגה עם STM32L4: 13 שלבים
וִידֵאוֹ: ClassifAI - מערכת לזיהוי מהיר, יעיל וזול של חיידקים במזון, הניתנת לשילוב בפס הייצור. 2024, יולי
Anonim
Image
Image
מבוא
מבוא

היום נדבר על שלושה נושאים שאני בהחלט אוהב: צג LCD שמשקיע מעט אנרגיה, STM32 עם Core Arduino ו- Arduino Mega Pro Mini. זוהי שלישייה בלתי ניתנת לערעור עבור האינטרנט של הדברים. לאחר מכן אציג בפניך את תצוגת ה- LCD בעלת שש הספרות HT1621 ותיצור פקד לדוגמה עם קוד שעובד הן על Arduino Mega Pro Mini והן על STM32 L432KC. פרט ראוי לציון הוא שקוד המקור של שני המיקרו -בקרים זהה לחלוטין. גם אני לא אשנה את ההצמדות. זה פנטסטי בהחלט!

שלב 1: מבוא

מבוא
מבוא

לתצוגת LCD HT1621 יש מסך נפוץ במולטימטרים, סולמות אלקטרוניים, שעונים אלקטרוניים, מדחומים ומכשירי מדידה אלקטרוניים.

• יש לה 6 ספרות עם 7 קטעים

• הוא משתמש בתקשורת SPI בעלת 3 חוטים

• יש לו תאורה אחורית המתאימה לסביבות חשוכות

• מתח ההפעלה שלה הוא 4.7 ~ 5.2V

• הוא צורך 4mA עם תאורה אחורית

שים לב שיש לו יותר משישה ספרות, שלוש נקודות עשרוניות ומד סוללה עם שלושה ברים.

שלב 2: ספרייה לשימוש

נשתמש בספריית המשתמשים github ANXZHU שהיא פשוטה למדי. ניתן לראות אותו בגרסה המקורית בקישור למטה:

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 טורי. במקום זאת, יש לו USB מלא, המשתמש בפרוטוקול ST-microelectronics ST-link. לפיכך, הוא די מתוחכם ומאפשר איתור באגים יעיל מאוד אם אתה משתמש ב- IR או ב- Microvision. ובהיותו Core Arduino (MBED, באמצעות הכלי המקורי של מיקרוסופט), הוא משתמש במהדרים מקצועיים ביותר. האם אני צריך להגיד עוד משהו?

שלב 7: Arduino Mega 2560 PRO MINI

Arduino Mega 2560 PRO MINI
Arduino Mega 2560 PRO MINI

אני גם אוהב את זה, מכיוון שזהו ארדואינו "טהור" ו"אמיתי ". זה מגה, עם הרבה IO. אבל זה מיני, כך שהוא מתאים לכל מקום. אני אוהב IO בכל מקום. עם זה, אני אוהב לחבר לד, SPI, i2c וכו '. מבחינה זו, מגה זו נפלאה.

שלב 8: הרכבה

הַרכָּבָה
הַרכָּבָה

במכלול שלנו, השורה של הסיכה הזכרית נמצאת בצד הפנימי, בעוד הסיכה הנקבית נמצאת בצד החיצוני ביותר, מה שמקל על עבודתנו וחיבורנו עם לוח לוח. אנו יוצרים את חיבור ה- SPI, וזוכרים של- Arduino Mega ולשיבוט Arduino Nano זה יש את אותה הצמדת, שהיא STM32-L432KC.

שלב 9: תכנית

נכין תוכנית פשוטה מאוד, בה נכתוב סמלים שונים (אותיות, מספרים ונקודות) על הצג.

זכור כי תוכנית זו פועלת הן על Arduino Mega Pro Mini והן על STM32 L432KC.

שלב 10: ספריות ומשתנים

לאחר מכן נכלול את הספרייה האחראית לתקשורת ומיד נפעיל את השליטה בתצוגה. הפונקציה "const char" חושפת טבלת מערכים. באמצעות וקטורים אלה תוכל לבצע את ההפניה של הדמות שמדפיסה על הצג.

#include // biblioteca para control 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: התקנה

כדי להתחיל בהגדרה, נגדיר את הסיכות, נבצע את ההגדרה הראשונית ונקבע את ניקוי התצוגה. קבענו שהתצוגה מציגה "שלום", ולאחר עיכוב מסוים, הודעת התצוגה נמחקת.

הגדרת חלל () {lcd.run (2, 3, 4, 5); // [cs wr data led+] definição dos pinos lcd.conf (); // configuração inicial lcd.clr (); // limpa o display // escreve HELLO lcd.display (10, num [17]); lcd.display (8, מספר [15]); lcd.display (6, מספר [19]); lcd.display (4, מספר [19]); lcd.display (2, מספר [0]); // fim HELLO עיכוב (1000); lcd.clr (); // תצוגה מוגבלת}

שלב 12: לולאה

כאן, אנו יוצרים פונקציה בשם "writeLoop", שתכתוב את המילה LOOP על הצג ולאחר מכן נכתוב את כל סמלי המערך שלנו. יש לנו גם את הפונקציה "writeBattery", שמדפיסה את סמני הסוללה.

לבסוף, יש לנו את הפקודה "lcd.dispnum" שכותבת את ערך הנקודה הצפה.

שלב 13: הורד את הקבצים

PDF

INO

מוּמלָץ: