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

משדר ומקלט USB NEC אינפרא אדום: 4 שלבים (עם תמונות)
משדר ומקלט USB NEC אינפרא אדום: 4 שלבים (עם תמונות)

וִידֵאוֹ: משדר ומקלט USB NEC אינפרא אדום: 4 שלבים (עם תמונות)

וִידֵאוֹ: משדר ומקלט USB NEC אינפרא אדום: 4 שלבים (עם תמונות)
וִידֵאוֹ: ЗАПРЕЩЁННЫЕ ТОВАРЫ с ALIEXPRESS 2023 ШТРАФ и ТЮРЬМА ЛЕГКО! 2024, סֶפּטֶמבֶּר
Anonim
משדר ומקלט USB NEC אינפרא אדום
משדר ומקלט USB NEC אינפרא אדום

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

כפי שאתה אולי יודע, אני מעריץ גדול של בקרי ה- PIC של 8 סיביות Microchip, ראה:

אני משתמש בשפת התכנות JAL מכיוון שהיא נראית כמו פסקל (שגם אני אוהבת). את מהדר JAL והספריות ניתן להוריד מ: https://www.justanotherlanguage.org/downloads (גלול מטה לגרסה האחרונה שפורסמה).

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

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

שלב 1: קצת מידע על פרוטוקול ה- NEC אינפרא אדום

קצת מידע על פרוטוקול ה- NEC אינפרא אדום
קצת מידע על פרוטוקול ה- NEC אינפרא אדום

מבוא קצר לפרוטוקול זה. פרוטוקול השלט רחוק של אינפרא אדום NEC משמש במכשירים רבים ובבקרות מרחוק שתוכל לקנות. הוא מווסת אות אינפרא אדום על מנשא של 38 קילוהרץ ומשתמש בקידוד מרחק דופק לקידוד '1' לוגי ו- '0' לוגי. הפרוטוקול משתמש בבדיקה פשוטה כדי לבדוק אם ההודעה תקינה על ידי שליחת כתובת ובתי הפקודה וגרסה הפוכה של שניהם בהודעה אחת ואותה ובדיקה אם הם זהים לאחר הקבלה. כאשר לוחצים על כפתור בשלט הרחוק הוא שולח הודעה מלאה של אינפרא אדום עם כתובת ופקודה פעם אחת. לחיצה על הלחצן תגרום לשליחת הודעה חוזרת קצרה יותר ללא כתובת ופרטי פקודה. זמן החזרה של ההודעות המועברות תוך לחיצה על הלחצן קבוע.

מידע נוסף על פרוטוקול NEC Infra Red ניתן למצוא למשל בכתובת:

שלב 2: רכיבים נדרשים

רכיבים נדרשים
רכיבים נדרשים
רכיבים נדרשים
רכיבים נדרשים

על הפרויקט להלן:

  • מיקרו-בקר PIC PIC18F14K50, ראה:
  • קריסטל 12 מגהרץ
  • קבלים קרמיים: 2 * 100nF, 1 * 220 nF, 2 * 18pF
  • קבלים אלקטרוליטיים 47 uF/16V
  • מקלט אינפרא אדום TSOP4838, ראה:
  • נגדים: 2 * 33k, 1 * 4k7, 1 * 1k, 3 * 330 Ohm, 1 * 22 Ohm
  • נוריות: 2 * אינפרא אדום, 1 ענבר, 1 ירוק, 1 אדום
  • טרנזיסטור BC640, ראה:
  • מגשר (אופציונלי)
  • מחבר USB

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

שלב 3: התוכנה ותפעול המכשיר

כפי שכבר צוין, התוכנה כתובה עבור PIC18F14K50. זה נכתב ב- JAL. מצורף קובץ Intel Hex לתכנות ה- PIC שלך. התוכנה מבצעת את הפונקציות הבאות:

  • פענוח הודעות NEC אינפרא אדום ושליחתן למחשב באמצעות USB. ההודעה מפוענחת מזרם הסיביות שנוצר על ידי מקלט אינפרא אדום ומתורגם להודעת כתובת + פקודה או הודעה חוזרת.
  • שליחת הודעות NEC Infra Red שהתקבלו מהמחשב באמצעות USB. שים לב שהתוכנה יוצרת גם את תדר הספק של 38 קילוהרץ המניע ישירות את נוריות אינפרא אדום. במקביל לנורית אינפרא אדום מחובר נורית ענבר כדי להפוך את שידור ההודעה לגלוי.

כברירת מחדל מעגל זה ישתיק את מקלט האינפרא אדום במהלך שידור הודעה אינפרא אדומה. אם מגשר מוצב במיקום 'בטל השתקה', הוא יבטל את פונקציית ההשתקה הזו. במקרה זה הודעת האינפרא אדום המשודרת תפוענח במקביל לשידור ולאחר הקבלה המלאה היא תישלח כהודעת אינפרא אדום שהתקבלה למחשב. אם מתקבלת הודעת NEC אינפרא אדום תקפה, נורית ה- 'IR OK' האדומה תדלק.

על מנת להפעיל מכשיר זה עליך להכין תוכנית אמולטור מסוף במחשב האישי שלך. השתמשתי ב'טרמיט 'למטרה זו. כאשר המכשיר מחובר למחשב האישי, הוא יזוהה אוטומטית כיציאת COM נוספת על ידי Windows 10 מכיוון שנראה כי קיים מנהל התקן Microchip למכשיר זה ב- Windows 10 מותקן מראש. ההגדרה ליציאת COM זו צריכה להיות: 19200 באוד 8 סיביות, סיביות עצירה אחת, ללא זוגיות ושימוש בבקרת זרימת RTS/CTS. ניתן להגדיר את קצב השידור לכל ערך אחר במידת הצורך כך שגם קצב שידור של 115200 יעבוד. לאחר קביעת התצורה של המכשיר באמצעות יציאת ה- USB על ידי חיבור אליו באמצעות תוכנית אמולטור הטרמינל, נורית ה- 'Configured' הירוקה תדלק.

קבלת הודעות אינפרא אדום

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

  • 'A: xx C: xx' במקרה של הודעה מלאה, כאשר xx הוא המספר ההקסדצימלי של הכתובת (A) והפקודה (C). ערכים לשניהם יכולים לנוע בין 0x00 (0) ל- 0xFF (255).
  • 'חזור' במקרה של הודעה חוזרת.

שליחת הודעות אינפרא אדום

לשם כך הייתי צריך להגדיר פרוטוקול שאומר למכשיר מה לעשות. מכיוון שאנו משתמשים באמולטור מסוף השתמשתי בתווי ASCII כדי להגדיר הודעה. הפרוטוקול לשליחת פקודה למכשיר משתמש בפורמט הבא: '! AACCRR#', כאשר (כל התווים אינם רגישים לאותיות):

  • '!' מציין את תחילת ההודעה.
  • 'AA' הוא ערך הכתובת בסימון הקסדצימלי ולכן '0' עד '9' ו- 'A' עד 'F',
  • 'CC' הוא ערך הפקודה בסימון הקסדצימלי ולכן '0' עד '9' ו- 'A' עד 'F'
  • 'RR' הוא מספר ההודעה החוזרת שצריך להעביר בסימון הקסדצימלי ולכן '0' ל- '9' ו- 'A' ל- 'F'. ערך '00' פירושו שלא נשלחת הודעה חוזרת.

לאחר מכן יש להקליד דוגמה להודעה עם כתובת 0x07, פקודה 0x05 ו -3 חזרות כדלקמן בתוכנית Emulator Terminal:! 070503#

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

  • 'Y' פירושו שהועברה הודעה. שים לב שתגובה זו ניתנת לאחר שכל ההודעות - כולל כל החזרות - מועברות, כך שיידרש זמן מה עד שתתקבל תגובה זו כאשר יש להעביר הודעות חוזרות רבות.
  • 'N' פירושו שהיתה דמות בלתי חוקית בהודעה שנשלחה למחשב האישי.
  • 'B' פירושו ששידור אינפרא אדום עדיין היה עסוק כאשר ניתנה הפקודה.
  • ?’פירושו שהמכשיר ציפה ל’!’ אבל הוא קיבל משהו אחר.

שלב 4:

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

  • הגדרת התקן ה- USB מתוכנית אמולציית הטרמינל. כאשר המכשיר מוגדר הוא מגיב עם ההודעה 'משדר ומקלט USB NEC אינפרא אדום'. במכשיר הנורית הירוקה דולקת ומראה שהמכשיר הוגדר על ידי המחשב.
  • המנורה נדלקת באמצעות השלט הרחוק. לשם כך השלט הרחוק משתמש בכתובת 0x00 ובפקודה 0x07 אשר מפוענחים על ידי המכשיר ומוצגים במחשב האישי.
  • המנורה כבויה באמצעות השלט הרחוק. לשם כך השלט הרחוק משתמש בכתובת 0x00 ובפקודה 0x06 אשר מפוענחים על ידי המכשיר ומוצגים במחשב האישי.
  • המנורה מופעלת על ידי הקלדת אותה פקודת שלט רחוק במחשב עם ערך חוזר של 0 (ללא חזרה) כך על ידי הקלדת '! 000700#'. המנורה נדלקת.
  • שינוי צבע המנורה לכחול באמצעות כתובת 0x00 והפקודה 0x0A ושימוש 0x30. הענבר לד, המחובר במקביל לנורות אינפרא אדום מהבהב ומציג את שידור ההודעה החוזרת דרך אינפרא אדום. ההודעה המוקלדת היא '! 000A30#'.

שים לב שבמהלך ההקלטה של סרטון זה חיבור המגשר 'בטל השתקה' היה פעיל כך שתוכל לראות גם את ההודעה המועברת '! 000700#', המתקבלת בתור 'A: 00 C: 07' בתוכנית אמולציית הטרמינל. בהדגמה של המנורה הצבועה בכחול אתה יכול גם לראות שהנורית האדומה דולקת כל עוד ההודעות התקפות - חוזרות - מועברות מכיוון שהן מתקבלות ומפענחות במקביל לשידור ההודעות החוזרות.

שיהיה לך כיף לבנות פרויקט משלך ומחכה לתגובות שלך. אל תשכח להצביע לפרויקט הזה בתחרות שלט רחוק 2017 אם אתה אוהב את זה. שוב תודה.

מוּמלָץ: