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

בנה משלך (זול!) בקר מצלמה אלחוטי רב פונקציונלי: 22 שלבים (עם תמונות)
בנה משלך (זול!) בקר מצלמה אלחוטי רב פונקציונלי: 22 שלבים (עם תמונות)

וִידֵאוֹ: בנה משלך (זול!) בקר מצלמה אלחוטי רב פונקציונלי: 22 שלבים (עם תמונות)

וִידֵאוֹ: בנה משלך (זול!) בקר מצלמה אלחוטי רב פונקציונלי: 22 שלבים (עם תמונות)
וִידֵאוֹ: ג'ושה באך: זמן, השערת סימולציה, קיום 2024, יולי
Anonim
בנה משלך (זול!) בקר מצלמה אלחוטי רב פונקציונלי
בנה משלך (זול!) בקר מצלמה אלחוטי רב פונקציונלי
בנה משלך (זול!) בקר מצלמה אלחוטי רב פונקציונלי
בנה משלך (זול!) בקר מצלמה אלחוטי רב פונקציונלי
בנה משלך (זול!) בקר מצלמה אלחוטי רב פונקציונלי
בנה משלך (זול!) בקר מצלמה אלחוטי רב פונקציונלי

הקדמה חשבת פעם לבנות בקר מצלמה משלך? הערה חשובה: קבלים ל- MAX619 הם 470n או 0.47u. הסכימה נכונה, אך רשימת הרכיבים שגויה - עודכנה. זוהי כניסה לתחרות הימים הדיגיטליים, כך שאם אתה מוצא את זה שימושי, אנא דרג/הצביע/הגיב לטובה! אם אתה באמת אוהב את זה ואתה כושל, לחץ על "אני אוהב את זה!":) עדכון: מוצג ב- hackaday! hackaday.com/2009/10/13/a-different-breed-of-camera-controllers/ עדכון: תמונות חדשות של טריגר הלייזר בפעולה! עדכון: פרס ראשון = D, תודה על ההצבעה ו/או הדירוג! ההנחיה היא בעיקר לטובת משתמשי SLR המחפשים להוציא קצת יותר קילומטראז 'מהמצלמות שלהם, אולם אם יש נקודה וצילומים עם ממשקי IR, ייתכן שתמצא את זה מעניין. אין ספק שזה יעבוד גם (עם קצת שינוי) עם פריצות מצלמה שבהן תוכל לחבר יציאות לוגיות למסופי ההדק של המצלמה. זה התחיל כהדרכה מלאה, אך בשל כמה אילוצים בלתי צפויים שנתקלתי בהם בהמשך, זה עשוי להיות יותר מדריך כיצד לבצע דברים שונים - לעתים קרובות אשאיר לך את הבחירה כיצד תוכל לעשות דברים אשר אני חושב שזו דרך טובה יותר לעשות דברים מאשר רק להגיד בעיוורון "אתה חייב לעשות את זה". תחשוב על זה כשיעור בעיצוב בקר מצלמה. סיפקתי סכמטים וקוד מלא כך שתמיד תוכל פשוט להעתיק אותו. זה יהיה מקרה פשוט של העברת העיצוב ללוח והוספת LCD עבור רוב האנשים. עברתי כיצד לפרסם אותו מכיוון שהתהליך דומה מאוד ומאפשר תיקון טעויות לפני שאתה הופך את העיצוב לקבוע! כלול עיצובים של חיישן - אור, צליל (אפשר הרבה יותר!) עלות כוללת - מתחת ל -25 ליש"ט (לא כולל כלים) תצוגת LCD לשינוי קל של הגדרות תואם לניקון/קנון (מקודד), תמיכה אפשרית (לא נבדקה) באולימפוס/פנטקס ללא קושחה נדרש שינוי משתמש ב- IR כך שהוא גם אלחוטי וגם לא פוגע במצלמה שלך היה לי הרעיון לכך לאחר שישבתי בחוץ בקור ולחץ על השלט הרחוק שלי במשך שעות. עשיתי מרווח של 8 שניות בסביבות 1000 יריות. חשבתי, היי, זה רק LED IR לא? למה אני לא יכול לשכפל אותו ולעשות שלט משלי עם עיכוב מובנה? לאחר מכן גיליתי (במבוכה מסוימת, כי חשבתי שיש לי גל מוח עצום) שזה נעשה ויש אפילו כמה מורים בנושא. היכן שהיישום שלי שונה מרוב המרווחים ושלטים DIY הוא שהוא מאפשר התאמה אישית ומודולריות רבה, תואם הן לניקון/קנון (וכנראה לאחרים מאוחר יותר) ומשלב את היכולת לצלם תמונה על טריגר מסוים. הרעיון פשוט. אתה רוצה לצלם משהו די מהיר (מוגבל כרגע בפיגור בתריס שלך, בשבילי 6ms). ישנן מגוון שיטות לעשות זאת: 1. ניסוי וטעייה אתה מנסה לצלם ברגע הנכון 2. ניסוי וטעייה משופרים אתה מחשיך את החדר, שים את המצלמה על הנורה (תריס פתוח) ויורה הבזק בזמן הנכון 3. קנה בקר הדק ייעודי בעל חיישן שמע/אור כלשהו לצילום הפקודה שלך 4. בנה אחד בעצמך! אוקיי, 1 ו -2 מתאימים להתעסקות ויכולים להניב כמה תמונות טובות מאוד. אבל מה שאני הולך להראות לך הוא שאפשר לבנות מעגל שיתן לך תוצאות עקביות פעם אחר פעם. והכי חשוב, בזמנים צפופים אלה, העלות נמוכה יותר מדגמים חלופיים (כמה אנשים ייצרו ערכות שעושות דברים כאלה, אבל הם עולים הון ראה קישורים). הרבגוניות של העיצוב היא זו: אם החיישן שלך מייצר מתח יציאה בין 0 ל 5V, אתה יכול להשתמש בו כדי להפעיל את המצלמה שלך! על פניו זו הצהרה משעממת, אבל ברגע שאתה מתחיל להבין את ההשלכות היא הופכת לחזקה מאוד. פשוט על ידי ניטור רמת המתח, ההדק שלך יכול להיות מבוסס אור (LDR), מבוסס צליל (מיקרופון או אולטרסאונד), מבוסס על טמפרטורה (תרמיסטור) או אפילו פוטנציומטר פשוט. למעשה, כמעט הכל. אתה יכול אפילו לקשר את המעגל לבקר אחר ובתנאי שהוא יכול לתת לך פלט לוגי, וכך תוכל להפעיל ממנו. המגבלה העיקרית היחידה של העיצוב כרגע היא שהוא עובד רק עם ממשקי IR, יהיה די פשוט לשנות את התוכנה והחומרה לפלט באמצעות מיני USB או כל סוג ממשק שנדרש. הערה: קוד המקור: סיפקתי כמה יישומים בשלב 13. הקוד שאני מפעיל בבקר שלי כרגע נמצא בקובץ hex יחד עם קובץ c הראשי ותלותיו. אתה יכול פשוט להריץ את הקוד שלי אם אינך בטוח בקשר להרכבה. צירפתי גם קוד לדוגמה שאתה יכול להשתמש בו בשלבים שונים (הם נקראים כמובן כמו בדיקה מרחוק, בדיקת מד רווח ומבחן ADC. אם אני מתייחס לקוד בשלב, רוב הסיכויים שהוא נמצא שם. עריכה: עדכון אודות בלונים קופצים - נראה שהייתי קצת קוצר ראייה כשאמרתי שאפשר לצלם בקלות תמונות של בלונים קופצים. מסתבר שהעור על הבלון הממוצע נוסע כל כך מהר שהוא היה קופץ לגמרי עד שהמצלמה שלך יורה. היא בעיה עם רוב המצלמות, לא הבקר (החושך את ה- ADC בקצב של סביב 120 קילוהרץ). הדרך לעקוף זאת היא להשתמש בפלאש מופעל, דבר שניתן לבצע אם מוסיפים חוט נוסף ומעגל קטן נוסף. אמר, אתה יכול בתיאוריה להשתמש במשהו אחר כדי להקפיץ אותו ולשחק עם העיכוב (או אפילו לשנות את קוד העיכוב כך שיכלול מיקרו שניות). גלולה אוויר הנעה 1 מ 'ב -150 ms-1 לוקחת בערך 6-7ms, מספיק זמן להפעיל ולצלם רק הזזת האקדח תספק עיכוב בסיסי של כמה מיקרו שניות ש. שוב, אני מתנצל על זה, אני הולך לשחק על הערב אם אוכל להשיג כמה בלונים, אבל עדיין יש הרבה שימושים לטריגר שמע, כמו זיקוקים! שמתי להלן זמן קצר ומלוכלך כדי להראות שזה עובד עם זאת:) אל תשכח לקרוא, לדרג ו/או להצביע! לחיים, ג'וש כתב ויתור במקרה הבלתי סביר שמשהו משתבש באופן נורא או שאתה איכשהו בונה את המצלמה/מקפיץ את החתול שלך, אני לא אחראי לשום דבר. על ידי התחלת פרויקט המבוסס על ההנחיה הזו, אתה מקבל זאת וממשיך באחריותך האישית. אם אתה מכין אחד מאלה, או השתמש בהנחיה שלי כדי לעזור לך - אנא שלח לי קישור/תמונה כדי שאוכל לכלול אותו כאן! התגובה הייתה מדהימה עד כה (לפחות לפי הסטנדרטים שלי) ולכן יהיה מדהים לראות איך אנשים מפרשים את זה. אני עובד על גרסה 2 בזמן שאני מקליד;)

