עמוד:191

1 . sfr ADC = 0 x 80 ; 2 . sfr DAC = 0 x 90 ; 3 . unsigned char samples [ 5 ] = { 0 , 0 , 0 , 0 , 0 }; 4 . unsigned int avg ; 5 . void main () 6 . { 7 . char i ; 8 . while ( 1 ) 9 . { 10 . for ( i = 4 ; i > 0 ; i-- ) samples [ i ] = samples [ i-1 ]; 11 . samples [ 0 ] = ADC ; 12 . for ( i = 0 , avg = 0 ; i < 5 ; i ++ ) avg += samples [ i ]; 13 . avg / = 5 ; 14 . DAC = ( unsigned char ) avg ; מימוש של פעולה זו בסעיף 15 . delay ( 100 ); // 7 . 8 16 . } 17 . } הסבר : שורה : 1 שיוך ADC-ה למפתח ; P 0 שורה : 2 שיוך DAC-ה למפתח ; P 1 שורה : 3 הצהרה על מערך לאחסון ערכי הדגימות . מערך זה מאותחל לאפס ; שורה : 4 הגדרת משתנה שלם unsigned int לאחסון ערך הממוצע ; שורה : 5 התכנית הראשית ; main שורות 6 ו- : 17 מגדירות את הגבולות של התכנית הראשית ; שורה : 7 הצהרה על משתנה המשמש כמונה וכאינדקס למערך ; שורה : 8 לולאת while המתבצעת אינסוף פעמים ; שורות 9 ו- : 16 מגדירות את הגבולות של לולאת ; while-ה שורה : 10 לולאת for המזיזה נתון ימינה . הלולאה גורמת להצבת ערך של תא בעל אינדקס מסוים בתא העוקב .

מטח : המרכז לטכנולוגיה חינוכית

ישראל. משרד החינוך


לצפייה מיטבית ורציפה בכותר