Προηγμένοι Μικροεπεξεργαστές & Εργαστήριο — Εξέταση Εργαστηρίου Ιουνίου 2021 (πολλαπλής επιλογής)¶
2021.pdf¶
6/10/2021
Εxams Upatras | Πλατφόρμα εξ αποστάσεως εξετάσεων Πανεπιστημίου Πατρών | Εξέταση Εργαστήριο Προηγμένοι Μι... | examsjun…
Χαρτοφυλάκιο / Εξέταση Εργαστήριο Προηγμένοι Μικροεπεξεργαστές... / Ασκήσεις / examsjune2021
Εξέταση Εργαστήριο Προηγμένοι Μικροεπεξεργαστές Κουρέτας 2021¶
examsjune2021
Υπολειπόμενος χρόνος: 3:35
1 2 3 4 5 6 7 8 9 10 11 12 13 14
15 16 17 18 19 20
Ερώτηση 1 (Πολλαπλής Επιλογής (Μοναδική Απάντηση) — 1 βαθμός)
Με την εντολή TCA0.SINGLE.CMP0 = 20;¶
Ορίζουμε ότι ο timer όταν φτάσει στην τιμή 20 θα δημιουργηθεί interrupt.
-
Ορίζουμε ότι ο timer όταν φτάσει στην τιμή 20 θα συνεχίσει να μετράει αντίστροφα από ό,τι μετρούσε.
-
Ορίζουμε ότι ο timer όταν φτάσει στην τιμή 20 θα σταματήσει να μετράει.
-
Ορίζουμε ότι ο timer όταν φτάσει στην τιμή 20 θα συνεχίσει να μετράει μέχρι την τιμή 40.
Ερώτηση 2 (Πολλαπλής Επιλογής (Μοναδική Απάντηση) — 1 βαθμός)
Όταν δημιουργηθεί ένα interrupt στα PINF το όρισμα που παίρνει η συνάρτηση εξυπηρέτησης είναι το
-
PORTΑ_PORT_vect
-
PORTF_PORT_vect
-
PORTF_PORT_1
-
PORTD_PORT_vect
-
PORTF_PORT_vect5
Ερώτηση 3 (Πολλαπλής Επιλογής (Μοναδική Απάντηση) — 1 βαθμός)
https://exams.eclass.upatras.gr/modules/exercise/exercise_submit.php?course=CEID332&exerciseId=11599
1/11
6/10/2021
Εxams Upatras | Πλατφόρμα εξ αποστάσεως εξετάσεων Πανεπιστημίου Πατρών | Εξέταση Εργαστήριο Προηγμένοι Μι... | examsjun…
Θέλουμε να ορίσουμε στο PORTF το 4ο pin ως switch το οποίο δημιουργεί interrupt μόνο στη θετική ακμή. Με ποιά εντολή θα το κάνουμε.
PORTF.PIN5CTRL |= PORT_PULLUPEN_bm | PORT_ISC_BOTHEDGES_gc;
PORTF.PIN4CTRL |= PORT_PULLUPEN_bm | PORT_ISC_RISING_gc;
PORTF.PIN5CTRL |= PORT_PULLUPEN_bm | PORT_ISC_RISING_gc;
PORTF.PIN4CTRL |= PORT_PULLUPEN_bm | PORT_ISC_BOTHEDGES_gc;
PORTF.PIN4CTRL &= PORT_ISC_BOTHEDGES_gc;
PORTF.PIN4CTRL &= PORT_ISC_RISING_gc;
Ερώτηση 4 (Πολλαπλής Επιλογής (Μοναδική Απάντηση) — 1 βαθμός)
Η τιμή του PORT_ISC_BOTHEDGES_gc /* Sense Both Edges */ είναι
(0x02<<0)
(0x01<<3)
(0x01<<2)
Τίποτα από τα παραπάνω
Ερώτηση 5 (Πολλαπλής Επιλογής (Μοναδική Απάντηση) — 1 βαθμός)
Η εντολή PORTD.OUTCLR= PIN5_bm;¶
Θέτουμε στον καταχωρητή DIR του PORTD την τιμή 0x20
Θέτουμε στον καταχωρητή OUTCLR του PORTD την τιμή 0x20
Θέτουμε στον καταχωρητή DIR του PORTD την τιμή 0x02
Θέτουμε στον καταχωρητή OUTCLR του PORTD την τιμή 0x02
Ερώτηση 6 (Πολλαπλής Επιλογής (Μοναδική Απάντηση) — 1 βαθμός)
Θέλω να ορίσω στο PORTD το pin 5 ως output. Ποιό από τα παρακάτω είναι σωστό.
PORTD.DIR |= PIN1_bm;
https://exams.eclass.upatras.gr/modules/exercise/exercise_submit.php?course=CEID332&exerciseId=11599
2/11
6/10/2021
Εxams Upatras | Πλατφόρμα εξ αποστάσεως εξετάσεων Πανεπιστημίου Πατρών | Εξέταση Εργαστήριο Προηγμένοι Μι... | examsjun…
PORTD.DIR &= PIN1_bm;
PORTD.DIR &= PIN4_bm; PORTD.DIR |= PIN5_bm; PORTD.DIR = PIN5_bm; PORTD.DIR = 0xfe;
Ερώτηση 7 (Πολλαπλής Επιλογής (Μοναδική Απάντηση) — 1 βαθμός)
Για να ορίσω την τιμή του counter TCA0 σε 0x10 γράφω την εντολή
TCA0.SINGLE.CNT = 0;
TCA0.SINGLE.CNT = 10;
TCA0.SINGLE.CNLB = 10;
TCA0.SINGLE.CMP0 = 10;
Ερώτηση 8 (Πολλαπλής Επιλογής (Μοναδική Απάντηση) — 1 βαθμός)
Με ποιόν από τους παρακάτω συνδυασμούς εντολών ορίζω duty cycle 30%
-
TCA0.SINGLE.PER = 254; TCA0.SINGLE.CMP0 = 127;
-
TCA0.SINGLE.PER = 127; TCA0.SINGLE.CMP0 = 254;
-
TCA0.SINGLE.PER = 120; TCA0.SINGLE.CMP0 = 40;
-
TCA0.SINGLE.PER = 40; TCA0.SINGLE.CMP0 = 120;
TCA0.SINGLE.PER = 90; TCA0.SINGLE.CMP0 = 45;
- Τίποτα από τα παραπάνω
Ερώτηση 9 (Σωστό / Λάθος — 1 βαθμός)
https://exams.eclass.upatras.gr/modules/exercise/exercise_submit.php?course=CEID332&exerciseId=11599
3/11
6/10/2021 Εxams Upatras | Πλατφόρμα εξ αποστάσεως εξετάσεων Πανεπιστημίου Πατρών | Εξέταση Εργαστήριο Προηγμένοι Μι... | examsjun…
Ο timer TCA0 είναι 32bits
Σωστό Λάθος
Ερώτηση 10 (Πολλαπλής Επιλογής (Μοναδική Απάντηση) — 1 βαθμός)
Ποιά παράμετρο παίρνει η συνάρτηση εξυπηρέτησης Interrupt όταν συμβεί overflow στον timer TCA0
TCA0_CMP0_vect TCA0_CMP1_vect TCA0_CMP2_vect TCA0_OVF_vect TCA1_CMP0_vect TCA1_OVF_vect τίποτα από τα παραπάνω
Ερώτηση 11 (Πολλαπλής Επιλογής (Μοναδική Απάντηση) — 1 βαθμός)
Με ποιά εντολή ενεργοποιώ τον timer TCA0
TCA0.SINGLE.CTRLΒ |=1;// TCA0.SINGLE.CTRLA |=1; TCA0.SINGLE.CTRLA |=TCA_SINGLE_CMP0_bm;
Ερώτηση 12 (Πολλαπλής Επιλογής (Μοναδική Απάντηση) — 1 βαθμός)
Έχω ρυθμίσει τον ADC0 και εκτελώντας το πρόγραμμά μου κάνω pause κι έχω την παρακάτω εικόνα. Ποιό είναι το threshold με το οποίο έχω θέσει τον ADC;
https://exams.eclass.upatras.gr/modules/exercise/exercise_submit.php?course=CEID332&exerciseId=11599
4/11
6/10/2021 Εxams Upatras | Πλατφόρμα εξ αποστάσεως εξετάσεων Πανεπιστημίου Πατρών | Εξέταση Εργαστήριο Προηγμένοι Μι... | examsjun…
2 10 4 12 τίποτα από τα παραπάνω
Ερώτηση 13 (Πολλαπλής Επιλογής (Μοναδική Απάντηση) — 1 βαθμός)
Στον παρακάτω κώδικα έχω τοποθετήσει braekpoints σε καθένα από τα ISR. Έχω την εικόνα στα io όπως φαίνεται. Τί εχει συμβεί.
#include <avr/io.h>
#include <avr/interrupt.h>
int main(){
PORTD.DIR |= PIN1_bm;
PORTD.DIR |= PIN2_bm;
TCA0.SINGLE.CTRLA=TCA_SINGLE_CLKSEL_DIV1024_gc;
TCA0.SINGLE.PER = 254;
TCA0.SINGLE.CMP0 = 127;
TCA0.SINGLE.CMP1 = 100;
https://exams.eclass.upatras.gr/modules/exercise/exercise_submit.php?course=CEID332&exerciseId=11599
5/11
6/10/2021 Εxams Upatras | Πλατφόρμα εξ αποστάσεως εξετάσεων Πανεπιστημίου Πατρών | Εξέταση Εργαστήριο Προηγμένοι Μι... | examsjun…
TCA0.SINGLE.CTRLB |= TCA_SINGLE_WGMODE_SINGLESLOPE_gc;
TCA0.SINGLE.INTCTRL = TCA_SINGLE_OVF_bm;
TCA0.SINGLE.INTCTRL |= TCA_SINGLE_CMP0_bm;
TCA0.SINGLE.INTCTRL |= TCA_SINGLE_CMP1_bm;
TCA0.SINGLE.CTRLA |= TCA_SINGLE_ENABLE_bm;
sei();
while (1){ }
}
ISR(TCA0_OVF_vect){
//clear the interrupt flag
int intflags = TCA0.SINGLE.INTFLAGS;
TCA0.SINGLE.INTFLAGS = intflags;
PORTD.OUT |= PIN1_bm; //PIN is off
PORTD.OUT |= PIN2_bm; //PIN is off
}
ISR(TCA0_CMP0_vect){
//clear the interrupt flag
int intflags = TCA0.SINGLE.INTFLAGS;
TCA0.SINGLE.INTFLAGS = intflags;
PORTD.OUTCLR |= PIN1_bm; //PIN is on
}
ISR(TCA0_CMP1_vect){
//clear the interrupt flag
int intflags = TCA0.SINGLE.INTFLAGS;
TCA0.SINGLE.INTFLAGS = intflags;
PORTD.OUTCLR |= PIN2_bm; //PIN is off
}
https://exams.eclass.upatras.gr/modules/exercise/exercise_submit.php?course=CEID332&exerciseId=11599
6/11
6/10/2021
- Εxams Upatras | Πλατφόρμα εξ αποστάσεως εξετάσεων Πανεπιστημίου Πατρών | Εξέταση Εργαστήριο Προηγμένοι Μι... | examsjun…
Βρίσκεται στη συνάρτηση ISR(TCA0_OVF_vect) Βρίσκεται στη συνάρτηση
ISR(TCA0_CMP0_vect)
Βρίσκεται στη συνάρτηση ISR(TCA0_CMP1_vect) τίποτα από τα παραπάνω
Ερώτηση 14 (Πολλαπλής Επιλογής (Μοναδική Απάντηση) — 1 βαθμός)
Έχουμε ορίσει το PIN4 ως output και έχουμε συνδέσει ένα led. Με ποιά εντολή ανάβει το led.
PORTD.DIR |= PIN4_bm; PORTD.OUT |= PIN4_bm PORTD.OUTCLR= PIN4_bm;
https://exams.eclass.upatras.gr/modules/exercise/exercise_submit.php?course=CEID332&exerciseId=11599
7/11
6/10/2021
Εxams Upatras | Πλατφόρμα εξ αποστάσεως εξετάσεων Πανεπιστημίου Πατρών | Εξέταση Εργαστήριο Προηγμένοι Μι... | examsjun…
PORTD.OUTCLR &= PIN4_bm;
Ερώτηση 15 (Σωστό / Λάθος — 1 βαθμός)
Ο ATmega4808 διαθέτει 3 μετρητές τύπου Β
Σωστό Λάθος
Ερώτηση 16 (Πολλαπλής Επιλογής (Μοναδική Απάντηση) — 1 βαθμός)
Στον παρακάτω κώδικα έχω τοποθετήσει braekpoints σε καθένα από τα ISR. Έχω την εικόνα στα io όπως φαίνεται. Τί εχει συμβεί.
#include <avr/io.h>
#include <avr/interrupt.h>
int main(){
PORTD.DIR |= PIN1_bm;
PORTD.DIR |= PIN2_bm;
TCA0.SINGLE.CTRLA=TCA_SINGLE_CLKSEL_DIV1024_gc;
TCA0.SINGLE.PER = 254;
TCA0.SINGLE.CMP0 = 127;
TCA0.SINGLE.CMP1 = 100;
TCA0.SINGLE.CTRLB |= TCA_SINGLE_WGMODE_SINGLESLOPE_gc;
TCA0.SINGLE.INTCTRL = TCA_SINGLE_OVF_bm;
TCA0.SINGLE.INTCTRL |= TCA_SINGLE_CMP0_bm;
TCA0.SINGLE.INTCTRL |= TCA_SINGLE_CMP1_bm;
TCA0.SINGLE.CTRLA |= TCA_SINGLE_ENABLE_bm;
sei();
while (1){ }
}
ISR(TCA0_OVF_vect){
//clear the interrupt flag
int intflags = TCA0.SINGLE.INTFLAGS;
TCA0.SINGLE.INTFLAGS = intflags;
PORTD.OUT |= PIN1_bm; //PIN is off
PORTD.OUT |= PIN2_bm; //PIN is off
}
ISR(TCA0_CMP0_vect){
//clear the interrupt flag
int intflags = TCA0.SINGLE.INTFLAGS;
TCA0.SINGLE.INTFLAGS = intflags;
PORTD.OUTCLR |= PIN1_bm; //PIN is on
}
https://exams.eclass.upatras.gr/modules/exercise/exercise_submit.php?course=CEID332&exerciseId=11599
8/11
6/10/2021
Εxams Upatras | Πλατφόρμα εξ αποστάσεως εξετάσεων Πανεπιστημίου Πατρών | Εξέταση Εργαστήριο Προηγμένοι Μι... | examsjun…
ISR(TCA0_CMP1_vect){
//clear the interrupt flag
int intflags = TCA0.SINGLE.INTFLAGS;
TCA0.SINGLE.INTFLAGS = intflags;
PORTD.OUTCLR |= PIN2_bm; //PIN is off
}
Το πρόγραμμά μας έχει μπεί στη συνάρτηση ISR(TCA0_CMP0_vect)
Το πρόγραμμά μας έχει μπεί στη συνάρτηση ISR(TCA0_CMP1_vect) Το πρόγραμμά μας έχει μπεί στη συνάρτηση ISR(TCA0_OVF_vect)
τίποτα από τα παραπάνω
Ερώτηση 17 (Πολλαπλής Επιλογής (Μοναδική Απάντηση) — 1 βαθμός)
Πώς κάνουμε enable ton ADC¶
Γράφουμε ‘1’ στο ENABLE bit in ADCn.CTRLA
Γράφουμε ‘1’ στο ENABLE bit in ADCn.CTRLΒ
Γράφουμε ‘1’ στο ENABLE bit in ADCn.CTRLC
https://exams.eclass.upatras.gr/modules/exercise/exercise_submit.php?course=CEID332&exerciseId=11599
9/11
6/10/2021
Εxams Upatras | Πλατφόρμα εξ αποστάσεως εξετάσεων Πανεπιστημίου Πατρών | Εξέταση Εργαστήριο Προηγμένοι Μι... | examsjun…
-
Γράφουμε ‘0’ στο ENABLE bit in ADCn.CTRLA
-
Γράφουμε ‘0’ στο ENABLE bit in ADCn.CTRLB
Γράφουμε ‘0’ στο ENABLE bit in ADCn.CTRLC
Ερώτηση 18 (Πολλαπλής Επιλογής (Μοναδική Απάντηση) — 1 βαθμός)
Στο περιβάλλον microchip studio όταν θέλω να ξεκινήσω το simulation επιλέγω
Start Debugging without break
Start Debugging and Break
Continue
Bulid
Ερώτηση 19 (Πολλαπλής Επιλογής (Μοναδική Απάντηση) — 1 βαθμός)
Με ποιά εντολή ενεργοποιώ το interrupt για τον τιμερ TCA0
TCA0.SINGLE.INTCTRL = TCB_SINGLE_CMP0_bm;
TCA0.SINGLE.INTCTRL = TCA_SINGLE_CMP0_bm;
TCA0.SINGLE.CTRLA = TCA_SINGLE_CMP0_bm;
τίποτα από τα παραπάνω
Ερώτηση 20 (Πολλαπλής Επιλογής (Μοναδική Απάντηση) — 1 βαθμός)
Έχω ρυθμίσει τον ADC0 και εκτελώντας το πρόγραμμά μου κάνω pause κι έχω την παρακάτω εικόνα. Σε ποιό bit έχω συνδέσει τον ADC;
https://exams.eclass.upatras.gr/modules/exercise/exercise_submit.php?course=CEID332&exerciseId=11599
10/11
6/10/2021
Εxams Upatras | Πλατφόρμα εξ αποστάσεως εξετάσεων Πανεπιστημίου Πατρών | Εξέταση Εργαστήριο Προηγμένοι Μι... | examsjun…
Στο bit 1
Στο bit A
Στο bit 7
Στο bit 4
κανένα από τα παραπάνω
Ακύρωση Οριστική υποβολή
Open eClass © 2003-2021 — Όροι Χρήσης
https://exams.eclass.upatras.gr/modules/exercise/exercise_submit.php?course=CEID332&exerciseId=11599
11/11