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

כיצד להציג את קצב הלב על מסך ה- STONE עם Ar: 31 שלבים
כיצד להציג את קצב הלב על מסך ה- STONE עם Ar: 31 שלבים

וִידֵאוֹ: כיצד להציג את קצב הלב על מסך ה- STONE עם Ar: 31 שלבים

וִידֵאוֹ: כיצד להציג את קצב הלב על מסך ה- STONE עם Ar: 31 שלבים
וִידֵאוֹ: בנט מדבר 2024, יולי
Anonim
כיצד להציג את קצב הלב על מסך ה- STONE עם Ar
כיצד להציג את קצב הלב על מסך ה- STONE עם Ar

הקדמה קצרה

לפני זמן מה מצאתי מודול חיישן דופק MAX30100 בקניות באינטרנט. מודול זה יכול לאסוף נתוני חמצן ודופק הדם של משתמשים, שהם גם פשוטים ונוחים לשימוש. על פי הנתונים, גיליתי שישנן ספריות של MAX30100 בקבצי הספרייה של Arduino. כלומר, אם אני משתמש בתקשורת בין Arduino ל- MAX30100, אני יכול להתקשר ישירות לקבצי הספרייה של Arduino מבלי לשכתב את קבצי הנהג. זה דבר טוב, אז קניתי את המודול של MAX30100.

שלב 1: החלטתי להשתמש ב- Arduino כדי לאמת את תפקוד קצב הלב וחמצן הדם של MAX30100

החלטתי להשתמש בארדואינו כדי לאמת את קצב הלב ואת פונקציית איסוף חמצן בדם של MAX30100
החלטתי להשתמש בארדואינו כדי לאמת את קצב הלב ואת פונקציית איסוף חמצן בדם של MAX30100

הערה: מודול זה כברירת מחדל רק עם תקשורת MCU ברמה של 3.3 וולט, מכיוון שהוא כברירת מחדל להשתמש בהתנגדות סיכה של IIC של 4.7 K עד 1.8 V, כך שאין תקשורת עם Arduino כברירת מחדל, אם אתה רוצה לתקשר עם Arduino וזקוקים לשני 4.7 K של הנגד משיכה של פינים IIC המחובר לסיכת VIN, תוכן זה יוצג בחלקו האחורי של הפרק.

שלב 2: משימות פונקציונאליות

לפני שהתחלתי בפרויקט הזה, חשבתי על כמה תכונות פשוטות:

  • נאספו נתוני קצב הלב ונתוני חמצן בדם
  • נתוני קצב הלב וחמצן בדם מוצגים דרך מסך LCD

אלה שתי התכונות היחידות, אבל אם אנחנו רוצים ליישם אותה, עלינו לחשוב יותר:

  • באיזה MCU מאסטר משתמשים?
  • איזה סוג של מציג LCD?

כפי שהזכרנו קודם לכן, אנו משתמשים ב- Arduino עבור ה- MCU, אך זהו פרויקט תצוגת LCD של Arduino, לכן עלינו לבחור את מודול תצוגת ה- LCD המתאים. אני מתכוון להשתמש במסך LCD עם יציאה טורית. יש לי כאן מציג STONE STVI070WT-01, אבל אם ארדואינו צריך לתקשר איתו, יש צורך ב- MAX3232 כדי לבצע המרה ברמה. אז החומרים האלקטרוניים הבסיסיים נקבעים כדלקמן:

1. לוח פיתוח Arduino Mini Pro

2. מודול חיישן דופק MAX30100 וחיישן חמצן בדם

3. מודול תצוגת יציאה טורית מסוג STONE STVI070WT-01

4. מודול MAX3232

שלב 3: מבוא חומרה

MAX30100

ה- MAX30100 הוא פתרון חיישן דופק ודופק משולב. הוא משלב שני נוריות LED, א פוטודקטור, אופטיקה מותאמת ועיבוד אותות אנלוגיים בעלי רעש נמוך כדי לזהות אוקסימטריה של דופק ואותות קצב לב.

ה- MAX30100 פועל מספקי כוח של 1.8V ו -3.3V וניתן להפעיל אותו באמצעות תוכנה עם זרם המתנה זניח, מה שמאפשר את אספקת החשמל להישאר מחובר כל הזמן.

שלב 4: יישומים

● מכשירים לבישים

● התקני עוזרי כושר

● התקני ניטור רפואי

שלב 5: יתרונות ותכונות

1 olution פתרון מד חמצן דופק וחיישן דופק מפשט את העיצוב

  • נוריות משולבות, חיישן תמונות וחזית אנלוגי בעלת ביצועים גבוהים -סוף
  • זעיר 5.6 מ"מ x 2.8 מ"מ x 1.2 מ"מ 14 פינים אופטית מערכת משופרת באריזה

2 Operation הפעלה חסרת צריכת חשמל מאריכה את חיי הסוללה למכשירים לבישים

  • קצב דגימה הניתן לתכנות וזרם LED לחיסכון בחשמל
  • זרם כיבוי נמוך במיוחד (0.7µA, typ)

3, פונקציונליות מתקדמת משפרת את ביצועי המדידה

  • SNR גבוה מספק חוסן חפץ בתנועה
  • ביטול אור סביבה משולב
  • יכולת קצב מדגם גבוהה
  • יכולת פלט נתונים מהירה

שלב 6: עקרון הגילוי

עקרון הגילוי
עקרון הגילוי

פשוט לחץ על האצבע על החיישן כדי להעריך את הרוויה של חמצן הדופק (SpO2) ואת הדופק (המקביל לדופק הלב).

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

שלב 7: STONE STVI070WT-01

אבן STVI070WT-01
אבן STVI070WT-01

היכרות עם המציג

בפרויקט זה אשתמש ב- STONE STVI070WT-01 להצגת נתוני קצב הלב וחמצן בדם. שבב הנהג שולב בתוך מסך התצוגה, ויש תוכנות לשימוש המשתמשים. משתמשים רק צריכים להוסיף כפתורים, תיבות טקסט והיגיון אחר באמצעות תמונות ממשק המשתמש המעוצבות, ולאחר מכן ליצור קבצי תצורה ולהוריד אותם למסך התצוגה להפעלה. התצוגה של STVI070WT-01 מתקשרת עם MCU באמצעות אות uart-rs232, מה שאומר שעלינו להוסיף שבב MAX3232 כדי להמיר אות RS232 לאות TTL, כך שנוכל לתקשר עם Arduino MCU.

שלב 8: אם אינך בטוח כיצד להשתמש ב- MAX3232, עיין בתמונות הבאות:

אם אינך בטוח כיצד להשתמש ב- MAX3232, עיין בתמונות הבאות
אם אינך בטוח כיצד להשתמש ב- MAX3232, עיין בתמונות הבאות

אם אתה חושב שההמרה ברמה היא בעייתית מדי, אתה יכול לבחור סוגים אחרים של מציגים של STONE, שחלקם יכולים להוציא ישירות אות uart-ttl.

באתר הרשמי יש מידע מפורט והקדמה:

שלב 9: אם אתה צריך הדרכות וידאו והדרכות לשימוש, תוכל גם למצוא אותו באתר הרשמי

אם אתה צריך הדרכות וידאו והדרכות לשימוש, אתה יכול גם למצוא אותו באתר הרשמי
אם אתה צריך הדרכות וידאו והדרכות לשימוש, אתה יכול גם למצוא אותו באתר הרשמי

שלב 10: שלבי פיתוח

שלושה שלבים של פיתוח מסך תצוגה של STONE:

  • תכנן את היגיון התצוגה ואת היגיון הכפתורים בעזרת תוכנת STONE TOOL, והורד את קובץ העיצוב למודול התצוגה.
  • MCU מתקשר עם מודול תצוגת LCD של STONE דרך היציאה הטורית.
  • עם הנתונים שהתקבלו בשלב 2, ה- MCU מבצע פעולות אחרות.

שלב 11: התקנת תוכנת STONE TOOL

התקנת תוכנת STONE TOOL
התקנת תוכנת STONE TOOL

הורד את הגרסה העדכנית ביותר של תוכנת STONE TOOL (כיום TOOL2019) מהאתר והתקן אותה.

לאחר התקנת התוכנה ייפתח הממשק הבא:

לחץ על כפתור "קובץ" בפינה השמאלית העליונה כדי ליצור פרויקט חדש עליו נדון בהמשך.

שלב 12: ארדואינו

Arduino היא פלטפורמת אב טיפוס אלקטרונית בקוד פתוח, קלה לשימוש וקלת שימוש. הוא כולל את חלק החומרה (לוחות פיתוח שונים התואמים את מפרט Arduino) ואת חלק התוכנה (Arduino IDE וערכות פיתוח נלוות).

חלק החומרה (או לוח הפיתוח) מורכב ממיקרו -בקר (MCU), זיכרון פלאש (פלאש), ומערכת ממשקי קלט/פלט אוניברסליים (GPIO), שאפשר לחשוב עליהם כמו לוח אם של מחשב מיקרו. חלק התוכנה מורכב בעיקרו מארדואינו IDE במחשב, מחבילת תמיכה ברמת לוח (BSP) וספריית פונקציות עשירה של צד שלישי. בעזרת Arduino IDE, אתה יכול להוריד בקלות את ה- BSP המשויך ללוח הפיתוח שלך ולספריות הדרושות לך. לכתוב את התוכניות שלך. Arduino היא פלטפורמת קוד פתוח. עד כה היו הרבה דגמים ובקרים נגזרים רבים, כולל Arduino Uno, Arduino Nano, ArduinoYun וכן הלאה. בנוסף, ה- Arduino IDE תומך כעת לא רק בלוחות הפיתוח מסדרת Arduino, אלא גם מוסיף תמיכה בלוחות פיתוח פופולריים כגון כמו Intel Galileo ו- NodeMCU על ידי הצגת BSP.

Arduino חשה את הסביבה באמצעות מגוון חיישנים, שליטה באורות, מנועים והתקנים אחרים כדי להזין ולהשפיע על הסביבה.ניתן לתכנת את המיקרו -בקר בלוח בעזרת שפת תכנות של Arduino, הידור לכניסות בינריות, ונשרף לתוך המיקרו -בקר. עבור Arduino מיושם עם שפת התכנות Arduino (מבוססת על חיווט) וסביבת הפיתוח של Arduino (מבוסס על עיבוד). פרויקטים מבוססי Arduino יכולים להכיל Arduino בלבד, כמו גם Arduino ותוכנות אחרות הפועלות על מחשב אישי, והן מתקשרות עם כל אחד אחרים (כגון Flash, Processing, MaxMSP).

שלב 13: סביבת פיתוח

סביבת פיתוח
סביבת פיתוח

סביבת הפיתוח של Arduino היא ה- Arduino IDE, אותה ניתן להוריד מהאינטרנט.

היכנס לאתר הרשמי של Arduino והורד את התוכנה https://www.arduino.cc/en/Main/Software?setlang=c… לאחר התקנת ה- Arduino IDE, הממשק הבא יופיע בעת פתיחת התוכנה:

ה- Arduino IDE יוצר שתי פונקציות כברירת מחדל: פונקציית ההתקנה ופונקציית הלולאה. יש הרבה מבואות של Arduino באינטרנט. אם אתה לא מבין משהו, אתה יכול ללכת לאינטרנט כדי למצוא אותו.

שלב 14: תהליך יישום פרויקט LCD Arduino

תהליך יישום פרויקט LCD Arduino
תהליך יישום פרויקט LCD Arduino

חיבור חומרה

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

בפרויקט זה שימשו רק ארבע פיסות חומרה:

1. לוח פיתוח Arduino Mini pro

2. מסך תצוגה של STONE STVI070WT-01 tft-lcd

3. MAX30100 קצב לב וחיישן חמצן בדם

4. MAX3232 (rs232-> TTL) לוח הפיתוח של Arduino Mini Pro ומסך תצוגת TFT-LCD STVI070WT-01 מחוברים באמצעות UART, הדורש המרה ברמה באמצעות MAX3232, ולאחר מכן לוח הפיתוח של Arduino Mini Pro ומודול MAX30100 מחוברים באמצעות ממשק IIC. לאחר חשיבה ברורה, נוכל לצייר את תמונת החיווט הבאה:

שלב 15:

תמונה
תמונה

ודא שאין שגיאות בחיבור החומרה והמשך לשלב הבא.

שלב 16: עיצוב ממשק משתמש TFT LCD

עיצוב ממשק משתמש TFT LCD
עיצוב ממשק משתמש TFT LCD

קודם כל, עלינו לעצב תמונת תצוגה של ממשק משתמש, שניתן לעצב על ידי PhotoShop או כלים אחרים לעיצוב תמונות. לאחר עיצוב תמונת התצוגה של ממשק המשתמש, שמור את התמונה בפורמט JPG.

פתח את התוכנה STONE TOOL2019 וצור פרויקט חדש:

שלב 17: הסר את התמונה שנטענה כברירת מחדל בפרויקט החדש והוסף את תמונת ממשק המשתמש שעיצבנו

הסר את התמונה שנטענה כברירת מחדל בפרויקט החדש והוסף את תמונת ממשק המשתמש שעיצבנו
הסר את התמונה שנטענה כברירת מחדל בפרויקט החדש והוסף את תמונת ממשק המשתמש שעיצבנו

שלב 18: הוסף את רכיב תצוגת הטקסט

הוסף את רכיב תצוגת הטקסט
הוסף את רכיב תצוגת הטקסט

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

ההשפעה היא כדלקמן:

שלב 19:

כתובת רכיב תצוגת טקסט:

  • סטא חיבור: 0x0008
  • דופק: 0x0001

חמצן בדם: 0x0005 התוכן העיקרי של ממשק המשתמש הוא כדלקמן:

  • סטטוס חיבור
  • תצוגת דופק
  • הראה חמצן בדם

שלב 20: צור קובץ תצורה

צור קובץ תצורה
צור קובץ תצורה

לאחר השלמת עיצוב ממשק המשתמש, ניתן לייצר ולהוריד את קובץ התצורה לתצוגה STVI070WT-01.

ראשית, בצע את שלב 1, ולאחר מכן הכנס את כונן הבזק מסוג usb למחשב, וסמל הדיסק יוצג. לאחר מכן לחץ על "הורד לדיסק u" כדי להוריד את קובץ התצורה לכונן הבזק מסוג usb ולאחר מכן הכנס את כונן הבזק מסוג usb ל- STVI070WT-01 כדי להשלים את השדרוג.

שלב 21: MAX30100

MAX30100
MAX30100

MAX30100 מתקשר באמצעות IIC. עקרון הפעולה שלו הוא שניתן להשיג ערך ADC של קצב הלב באמצעות הקרנה הובלת אינפרא אדום. ניתן לחלק את מאגר ה- MAX30100 לחמש קטגוריות: מרשם מדינות, FIFO, פקד בקרה, מרשם טמפרטורות ורשם מזהה. קורא את ערך הטמפרטורה של השבב כדי לתקן את הסטייה הנגרמת מהטמפרטורה. מרשם המזהים יכול לקרוא את מספר הזהות של השבב.

MAX30100 מחובר ללוח הפיתוח של Arduino Mini Pro באמצעות ממשק התקשורת IIC. מכיוון שיש קבצי ספרייה MAX30100 מוכנים ב- Arduino IDE, אנו יכולים לקרוא את נתוני קצב הלב וחמצן בדם מבלי ללמוד את הרשומות של MAX30100. למי שמעוניין לחקור את רשם MAX30100, עיין בגיליון הנתונים של MAX30100.

שלב 22: שנה את הנגד הנגיש של ה- MAX30100 IIC

שנה את הנגד הנגיש למשוך MAX30100 IIC
שנה את הנגד הנגיש למשוך MAX30100 IIC

יש לציין שהתנגדות המשיכה של 4.7k של סיכת IIC של מודול MAX30100 מחוברת ל- 1.8v, וזו אינה בעיה בתיאוריה. עם זאת, רמת ההיגיון בתקשורת של פין ה- Arduino IIC היא 5V, כך שהיא לא יכולה לתקשר עם Arduino מבלי לשנות את החומרה של מודול MAX30100. תקשורת ישירה אפשרית אם ה- MCU הוא STM32 או אחר MCU ברמה לוגית של 3.3v.

לכן, יש לבצע את השינויים הבאים:

הסר את שלושת נגדי 4.7k המסומנים בתמונה בעזרת מלחם חשמלי ולאחר מכן ריתוך שני נגדים של 4.7k בפינים של SDA ו- SCL ל- VIN, כך שנוכל לתקשר עם ארדואינו.

שלב 23: ארדואינו

ארדואינו
ארדואינו

פתח את Arduino IDE ומצא את הכפתורים הבאים:

שלב 24: חפש את "MAX30100" כדי למצוא שתי ספריות עבור MAX30100, ולאחר מכן לחץ על הורד והתקן

לחפש אחר
לחפש אחר

שלב 25: לאחר ההתקנה, תוכל למצוא את ההדגמה של MAX30100 בתיקיית ספריית LIB של Arduino:

לאחר ההתקנה תוכל למצוא את ההדגמה של MAX30100 בתיקיית ספריית LIB של Arduino
לאחר ההתקנה תוכל למצוא את ההדגמה של MAX30100 בתיקיית ספריית LIB של Arduino

שלב 26: לחץ פעמיים על הקובץ כדי לפתוח אותו

לחץ פעמיים על הקובץ כדי לפתוח אותו
לחץ פעמיים על הקובץ כדי לפתוח אותו

שלב 27: הקוד המלא הוא כדלקמן:

הדגמה זו ניתנת לבדיקה ישירה. אם חיבור החומרה תקין, תוכל להוריד את אוסף הקוד ללוח הפיתוח של Arduibo ולראות את הנתונים של MAX30100 בכלי איתור באגים סדרתי.

הקוד המלא הוא כדלקמן:

/* Arduino-MAX30100 אוקסימטריה /ספריית חיישנים משולבת קצב הלב זכויות יוצרים (C) 2016 OXullo Intersecans תוכנית זו היא תוכנה חינמית: אתה יכול להפיץ אותה מחדש ו /או לשנות אותה בהתאם לתנאי הרישיון הציבורי הכללי של GNU כפי שפורסם על ידי קרן התוכנה החופשית., או גירסה 3 של הרישיון, או (על פי בחירתך) כל גרסה מאוחרת יותר. תוכנית זו מופצת בתקווה שהיא תהיה שימושית, אך ללא כל אחריות; גם בלי אחריות משתמעת של סחירות או התאמה למטרה מיוחדת. עיין ברישיון הציבורי הכללי של GNU לפרטים נוספים. היית צריך לקבל עותק של הרישיון הציבורי הכללי של GNU יחד עם תוכנית זו. אם לא, ראה. ***) חישוב אבעבועות PulseOximeter; uint32_t tsLastReport = 0; // התקשרות חוזרת (רשומה למטה) מופעלת כאשר דופק מזוהה חלל onBeatDetected () {Serial.println ("ביט!"); } הגדרת void () {Serial.begin (115200); Serial.print ("התחלת תחמוצת הדופק.."); // אתחל את מופע PulseOximeter // הכשלים נובעים בדרך כלל מחיבור לא תקין של I2C, אספקת חשמל חסרה // או שבב מטרה לא נכון אם (! Pox.begin ()) {Serial.println ("FAILED"); ל(;;); } else {Serial.println ("הצלחה"); } // זרם ברירת המחדל עבור נורית ה- IR הוא 50mA וניתן לשנותו // על ידי ביטול תגובה של השורה הבאה. בדוק את MAX30100_Registers.h עבור כל // האפשרויות הזמינות. // pox.setIRLedCurrent (MAX30100_LED_CURR_7_6MA); // רשום שיחה חוזרת לאיתור פעימות pox.setOnBeatDetectedCallback (onBeatDetected); } לולאת void () {// הקפד להתקשר לעדכן כמה שיותר מהר pox.update (); // העברת אסינכרונית את קצב הלב ורמות החמצון לסדרה // עבור שניהם, ערך של 0 פירושו "לא חוקי" אם (millis () - tsLastReport> REPORTING_PERIOD_MS) {Serial.print ("קצב לב:"); Serial.print (pox.getHeartRate ()); Serial.print ("bpm / SpO2:"); Serial.print (pox.getSpO2 ()); Serial.println ("%"); tsLastReport = millis (); }}

שלב 28:

תמונה
תמונה

הקוד הזה הוא פשוט מאוד, אני מאמין שאתה יכול להבין אותו במבט חטוף. אני חייב לומר שהתכנות המודולריות של Arduino מאוד נוחות, ואני אפילו לא צריך להבין כיצד מיושם קוד הנהג של Uart ו- IIC.

כמובן שהקוד לעיל הוא הדגמה רשמית, ואני עדיין צריך לבצע כמה שינויים כדי להציג את הנתונים לתצוגה של STONE.

שלב 29: הצגת נתונים למציג STONE דרך ארדואינו

ראשית, עלינו לקבל את כתובת הרכיב המציג את נתוני קצב הלב וחמצן בדם בתצוגה של STONE:

בפרויקט שלי, הכתובת היא כדלקמן: כתובת רכיב תצוגת דופק: 0x0001 כתובת מודול תצוגת חמצן בדם: 0x0005 כתובת סטטוס חיבור חיישן: 0x0008 אם עליך לשנות את תוכן התצוגה בחלל המתאים, תוכל לשנות את תוכן התצוגה. על ידי שליחת נתונים לכתובת המקבילה של מסך התצוגה דרך היציאה הטורית של Arduino.

שלב 30: הקוד המשונה הוא כדלקמן:

/* Arduino-MAX30100 אוקסימטריה /ספריית חיישנים משולבת קצב לב זכויות יוצרים (C) 2016 OXullo Intersecans תוכנית זו היא תוכנה חינמית: אתה יכול להפיץ אותה מחדש ו /או לשנות אותה בהתאם לתנאי הרישיון הציבורי הכללי של GNU כפי שפורסם על ידי קרן התוכנה החופשית., או גירסה 3 של הרישיון, או (על פי בחירתך) כל גרסה מאוחרת יותר. תוכנית זו מופצת בתקווה שהיא תהיה שימושית, אך ללא כל אחריות; גם בלי אחריות משתמעת של סחירות או התאמה למטרה מיוחדת. עיין ברישיון הציבורי הכללי של GNU לפרטים נוספים. היית צריך לקבל עותק של הרישיון הציבורי הכללי של GNU יחד עם תוכנית זו. אם לא, ראה. *** 0x00}; תו לא חתום Sop2_send [8] = {0xA5, 0x5A, 0x05, 0x82, 0x00, / Sop2_dis_addr, 0x00, 0x00}; char ללא חתום connect_sta_send [8] = {0xA5, 0x5A, 0x05, 0x82, 0x00, / connect_sta_addr, 0x00, 0x00}; // PulseOximeter הוא הממשק ברמה הגבוהה יותר לחיישן // הוא מציע: // * דיווח על זיהוי פעימות // * חישוב דופק // * חישוב SpO2 (רמת חמצון) PulseOximeter; uint32_t tsLastReport = 0; // התקשרות חוזרת (רשומה למטה) מופעלת כאשר דופק מזוהה חלל onBeatDetected () {// Serial.println ("ביט!"); } הגדרת חלל () {Serial.begin (115200); // Serial.print ("אתחול מד חמצן הדופק.."); // אתחל את מופע PulseOximeter // תקלות בדרך כלל נובעות מחיבור לא תקין של I2C, אספקת חשמל חסרה // או שבב מטרה לא נכון אם (! Pox.begin ()) {// Serial.println ("FAILED"); // connect_sta_send [7] = 0x00; // Serial.write (connect_sta_send, 8); ל(;;); } אחר {connect_sta_send [7] = 0x01; Serial.write (connect_sta_send, 8); // Serial.println ("הצלחה"); } // זרם ברירת המחדל עבור נורית ה- IR הוא 50mA וניתן לשנותו // על ידי ביטול תגובה של השורה הבאה. בדוק את MAX30100_Registers.h עבור כל // האפשרויות הזמינות.pox.setIRLedCurrent (MAX30100_LED_CURR_7_6MA); // רשום שיחה חוזרת לאיתור פעימות pox.setOnBeatDetectedCallback (onBeatDetected); } לולאת void () {// הקפד להתקשר לעדכן כמה שיותר מהר pox.update (); // זרוק באופן אסינכרוני את קצב הלב ורמת החמצון לסדרה // עבור שניהם, ערך של 0 פירושו "לא חוקי" אם (millis () - tsLastReport> REPORTING_PERIOD_MS) {// Serial.print ("קצב לב:"); // Serial.print (pox.getHeartRate ()); // Serial.print ("bpm / SpO2:"); // Serial.print (pox.getSpO2 ()); // Serial.println ("%"); heart_rate_send [7] = (uint32_t) pox.getHeartRate (); Serial.write (heart_rate_send, 8); Sop2_send [7] = pox.getSpO2 (); Serial.write (Sop2_send, 8); tsLastReport = millis (); }}

שלב 31: הצג את קצב הלב על ה- LCD עם Arduino

הצג את קצב הלב על ה- LCD עם Arduino
הצג את קצב הלב על ה- LCD עם Arduino

ריכז את הקוד, הורד אותו ללוח הפיתוח של Arduino, ואתה מוכן להתחיל בבדיקות.

אנו יכולים לראות שכאשר האצבעות עוזבות את ה- MAX30100, קצב הלב וחמצן הדם מראים 0. הניחו את האצבע על אספן MAX30100 כדי לראות את קצב הלב ורמות החמצן בדם בזמן אמת.

ניתן לראות את ההשפעה בתמונה הבאה:

מוּמלָץ: