אבטיפוס/דגם/סימולציה מסכמת


בפסיקה.
Lcd_functions – מכיל בתוכו את כל פונקציות האתחול של המסך, פונקציות הדפסת הודעות ע"ג הצג והעברת פקודות שליטה על המסך.
Phone_numbers – מכיל בתוכו את הפונקציה שמבצעת את קליטת מספרי הטלפון שמזינים בתהליך האתחול.
Sensors_names - מכיל בתוכו את הפונקציה שמבצעת את קליטת שמות החיישנים שמזינים בתהליך האתחול.
Serial_com – מכיל בתוכו את פונקציות השידור, פונקציות האחראיות על העברת מילות האתחול למודם ושליחת הטקסט עצמו.
Setup_menu – מכיל בתוכו את פונקציות הצגת התפריטים המתחלפים בתהליך האתחול.

ה-MAIN:
בחלק זה מותחלים כל הפורטים של ה-PIC למצבי input או output
לאחר מכן מודפסת ההודעה שמופיעה בתמונה 1 כל עוד לא נלחץ לחצן הדריכה (RC5)או ENTER (*). בתוך ה-do אם נלחץ לחצן הדריכה\נטרול, יורם דגל armed והמערכת תדרך...
אם נלחץ שוב לחצן הדריכה\נטרול שוב, דגל sens_detect יורד לאפס והמערכת מנוטרלת...
...אלא אם כן חיישן הופעל ואז נקראת הפונקציה sensor_status שמתוארת בעמוד 34 לעיל. המערכת תתקע שם ותשמיע צופר כל עוד לחצן הנטרול לא יילחץ.
בסופו של דבר הפסיקה מנוטרלת...
...אם נלחץ ENTER יורם דגל setup והמערכת תיכנס למצב אתחול, בשלב זה נקראות הפונקציות print_screen_setup1 ו- print_screen_setup2 שנמצאות בקובץ setup_menu.c ע"מ להציג את המסכים המתחלפים אשר מוצגים בתמונות 2 ו- 3 בהתאמה. בכל זמן תוך כדיי התחלפות המסכים על המשתמש לבחור ספרה בין 1 ל- 3.
לאחר שנבחרה ספרה מורם דגל flag אשר זורק את ריצת התוכנית החוצה מהלולאה...
סוף ה-MAIN.
lcd_functions:
phone_numbers.c:
פונקציה זו נקראת מה-MAIN והיא קולטת מהמשתמש עד שישה מספרי טלפון ע"פ בחירתו ומאחסנת בזיכרון ה-EEPROM את המספרים המוזנים.
...כל מספר טלפון מוגבל ל- 10 ספרות בדיוק, רק אז יתקבל ENTER והמשתמש יוכל להזין את המספר הבא. המספר שמייצג את כמות מספרי הטלפון שברצון המשתמש להזין מאוחסן בתוך במשתנה total_cell_numbers בתא 100 של זיכרון ה-EEPROM ע"מ שפונקצית התקשורת תשתמש בו בעת שליחת ההודעות(כפי שיובא בהמשך)...
...המשך:
הפונקציה הנ"ל אחראית על אתחול ה-USART , היא מקבלת מחרוזות טקסט מהמשתנה הגלובלי buf ומכניסה אותו ל- TXREG , ניתן לראות שלאורך כל התהליך נדלק LED שמראה שהתוכנה בתהליך התקשורת...
הפונקציה הנ"ל שולחת את הטקסט המשורשר שנשלח מהפונקציה send_sms_setup (הפונ' הבאה)
לסוף הטקסט משורשר התו ה- ASCII של ^Z על מנת להודיע למודם שכל הטקסט נשלח.
שולחת למודם הודעות אתחול אשר מכניסות אותו למצב שליחת הודעה.
בנוסף הפונקציה משתמשת בנתון של total_cell_numbers שהוכנס ל-EEPROM בפונקצית phone_numbers מעמודים 40-41, לפי נתון זה היא שולפת את מספרי הטלפונים הדרושים, משרשרת " משני צידי מספר הטלפון שנשלף מה-EEPROM.ומעבירה את הכול לפונקציה send_buf_to_TXREG. בסופו של דבר, היא שולחת msg עם הטקסט בתוכו הטקסט שנשלח לפונקציה send_sms_text.
setup_menu.c:
פונקציה זו מדפיסה על הצג את הודעות תפריט האתחול שמופיעות בתמונות 2 ו-3 בהתאמה.
מפת מצב זיכרון המיקרו מחשב
להלן מצב הזיכרון של ה-PIC לאחר צריבת התוכנה המלאה על כל קבציה:
Memory Usage Map:
Program space:
CODE used 9A2h ( 2466) of 2000h words ( 30.1%)
CONST used 14Eh ( 334) of 2000h words ( 4.1%)
ENTRY used 16h ( 22) of 2000h words ( 0.3%)
STRING used Fh ( 15) of 2000h words ( 0.2%)
Data space:
BANK0 used 4Ch ( 76) of 60h bytes ( 79.2%)
BANK1 used 50h ( 80) of 50h bytes (100.0%)
BANK2 used 0h ( 0) of 60h bytes ( 0.0%)
BANK3 used 0h ( 0) of 60h bytes ( 0.0%)
COMBANK used 1h ( 1) of 10h bytes ( 6.3%)
EEPROM space:
EEDATA used 0h ( 0) of 100h bytes ( 0.0%)
ID Location space:
IDLOC used 0h ( 0) of 4h bytes ( 0.0%)
Configuration bits:
CONFIG used 0h ( 0) of 1h word ( 0.0%)
Summary:
Program space used B15h ( 2837) of 2000h words ( 34.6%)
Data space used 9Dh ( 157) of 170h bytes ( 42.7%)
EEPROM space used 0h ( 0) of 100h bytes ( 0.0%)
ID Location space used 0h ( 0) of 4h bytes ( 0.0%)
Configuration bits used 0h ( 0) of 1h word ( 0.0%)





















0 Comments:
<< Home