בפעם הקודמת תכנתנו את מיקרו-בקר ATmega328 כשהוא על לוח הארדואינו אבל זה לא כל כך נוח כל פעם להכניס ולשלוף את הבקר מהלוח לכן הפעם נתכנת אותו כשהוא על מטריצה.
העלאת הקוד
כדי שהעלאת הקוד תעבוד צריך שהארדואינו יהיה ללא בקר עליו, ובנוסף על הבקר צריכה להיות תוכנת BOOTLOADER.
מה שאנחנו עושים פה בפועל זה משתמשים בממיר USB/SERIAL שנמצא על הארדואינו ולכן אין צורך בממיר נפרד.
כדי לעשות זאת יש צורך בכמה חיבורים:
- TX בארדואינו הולך ל- TX בבקר
- RX בארדואינו הולך ל- RX בבקר
- RESET בארדואינו הולך ל-RESET בבקר
- 5V בארדואינו הולך ל-VCC בבקר
- GND בארדואינו הולך ל-GND בבקר
אפשר גם להזכר בכל היציאות של מיקרו-בקר ATmega328:
עכשיו אפשר להעלות קוד בצורה רגילה. הפעם נשלוט בנורת לד על ידי פוטנציומטר ובכך נשתמש ברגל האנלוגית A0 וגם נוציא PWM מרגל 11 והקוד לכך הוא די פשוט:
void setup() { pinMode(11, OUTPUT); pinMode(A0, INPUT); } void loop() { analogWrite(11, map(analogRead(A0), 0, 1023, 0, 255)); }
אלה החיבורים הדרושים:
אחרי שמעלים את הקוד לבקר אפשר להסיר את חיבורי RX, TX , RESET. כל מה שצריך זה לספק מתח 5V לבקר ואפשר לעשות זאת על ידי הארדואינו או מקור כח אחר.
הנה המעגל עם הבקר שמקור הכח מסופק על ידי הארדואינו:
בתמונה למעלה מחוברים גם שני קבלים 20pF מכל רגל של המתנד אל GND. דבר זה נועד לתזמון מדויק וחלק של הגביש, אבל סביר שהקוד יעבוד גם בלעדיהם.
מקור כח נפרד
כדי להפטר סופית מלוח הארדואינו נספק לבקר מקור כח של 5V. אפשר לקנות ספק כח של 5V ולחבר ישירות אל VCC ו GND (תמיד לבדוק עם מד מתח שהוא אכן מספק את המתח הרצוי) או שאפשר לספק מתח גבוה יותר ולהוריד אותו ל5V נגיד עם בטריה של 9V. הנה דוגמה לשני מייצבי מתח שיכולים לעשות את העבודה:
עכשיו נחבר את מקור הכח ישירות אל הבקר אחרי שהורדנו אותו מ12V ל5V:
אחרי שנפטרים מלוח הארדואינו הפרויקטים הופכים ליותר קומפקטיים ואפשר להתחיל להוריד אותם לשטח. בפעם הבאה נלחים את המעגל על לוח הלחמה ונזווד אותו באריזת פלסטיק בשביל מוצר מוגמר.
בס”ד
תודה רבה!
אחלה פוסט
תודה 🙂