שלב 1: כמה מחשבות ראשוניות …

אז איך נבנה את הדבר הזה? מיקרו -לב הלב והנשמה של הפרויקט הוא מכשיר AVR ATMega8. היא בעצם גרסה מעט גזומה של שבב ATMega168 בה משתמש Arduino. הוא ניתן לתכנות ב- C או בהרכבה ויש לו מגוון תכונות שימושיות באמת שנוכל להשתמש בהן לטובתנו. "28 פינים, שרובם קלט/פלט (i/o)" משולב אנלוגי לממיר דיגיטלי "צריכת חשמל נמוכה "3 טיימרים משולבים" מקור שעון פנימי או חיצוני "הרבה ספריות קוד ודוגמאות באינטרנט אחסון הרבה סיכות זה טוב. אנחנו יכולים להתממשק עם מסך LCD, יש לנו 6 כניסות לחצנים ועדיין נשאר לנו מספיק עבור נורית IR לצלם וכמה נוריות סטטוס. סדרת מעבדי Atmel AVR זוכה לתמיכה רבה באינטרנט ויש הרבה הדרכות בקבלה התחל (אני אעבור על זה בקצרה, אבל יש הדרכות ייעודיות טובות יותר) וערימות של קוד שאפשר לחשוב עליהם. לשם הפניה, אני מקודד את הפרויקט הזה ב- C באמצעות ספריית AVR-LibC. יכולתי בקלות ללכת עם PIC כדי לעשות זאת, אך AVR נתמך היטב וכל הדוגמאות שמצאתי לשלטים היו מבוססות על AVR! LCD DisplayThere הם שני סוגי תצוגה עיקריים, גרפיים ואלפאנומריים. למסכים גרפיים יש רזולוציה ותוכלו לשים פיקסלים היכן שתרצו. החיסרון הוא שקשה יותר לקודד אותם (למרות שקיימות ספריות). תצוגות אלפאנומריות הן פשוט שורת תווים אחת או יותר, ה- LCD כולל מאגר של תווים בסיסיים (כלומר האלפבית, מספרים וסמלים מסוימים) וקל יחסית להפיק מחרוזות וכן הלאה. החיסרון הוא שהם לא גמישים יותר והצגת גרפיקה היא כמעט בלתי אפשרית, אבל היא מתאימה למטרה שלנו. הם גם זולים יותר! האלפאנומריים מסווגים לפי מספר השורות והעמודות שלהם. 2x16 הוא די נפוץ, עם שתי שורות של 16 תווים, כל תו הוא מטריצה 5x8. אתה יכול גם לקבל 2x20 s, אבל אני לא רואה את הצורך. קנה מה שאתה מרגיש בנוח איתו. בחרתי להשתמש ב- LCD אדום עם תאורה אחורית (אני רוצה להשתמש בו לאסטרופוטוגרפיה ואור אדום עדיף לראיית לילה). אתה יכול ללכת ללא תאורה אחורית - זו לגמרי בחירה שלך. אם תבחר במסלול ללא תאורה אחורית תחסוך בחשמל ובכסף, אך ייתכן שתזדקק ללפיד בחושך. כאשר אתה מחפש LCD, עליך לוודא שהוא נשלט על ידי HD44780. זהו פרוטוקול סטנדרטי בתעשייה שפותח על ידי Hitachi ויש הרבה ספריות טובות בהן אנו יכולים להשתמש כדי להפיק נתונים. הדגם שקניתי היה JHD162A מ- eBay. InputInput יבוצע על ידי לחצנים (פשוט!). בחרתי בחירת 6 מצבים, אישור/צילום ו -4 כיוונים. כדאי לקבל עוד כפתור קטן לאיפוס המיקרו במקרה של התרסקות. באשר לקלט ההדק, כמה רעיונות בסיסיים הם נגד תלוי אור או מיקרופון אלקטרט. כאן תוכל להיות יצירתי או קמצן בהתאם לתקציב שלך. חיישני אולטרסאונד יעלו קצת יותר ודורשים תכנות נוסף אבל אתה יכול לעשות איתם דברים ממש מסודרים. רוב האנשים ישמחו עם מיקרופון (כנראה החיישן הכללי הכי שימושי) והחשמל זול מאוד. שים לב שצריך להגביר אותו גם (אבל אעבור על זה מאוחר יותר) פלט - סטטוס הפלט האמיתי היחיד שאנו צריכים הוא סטטוס (מלבד התצוגה), כך שכמה נוריות יעבדו מצוין כאן. פלט - צילום לצילום תמונות, עלינו להתממשק עם המצלמה ולשם כך אנו זקוקים למקור אור שיכול לייצר קרינה אינפרא אדומה. למרבה המזל יש הרבה נוריות LED שעושות את זה וכדאי שתנסה להרים אחד בעל עוצמה גבוהה למדי. ליחידה שבחרתי יש דירוג הנוכחי של 100mA מקסימום (רוב הלדים הם בסביבות 30mA). כמו כן, עליך לדאוג לציין את תפוקת אורך הגל. אור אינפרא אדום נמצא בחלק באורך הגל הארוך יותר של ספקטרום ה- EM ואתה צריך לחפש ערך של סביב 850-950nm. רוב נוריות ה- IR נוטות לקראת סוף 950 ואולי תראה מעט אור אדום כאשר הוא נדלק, זו לא בעיה, אבל זה ספקטרום מבוזבז, נסה להתקרב ל -850 במידת האפשר. זֶה? ובכן, זה הולך להיות נייד אז סוללות! בחרתי להשתמש ב -2 סוללות AA אשר לאחר מכן מוגברות ל -5 וולט. אני אעבור על ההיגיון מאחורי זה בחלקים הבאים. 'כיסוי ובנייה' איך אתה עושה את זה קצת תלוי בך. החלטתי להשתמש בקרטון למעגל לאחר אב טיפוס מכיוון שהוא זול וגמיש וחוסך עיצוב PCB מותאם אישית. סיפקתי את התרשימים כך שאתה חופשי ליצור פריסת PCB משלך - אם כי אם כן, אודה לך לקבל עותק! שוב המקרה הוא לגמרי הבחירה שלך, הוא צריך להתאים למסך, לחצנים (בפריסה אינטואיטיבית למדי אם אפשר) והסוללות. ככל שעוברים מעגלים, זה לא כל כך מסובך, הרבה מהחיבורים הם פשוט לדברים כמו הכפתורים/LCD.

שלב 2: ניהול צריכת חשמל

ניהול צריכת חשמל
ניהול צריכת חשמל

ניהול פרויקטים עבור פרויקט כזה ברור שניידות צריכה להיות היבט מרכזי. סוללות הן אפוא הבחירה ההגיונית! כעת, עבור מכשירים ניידים די חשוב שתבחר מקור סוללה הניתן לטעון או שיהיה זמין בקלות. שתי האפשרויות העיקריות הן סוללת 9V PP3 או סוללות AA. אני בטוח שיש אנשים שיניחו שסוללת 9V היא האפשרות הטובה ביותר כי היי, 9V עדיף על 3 נכון? ובכן, לא במקרה זה. סוללות 9V בעוד שהן שימושיות מאוד, מייצרות את המתח שלהן על חשבון חיי הסוללה. נמדד ב- mAh (מיליאמפר שעות), דירוג זה אומר לך בתיאוריה כמה זמן סוללה תחזיק מעמד במהירות של 1mA בשעות (אם כי קח אותה עם קורט מלח, אלה נמצאים לעתים קרובות בתנאים אידיאליים של עומס נמוך). ככל שהדירוג גבוה יותר, כך הסוללה תחזיק יותר זמן. סוללות 9V מדורגות במהירות של עד 1000mAh. לעומת זאת, AA של אלקליין יש כמעט פי שלושה במהירות של 2900mAh. נטענת NiMH יכולה להגיע לכך, אם כי 2500mAh היא כמות סבירה (שים לב שסוללות נטענות פועלות ב- 1.2V לא 1.5!). מסך LCD צריך כניסת 5V (10%) וה- AVR (הבקר) צריך בערך אותו דבר (למרות שהוא יכול לרדת עד 2.7 למהירויות שעון בתדירות נמוכה). אנחנו גם צריכים מתח יציב למדי, אם הוא משתנה בערך זה עלול לגרום לבעיות עם המיקרו -בקר. לשם כך נשתמש בווסת מתח, עליך לבחור כעת על מחיר מול יעילות. יש לך אפשרות להשתמש בווסת מתח 3 פינים פשוטה כמו LM7805 (סדרה 78, פלט של +5 וולט) או במעגל משולב קטן. באמצעות וסת פשוט אם אתה בוחר ללכת עם אפשרות זו, עליך לשאת כמה נקודות בחשבון. ראשית, שלושה רגולטורי פינים כמעט תמיד זקוקים לקלט גבוה מהתפוקה שלהם. לאחר מכן הם מורידים את המתח לערך הרצוי. החיסרון הוא שיש להם יעילות נוראית (50-60% זה טוב). הצד החיובי הוא שהם זולים ויפעלו עם סוללה של 9V, אתה יכול לקחת דגם בסיסי עבור 20 אגורות בבריטניה. עליך גם לזכור שלרגולטורים יש מתח נשירה - הפער המינימלי בין קלט לפלט. אתה יכול לקנות רגולטורים מיוחדים LDO (Low DropOut) שיש להם נשירה בסביבות 50mV (לעומת 1-2V עם עיצובים אחרים). במילים אחרות, חפש LDOs עם פלט +5V. שימוש במעגל משולב הדרך האידיאלית ללכת היא ווסת מיתוג. אלה יהיו, למטרתנו, בדרך כלל חבילות בעלות 8 פינים המקבלות מתח ונותנות לנו תפוקה מוסדרת ביעילות גבוהה - כמעט 90% במקרים מסוימים. אתה יכול לקבל ממירים לעלות או לרדת (boost/buck בהתאמה) בהתאם למה שאתה רוצה להכניס, לחלופין אתה יכול לקנות רגולטורים שייקחו מעל או מתחת לתפוקה הרצויה. השבב שבו אני משתמש לפרויקט זה הוא MAX619+. זהו וסת קפיצה של 5V שלוקח 2 AA (טווח הכניסה הוא 2V-3.3V) ונותן יציאה של 5V יציאה. הוא צריך רק ארבעה קבלים להפעלה והוא יעיל מאוד בחלל. עלות - 3.00 כולל המכסים. אפשר לטעון שזה שווה את ההתרסקות רק כדי להוציא מעט יותר מהסוללות שלך. החיסרון הגדול היחיד הוא שהוא אינו מוגן על ידי קצר חשמלי, כך שאם יש נחשול שוטף, הזהירו! עם זאת, זה טריוויאלי למדי לתקן בעזרת תוספת למעגל: עיצוב שבב שימושי נוסף - אם כי פתרון לא פחות מסודר הוא LT1307. שוב, וסת 5V, אבל הוא יכול לקחת מגוון כניסות ויש לו דברים שימושיים כמו זיהוי סוללה חלשה. זה עולה לא מעט יותר כמעט 5 עם משרנים, קבלים גדולים ונגדים. מסילות מתח אנו הולכים להשתמש בשתי מסילות מתח ראשיות (בתוספת קרקע משותפת). הראשון יהיה ה- 3V מהסוללה, זה ישמש להפעלת נוריות LED ורכיבי הספק גבוהים יחסית. ה- MAX619 שלי מדורג רק עד 60mA (אם כי המקסימום המוחלט הוא 120mA) כך שקל יותר לחבר את הבקר למיקרו -MOSFET לשליטה בכל הנורות. ה- MOSFET אינו שואב כמעט זרם ופועל כהפסקה במעגל כאשר כניסת השער נמוכה סביב 3V. כאשר המיקרו -בקר שולח 1 לוגי על הסיכה, המתח הוא 5V וה- FET נדלק, ואז רק פועל כקצר (כלומר חתיכת חוט). מסילת 5V תניע את ה- LCD, הבקר והכל מעגלי הגברה עבור צריכת חשמל צריכת חשמל אם נסתכל על גליונות נתונים שונים, נציין כי ה- AVR לוקח לא יותר מ 15-20mA בעומס מרבי. מסך LCD לוקח רק 1mA להפעלה (לפחות כאשר בדקתי, תקציב עבור 2). עם התאורה האחורית, זה באמת תלוי בך להחליט. חיבור זה ישר למעקה 5V (ניסיתי) הוא בסדר, אך וודא שיש לו נגד משולב (עקוב אחר עקבות הלוח הקדמי) לפני שתעשה זאת. זה צייר 30mA כך - נורא! עם הנגד של 3.3k הוא עדיין ניתן לצפייה (מושלם לצילומי אסטרו) ומושך רק 1mA. אתה עדיין יכול לקבל בהירות הגונה באמצעות 1k או אחרת. אני בסדר עם שלי ציור רק מתחת 2mA עם התאורה האחורית! אם אתה רוצה, זה טריוויאלי להוסיף כפתור בהירות באמצעות פוטנציומטר 10k. נורית ה- IR עשויה לקחת מקסימום 100mA, אך היו לי תוצאות טובות עם 60mA על פני שלי (ניסוי!). לאחר מכן תוכל לחצות את הזרם מכיוון שאתה למעשה פועל במחזור עבודה של 50% (כאשר הנורית מאופננת). בכל מקרה, הוא דולק רק לשבריר שנייה, כך שלא נצטרך לדאוג לגבי זה. שאר הנורות שאתה צריך לשחק איתן, אתה עשוי לגלות שרק זרם של 10mA מספיק כדי לתת לך בהירות טובה - בהחלט תראה עבור נוריות הספק נמוך (לא כולל ה- IR), אינך מתכנן לפיד! בחרתי לא להוסיף מחוון כוח במעגל שלי, פשוט כי זה הרבה תיקו זרם לשימוש לא רב. השתמש במתג ההפעלה/כיבוי כדי לבדוק אם הוא פועל! בסך הכל, אתה לא אמור לרוץ יותר מ -30mA בכל פעם ועם אספקה תיאורטית של סביב 2500 (המאפשר וריאציה) mAh שאמור לתת לך הרבה יותר מ -80 שעות ישר עם הכל על. כאשר המעבד נמצא במצב סרק ברוב הזמן זה יהיה לפחות כפול/משולש, כך שלא תצטרך להחליף את הסוללות לעתים קרובות מאוד. אתה יכול ללכת זול ועליז עם סוללה 9V וסת LDO על חשבון היעילות או לשלם קצת יותר ולהשתמש ב- IC ייעודי כדי לעשות זאת. התקציב שלי עדיין היה מתחת ל -20 אפילו עם ה- IC, כך שתוכל להוריד אותו עוד יותר אם תצטרך.

שלב 3: מבט מקרוב על ה- ATmega8

מבט מקרוב על ה- ATmega8
מבט מקרוב על ה- ATmega8

PinsImage 1 הוא תרשים ה- pinout עבור ה- ATMega8 (בדיוק כמו 168/48/88, ההבדל היחיד הוא כמות הזיכרון המשולב ואפשרויות ההפרעה). סיכה 1 - איפוס, צריכה להישמר במתח VCC (או לפחות הגיוני 1). אם הוא מקורקע, המכשיר יאופס רך פין 2-6 - יציאה D, קלט/פלט כללי פין 7 - VCC, מתח אספקה (+5V עבורנו) פין 8 - פין 9, 10 - XTAL, כניסות שעון חיצוניות (חלק מיציאה B) פין 11 - 13 יציאה D, קלט/פלט כללי פין 14 - 19 יציאה B, קלט/פלט כללי פין 20 - AVCC, מתח אספקה אנלוגי (זהה ל- VCC) פין 21 - AREF, הפניה למתח אנלוגי פין 22 - פין 23-28 יציאה C, קלט/פלט כללי יציאות i/o ניתנות לשימוש: D = 8, C = 6, B = 6 סך הכל 20 יציאות שמיש הוא נהדר, לשם הפשטות עליך לקבץ את הפלט שלך ליציאות (נניח, D כיציאת הפלט) או לתוך קבוצות על הלוח - אולי תרצה שה- LCD יפעל מיציאה C רק כדי שהחוטים יהיו מסודרים בפינה זו. ישנם שלושה סיכות נוספות הנדרשות לתכנות. אלה הם MISO (18), MOSI (17) ו- SCK (19).אלה ישמחו בשמחה כסיכות i/o במידת הצורך. שעון האות שאנו שולחים למצלמה צריך להיות מתוזמן במדויק (מדויק עד למיקרו שניות) ולכן חשוב שנבחר מקור שעון טוב. לכל מכשירי ה- AVR יש מתנד פנימי שהשבב יכול לקבל ממנו את השעון שלו. החיסרון של זה הוא שהם יכולים לנוע סביב 10% עם טמפרטורה/לחץ/לחות. מה שאנחנו יכולים לעשות כדי להילחם בזה הוא שימוש בגביש קוורץ חיצוני. אלה זמינים בכל דבר החל מ- 32768kHz (שעון) ועד 20MHz. בחרתי להשתמש בקריסטל של 4 מגה -הרץ מכיוון שהוא מספק כמות הגונה של מהירות אך הוא די שמרני בהשוואה לאולי 8 מגה -הרץ+.בסיס ניהול חשמל ממש רציתי להשתמש בשגרת שינה בקוד שלי. למעשה כתבתי את הגרסה הראשונה שהסתמכה רבות על סרק המעבד בזמן שהזמן נגמר. למרבה הצער, בגלל אילוצי זמן, נתקלתי בכמה בעיות בהפעלת השעון כלפי חוץ והפרעה בשימוש בטיימרים. בעיקרו של דבר אצטרך לשכתב את הקוד כדי להתמודד עם הבקר פשוט לא להתעורר - מה שאני יכול לעשות, אבל הזמן נגדי. ככזה, המכשיר שואב רק 20mA כך שתוכל להסתלק מזה. אם אתה באמת מוכן לעשות את זה, אז בכל מקרה אתה צריך להתעסק עם הקוד, כל שעליך לעשות הוא לשעון פנימי ולאחר מכן להפעיל את טיימר 2 במצב אסינכרוני באמצעות קריסטל 4MHz לעיכובים מדויקים יותר. זה פשוט לביצוע, אך לוקח זמן רב. ADC סכין הצבא השוויצרי בערכת הכלים של AVR, ה- ADC מייצג ממיר אנלוגי לדיגיטל. איך זה עובד יחסית מבחוץ. מתח נדגם על סיכה (מחיישן כלשהו או קלט אחר), המתח הופך לערך דיגיטלי בין 0 ל- 1024. ערך של 1024 ייצפה כאשר מתח הכניסה שווה למתח ההתייחסות ל- ADC. אם הגדרנו את ההתייחסות שלנו ל- VCC (+5V) אז כל חלוקה היא 5/1024 V או בסביבות 5mV. כך עליה של 5mV בסיכה תגדיל את ערך ה- ADC ב -1. אנו יכולים לקחת את ערך הפלט של ADC כמשתנה ואז להתעסק איתו, להשוות אותו לדברים וכו 'בקוד. ה- ADC הוא פונקציה שימושית להפליא ומאפשרת לך לעשות הרבה דברים מגניבים כמו להפוך את ה- AVR לאוסילוסקופ. תדר הדגימה הוא בסביבות 125 קילוהרץ ויש לקבוע אותו ביחס לתדר השעון הראשי. רשומים יתכן ששמעת על רשמים בעבר, אך אל תפחד! רישום הוא פשוט אוסף של כתובות (מיקומים) בזיכרון ה- AVR. הרשמים מסווגים לפי גודל הסיביות שלהם. לרשם של 7 סיביות יש 8 מיקומים, מכיוון שאנו מתחילים מ -0. ישנם רישומים כמעט לכל דבר ואנו נסתכל עליהם בהרחבה הרבה יותר מאוחר. כמה דוגמאות כוללות את רגידי PORTx (כאשר x הוא B, C או D) השולטים אם סיכה מוגדרת גבוהה או נמוכה ומגדירה נגדי משיכה לכניסות, רשמי DDRx שקובעים אם סיכה היא פלט או קלט וכן הלאה. גיליון הנתונים A של ספרות, שמשקלו כ -400 עמודים; גליונות הנתונים של AVR מהווים הפניה שלא יסולא בפז למעבד שלך. הם מכילים פרטים על כל רישום, כל סיכה, איך עובדים טיימרים, אילו נתיכים צריכים להיות מוגדרים למה ועוד. הם ללא תשלום ותזדקק לזה במוקדם או במאוחר, אז הורד עותק! Www.atmel.com/dyn/resources/prod_documents/doc2486.pdf

שלב 4: הקצאת סיכות

הקצאת סיכות
הקצאת סיכות

כבר הזכרתי את הכניסות והתפוקות הדרושות לנו, לכן עלינו להקצות להן סיכות! כעת, ביציאה D יש 8 סיכות וזה נוח כיוון שהיא יכולה לשמש כיציאת הפלט שלנו. ה- LCD דורש 7 סיכות להפעלה - 4 סיכות נתונים ו -3 סיכות שליטה. נורית ה- IR דורשת רק סיכה אחת, כך שמרכיב ה- 8. PORTB שלנו יהיה יציאת הכפתורים שלנו, יש לה 6 כניסות, אבל נצטרך רק 5. אלה יהיו כפתורי המצב והכיוון. מיוחד, זה יציאת ADC. אנחנו צריכים רק סיכה אחת עבור קלט ההדק וזה הגיוני לשים אותה על PC0 (קיצור נפוץ של סיכות יציאה במקרה זה יציאה C, פין 0). לאחר מכן יש לנו כמה סיכות עבור נוריות סטטוס (אחד נדלק כאשר ערך ה- ADC עולה מעל מצב כלשהו, השני נדלק כשהוא מתחת למצב כלשהו). אנו גם הולכים להכניס לכאן את כניסת כפתור האישור/צילום שלנו, מסיבות שיתברר בהמשך. לאחר כל זה, ניצלנו את רוב הנמלים אך עדיין נותרו לנו כמה אם ברצונך להרחיב את הפרויקט - אולי מספר טריגרים?

שלב 5: תקשורת עם המצלמה

תקשורת עם המצלמה
תקשורת עם המצלמה
תקשורת עם המצלמה
תקשורת עם המצלמה

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

מוּמלָץ: