You are on page 1of 12

‫‪www.arikporat.

com‬‬

‫הפתרון של המרצה ענת פרטוש‬ ‫פתרון מבחן חיצוני במיקרו תש"פ‬

‫פתרון שאלה ‪5‬‬


‫א‪ .‬הסבר השורות ‪:‬‬
‫‪ – 3‬נעתק את תוכן התא עליו מצביע ‪ dptr‬לאוגר ‪.a‬‬
‫‪ – 4‬בצע פעולת ‪ and‬בין ‪ a‬למספר ‪.0Fh‬‬
‫‪ – 5‬החלף בין הניבלים של האוגר ‪.a‬‬
‫‪ – 7‬הוסף ‪ 1‬לאוגר ‪.dptr‬‬
‫ב‪ .‬להלן תוכן התאים בסיום השגרה ‪:‬‬
‫‪2009h‬‬ ‫‪2008h‬‬ ‫‪2007h‬‬ ‫‪2006h‬‬ ‫‪2005h‬‬ ‫‪2004h‬‬ ‫‪2003h‬‬ ‫‪2002h‬‬ ‫‪2001h‬‬ ‫‪2000h‬‬
‫‪70h‬‬ ‫‪50h‬‬ ‫‪40h‬‬ ‫‪50h‬‬ ‫‪20h‬‬ ‫‪10h‬‬ ‫‪80h‬‬ ‫‪30h‬‬ ‫‪10h‬‬ ‫‪60h‬‬
‫ג‪ .‬במקרה זה התוכן של ‪ a‬לא משתנה בעקבות פקודת ‪ ,anl‬אך עקב פקודת ‪swap‬‬
‫הספרות יתחלפו‪ ,‬כך שבכתובת ‪ 2000h‬נקבל ‪.63h‬‬

‫‪1‬‬
www.arikporat.com

2
www.arikporat.com

6 ‫פתרון שאלה‬
: C ‫פתרון בשפת‬
#include <8051.h>
#define N 100
void main()
{
char xdata at 0x2000 block[N] ;
char i,k=0 ;
for (i=0 ; i<N/2 ; i++)
{
block[i]=k ;
k += 2 ;
}
for (k-- ; i<N ; i++)
{
block[i]=k ;
k -= 2 ;
}
}
: ‫פתרון באסמבלי‬
mov dptr,#2000h
mov r7,#50
clr a
loop1:
movx @dptr , a
add a,#2
inc dptr
djnz r7,loop1
mov a,#99
mov r7,#50
loop2:
movx @dptr , a
clr c
3ub a,#2
inc dptr
djnz r7,loop2

3
www.arikporat.com

4
www.arikporat.com

7 ‫פתרון לשאלה‬
: ‫לפני שנפתור‬
0 = ‫ סגור‬S , 1 = ‫ פתוח‬S : ‫מפסקים‬
‫ לכיבוי‬0 ,‫ להדלקה‬1 ‫יש לשלוח‬ : ‫מקטעים‬
: ‫ וכן הלאה‬b ‫ מחובר המקטע‬p1.1-‫ ל‬,a ‫ מחובר המקטע‬p1.0-‫בהנחה של‬

P2.1 P2.0 P1.7 P1.6 P1.5 P1.4 P1.3 P1.2 P1.1 P1.0 HEX
X g f e d c b a
0 0 0 0 1 1 1 1 1 1 3F
0 1 0 0 0 0 0 1 1 0 06
1 0 0 1 0 1 1 0 1 1 5B
1 1 0 1 0 0 1 1 1 1 4F

: '‫פתרון א‬
#include <8051.h>
void main()
{
if (P2_0==0 && P2_1==0)
P1=0x3F ;
else
if (P2_0==1 && P2_1==0)
P1=0x06 ;
else
if (P2_0==1 && P2_1==1)
P1=0x5B ;
else
P1=0x4F ;
}
: '‫פתרון ב‬
#include <8051.h>
void main()
{
char display[4] = {0x3f,0x06,0x5B,0x4F} ;
char input ;
input = P2 & 0x03 ; // ‫ למעט שתי הנמוכות‬,‫נטרול כל הסיביות‬
P1 = display[input] ;
}

5
www.arikporat.com

6
‫‪www.arikporat.com‬‬

‫פתרון לשאלה ‪8‬‬


‫א‪ .‬הסבר השורות ‪:‬‬
‫‪ – 2‬הגדרת הדק ‪p1.0‬‬
‫‪ – 6‬הגדרת משתנים מסוג ‪ bit‬ואתחולם‬
‫‪ – 7‬כותרת הפונקציה של פסיקה ‪int0‬‬
‫‪ – 9‬בדיקה האם שני ההדקים שווים ל‪1-‬‬
‫ב‪ .‬היגד מספר ‪ 3‬הוא ההיגד הנכון‪.‬‬
‫נימוק ‪ :‬הפונקציה ‪ int0‬היא בעצם הפונקציה של הפסיקה החיצונית ‪ ,0‬הודות‬
‫להגדרה ‪ interrupt 0 :‬בכותרת שלה‪ .‬פסיקה זו מאופשרת בשורה ‪ 29‬ומוגדרת‬
‫בדרבון קצה שלילי בשורה ‪.28‬‬
‫ג‪ .‬להלן הטבלה ‪:‬‬
‫‪S0‬‬ ‫‪S1‬‬ ‫‪S2‬‬ ‫‪P1.2‬‬ ‫‪P1.3‬‬
‫ללא‬ ‫ללא‬
‫פתוח‬ ‫פתוח‬ ‫ירידה‬
‫שינוי‬ ‫שינוי‬
‫פתוח‬ ‫סגור‬ ‫ירידה‬ ‫‪Off‬‬ ‫‪On‬‬
‫סגור‬ ‫פתוח‬ ‫ירידה‬ ‫‪On‬‬ ‫‪Off‬‬
‫סגור‬ ‫סגור‬ ‫ירידה‬ ‫הפוך‬ ‫הפוך‬

‫‪j.k.f.f‬‬ ‫הערה ‪ :‬המערכת מדמה דלגלג‬

‫‪7‬‬
‫‪www.arikporat.com‬‬

‫פתרון מבחן מערכות תקשורת א' תש"ף ‪ - 2020 -‬עריכה ופתרון של המרצה משה סימסולו‬

‫‪1‬‬
www.arikporat.com

2
www.arikporat.com

3
www.arikporat.com

4
www.arikporat.com

You might also like