THMMY.gr

Μαθήματα Κύκλου Ηλεκτρονικής & Υπολογιστών => Συστήματα Μικροϋπολογιστών => Topic started by: Sylvester on December 01, 2008, 21:34:40 pm



Title: Μίκρο Ι - Εργασίες 2008-2009
Post by: Sylvester on December 01, 2008, 21:34:40 pm
Καλησπέρα..
Σχετικά με το 1ο τμήμα της εργασίας, χρειάζεται να διαβάσουμε τα ΑΕΜ από το program memory ή μόνο να τα αποθηκεύσουμε;


Title: Re: Μίκρο Ι - Εργασίες 2008-2009
Post by: piolini on December 02, 2008, 01:13:47 am
+1


Title: Re: Μίκρο Ι - Εργασίες 2008-2009
Post by: OtiNaNAi on December 02, 2008, 14:30:45 pm
Το προγραμμα θα περιλαμβανει και ελεγχο για το ποιο απο τα δυο ΑΕΜ ειναι μεγαλυτερο ή αυτο το οριζουμε εμεις (πχ. αποθηκευω το μεγαλυτερο αεμ πρώτο και το μικροτερο δευτερο??)

γενικα πως μπορουμε να συγκρινουμε 2 τοσο μεγαλους αριθμους? τα 4ψηφια αεμ ειναι 16bit ενω οι registers 8bit


Title: Re: Μίκρο Ι - Εργασίες 2008-2009
Post by: samavasi on December 02, 2008, 23:12:31 pm
δε τις δουλευει κανεις τις εργασιες φετος?λιγη βοηθεια,πως ξεκιναμε?


Title: Re: Μίκρο Ι - Εργασίες 2008-2009
Post by: CyberCaesar on December 03, 2008, 01:55:50 am
οταν λεει να αποθηκευσουμε τα αεμ σε δυαδικι μορφη εννοει να τα γραψουμε κατευθειαν εμεις σε δυαδικη? η να τα γραψουμε σε δεκαδικη κ μετα να τα μετατρεψουμε με εντολες σε δυαδικη κ να τα αποθηκευσουμε?


Title: Re: Μίκρο Ι - Εργασίες 2008-2009
Post by: samavasi on December 03, 2008, 04:20:32 am
Μαλλον απευθειας σε δυαδικη τα αποθηκευεις!
το αλλο που λεει για τον πινακα μετα δν καταλαβα,συνολικα μιλαει,πχ να γινουν 0 0 αν τα αεμ ειναι περιτα, η για καθε ψηφιο του αεμ αναλογα με τη σειρα του ψηφιου να αλλαζουν τα led πρωτα για το 1 αεμ κ μετα για το αλλο?


Title: Re: Μίκρο Ι - Εργασίες 2008-2009
Post by: OtiNaNAi on December 03, 2008, 10:32:08 am
για τα περιττα κ αρτια μαλλον εννοει για ολοκληρο το αεμ και οχι για καθε ψηφιο

οσο για την αποθηκευση, και σε δεκαδικη μορφη να γραψεις το αεμ, αυτο θα αποθηκευτει σε δυαδικη


Title: Re: Μίκρο Ι - Εργασίες 2008-2009
Post by: fantomas on December 03, 2008, 11:35:00 am
για τα περιττα κ αρτια μαλλον εννοει για ολοκληρο το αεμ και οχι για καθε ψηφιο

οσο για την αποθηκευση, και σε δεκαδικη μορφη να γραψεις το αεμ, αυτο θα αποθηκευτει σε δυαδικη
Αυτό σημαίνει στάνταρ?Ήθελα να ρωτήσω χθες τον Πέτρου αλλά δεν πρόλαβα....


Υ.Γ.Bob βοήθεια γιατί χανόμαστεεεε!!!!!!!!


Title: Re: Μίκρο Ι - Εργασίες 2008-2009
Post by: Καμένος on December 03, 2008, 11:55:00 am
για τα περιττα κ αρτια μαλλον εννοει για ολοκληρο το αεμ και οχι για καθε ψηφιο

Κι εγώ έτσι έχω καταλάβει..


Title: Re: Μίκρο Ι - Εργασίες 2008-2009
Post by: samavasi on December 03, 2008, 15:42:42 pm
αρα το πρωτο κομματι απλως μετα την αποθηκευση τυπωνει 1κατασταση των leds αναλογα με τα αεμ δηλ χχ111111 οπου χχ απο τον πινακα κ μετα παει σε endless loop σωστα?σε bcd πως μετατρεπουμε τα ψηφια των αεμ αν πχ εγω τα αποθηκευσα σε δεκαεξαδικη μορφη?


Title: Re: Μίκρο Ι - Εργασίες 2008-2009
Post by: OtiNaNAi on December 03, 2008, 18:22:44 pm
αρα το πρωτο κομματι απλως μετα την αποθηκευση τυπωνει 1κατασταση των leds αναλογα με τα αεμ δηλ χχ111111 οπου χχ απο τον πινακα κ μετα παει σε endless loop σωστα?σε bcd πως μετατρεπουμε τα ψηφια των αεμ αν πχ εγω τα αποθηκευσα σε δεκαεξαδικη μορφη?

για το πρωτο ερωτημα προφανως ετσι ειναι, αν και εγω εκανα τα leds 000000xx και οχι xx111111

οσο για το 2ο ερωτημα τα ψηφια απο 0-9 δεν ειναι ιδια ειτε σε BCD ειτε σε απλο binary?


Title: Re: Μίκρο Ι - Εργασίες 2008-2009
Post by: samavasi on December 03, 2008, 19:13:43 pm
ναι ιδια ειναι!
τελος για την καθυστερηση 3sec 6sec καμια ιδεα?πως τεσταρουμε με το avr studio ποσο χρονο θα κανουν?εχει κανενα παραδειγμα καλο πουθενα?


Title: Re: Μίκρο Ι - Εργασίες 2008-2009
Post by: OtiNaNAi on December 03, 2008, 19:25:35 pm
ο κωδικας της καθυστερησης νομιζω υπαρχει καπου μεσα στο βιβλιο

αλλα που να ψαχνεις τωρα...

παρε απο τα ετοιμα 


καθυστερηση 3s gia 4MHz

ldi r19, 46
loop3:
   ldi r18, 0xFF
loop2:
   ldi r17, 0xFF
loop1:
   dec r17
   nop
   brne loop1
   dec r18
   brne loop2
   dec r19
   brne loop3

   ldi r17, 22
loop4:
   dec r17
   brne loop4
   nop




ΕΔΙΤ Στο βιβλιο στη σελ 156 εχει για 20ms οποτε αναλογικα μπορεις να φτιαξεις για 3s

καθυστερηση 3s gia 4MHz

Code:

ldi r23,150

head_loop:
    ldi r24,31

outer_loop:
ldi r25,255

inner_loop:
   
nop
    nop
    nop
    nop
    nop
    nop
    nop
    dec r25
   
brne inner_loop
   
dec r24
   
brne outer_loop
   
dec r23
   
brne head_loop
   


Title: Re: Μίκρο Ι - Εργασίες 2008-2009
Post by: samavasi on December 03, 2008, 19:46:41 pm
οκ σωστος!να σαι καλα!να υποθεσω οτι τον ελεγχο για το αν δουλευει σωστα η καθυστερηση τον κανουμε στο εργαστηριο κ δν γινεται με στεπ οβερς στο αβρ στουντιο?
τελος την απεικονιση σε bcd εσυ την εκανες για καθε ψηφιο χωριστα στις ιδιες θεσεις leds η χρησιμοποιησες κανενα κωδικα απο τα παραδειγματα στο ετημμυ για μετατροπη δεκαεξαδικου σε 1byte binary?


Title: Re: Μίκρο Ι - Εργασίες 2008-2009
Post by: OtiNaNAi on December 03, 2008, 19:50:13 pm
ο ελεγχος μαλλον γινεται στο εργατηριο

οσο για την απεικονιση σε BCD το ψαχνω ακομα

βασικα εχω σε ενα register τα bit 0....7 κ σε αλλο τα βιτ 8....15 απο το αεμ, τωρα πως στο καλο μπορω να ξεχωρισω τα 2 τελευταια ψηφια δν εχω ιδεα


Title: Re: Μίκρο Ι - Εργασίες 2008-2009
Post by: samavasi on December 03, 2008, 20:06:53 pm
εγω στο τμημα 2 εγραψα καινουργιο κωδικα κ δν αποθηκευσαμε τα αεμ αφου δν θελει να τα τυπωσει καπου,αποθηκευσαμε μονο τα 2 ψηφια απο το καθενα κ αυτα 1-1 ως 2bito hex..


Title: Re: Μίκρο Ι - Εργασίες 2008-2009
Post by: OtiNaNAi on December 03, 2008, 20:36:30 pm
χμ ετσι ειναι πιο ευκολο απλα μηπως ο πετρου θελει να τα διαβαζουμε απο τη μνημη προγραμματος οπως στο τμημα1? τον ρωτησε κανενας?


Title: Re: Μίκρο Ι - Εργασίες 2008-2009
Post by: samavasi on December 03, 2008, 20:39:25 pm
θα τον ρωτησουμε στο εργαστηριο,εμεις απλως εχουμε ενα προγραμμα που τρεχει σωστα  ;)


Title: Re: Μίκρο Ι - Εργασίες 2008-2009
Post by: CyberCaesar on December 03, 2008, 22:39:42 pm
οταν λεει να κανουμε καθυστερηση 3sec πως το μετρατε? το κοιτατε στον πραγματικο χρονο δλδ με ρολοι?η μεσα απο το stop watch?


Title: Re: Μίκρο Ι - Εργασίες 2008-2009
Post by: OtiNaNAi on December 03, 2008, 22:53:38 pm
οταν λεει να κανουμε καθυστερηση 3sec πως το μετρατε? το κοιτατε στον πραγματικο χρονο δλδ με ρολοι?η μεσα απο το stop watch?

στο βιβλιο στη σελ156 εχει ενα αλγοριθμο για καθυστερηση 20ms, οποτε τον εκτελεις 150 φορες και λογικα πρεπει να μας κανει καθυστερηση 3s



Title: Re: Μίκρο Ι - Εργασίες 2008-2009
Post by: samavasi on December 03, 2008, 23:15:51 pm
ωραιος οτιναναι ελπιζω να ποσταρεις κ στις επομενες εργασιες!


Title: Re: Μίκρο Ι - Εργασίες 2008-2009
Post by: CyberCaesar on December 03, 2008, 23:25:08 pm
οταν λεει να κανουμε καθυστερηση 3sec πως το μετρατε? το κοιτατε στον πραγματικο χρονο δλδ με ρολοι?η μεσα απο το stop watch?

στο βιβλιο στη σελ156 εχει ενα αλγοριθμο για καθυστερηση 20ms, οποτε τον εκτελεις 150 φορες και λογικα πρεπει να μας κανει καθυστερηση 3s


thanks


Title: Re: Μίκρο Ι - Εργασίες 2008-2009
Post by: Καμένος on December 04, 2008, 11:10:28 am
οταν λεει να κανουμε καθυστερηση 3sec πως το μετρατε? το κοιτατε στον πραγματικο χρονο δλδ με ρολοι?η μεσα απο το stop watch?

Η εργασία λέει ότι τα 3 sec πρέπει να υπολογιστούν με βάση τη συχνότητα λειτουργίας του AVR (4MHz). Αυτό σημαίνει ότι πρέπει να περάσουν:

4*1024*1024*3=12582912 κύκλοι μηχανής. Ξέροντας πόσους κύκλους μηχανής έχει κάθε εντολή μπορείτε να "φτιάξετε" ένα (δύο-τρείς) βρόχους που τα άθροισμα των κύκλων μηχανής να είναι περίπου τόσο..


Title: Re: Μίκρο Ι - Εργασίες 2008-2009
Post by: OtiNaNAi on December 05, 2008, 01:28:26 am
ειχε κανενας σημερα εργαστηριο? τι ειπε ο Πετρου για το 2ο τμημα?


Title: Re: Μίκρο Ι - Εργασίες 2008-2009
Post by: CyberCaesar on December 05, 2008, 14:04:51 pm
το εργαστηριο που ειναι?εκει που καναμε τις δηλωσεις απεναντι απο την βεργινα?


Title: Re: Μίκρο Ι - Εργασίες 2008-2009
Post by: apostolos1986 on December 05, 2008, 14:09:47 pm
ναι


Title: Re: Μίκρο Ι - Εργασίες 2008-2009
Post by: CyberCaesar on December 05, 2008, 14:32:07 pm
thx.και χρειαζεται να εχουμε τπτ σημειωσεις μαζι μας?


Title: Re: Μίκρο Ι - Εργασίες 2008-2009
Post by: OtiNaNAi on December 05, 2008, 15:02:46 pm
πρεπει να εχεις τον κωδικα εκτυπωμενο για να τον παραδωσεις στον Πετρου


Title: Re: Μίκρο Ι - Εργασίες 2008-2009
Post by: CyberCaesar on December 06, 2008, 02:19:24 am
γνωριζει κανεις αν η εργασία 2 που υπάρχει στο alexander τώρα είναι η περσινη?λεει για αποθηκευση 2 αεμ στην sram και προσθεση τους.


Title: Re: Μίκρο Ι - Εργασίες 2008-2009
Post by: OtiNaNAi on December 06, 2008, 19:22:24 pm
Η φετινη πρεπει να ειναι γτ λεει file created :17/11/2008


Title: Re: Μίκρο Ι - Εργασίες 2008-2009
Post by: Καμένος on December 06, 2008, 22:36:24 pm
Κάποιος που έκανε τη Παρασκευή το βράδυ εργαστήριο μίκρο, ξέχασε το φλασάκι του πάνω στον υπολογιστή. Μπορεί να το πάρει καθημερινές από τον κ. Βουκαλή (στο εργαστήριο των Μίκρο).


Title: Re: Μίκρο Ι - Εργασίες 2008-2009
Post by: CyberCaesar on December 06, 2008, 22:58:28 pm
Η φετινη πρεπει να ειναι γτ λεει file created :17/11/2008
ναι δικιο εχεις.thanks.


Title: Re: Μίκρο Ι - Εργασίες 2008-2009
Post by: Stu@rt on December 08, 2008, 18:29:34 pm
παιδια αυτη ειναι η εργασια μου στο τμημα ενα που πρεπει να την κανουμε απο το μνημη προγραμματος
μου ετρεξε κανονικα στο εργαστηριο αλλα δεν ξερω αν πρεπει να παιξω με την Ldm γνωριζει κανεις?
.cseg            ;Δηλώνουμε στον assembler ότι παρακάτω υπάρχει κώδικας

.org 0         ;Δηλώνουμε την αρχική διεύθυνση του κώδικα στη μνήμη προγράμματος      
.def Temp1 =r16
.def Temp2 =r17
.def Temp3 =r18            ;δηλωνω τους καταχωρητες για τις μεταβλητες που θα ;χρησιμοποιησω  παρακατω
.def bmax1 =r19                   ;bmin1, bmin2 τα LSB του AEM
.def bmax2 =r20
.def bmin1 =r21
.def bmin2 =r22
.def led= r23


; Initialization
rjmp main
main:
clc
ser led
out DDRB, led            ;απενεργοποιω όλα τα Led σε αυτό το σημειο (11111111)

; Main Code   ;εδώ βαζω στις μεταβλητες τα 8 low bit και τα 8high bit του ;16δικου ΑΕΜ
ldi bmax2, $55
ldi bmax1, $17
ldi bmin1, $16
ldi bmin2, $E1
sub bmax2, bmin2      ;αφαιρω για την συγκριση
sbc bmax1, bmin1
brmi ekxorisi
sigkrisi_and:         ;συγκρινω για αρτιο και περιττο ΑΕΜ
andi bmax2, $1
brne artio
breq peritto
artio:            ;για αρτιο,το ιδιο ισχυει και για τα αλλα δυο artia1,artia2
andi bmin2, $1
brne artio2
breq artio1

artio2:             
ldi r24, $FC
out PORTB,r24
ret

artio1:
ldi r25, $FD
out PORTB,r25

peritto:            ;συγκρινω για περιττο ,αντιστοιχα peritto1
andi bmin2, $1
breq peritto1
ret

peritto1:
ldi r26, $FE
out PORTB,r26
ret

ekxorisi:
mov Temp2, bmax2
mov Temp1, bmax1
mov bmax2, bmin2
mov bmax1, bmin1
mov bmin2, Temp2
mov bmin1, Temp1
rjmp sigkrisi_and


Title: Re: Μίκρο Ι - Εργασίες 2008-2009
Post by: tiger on December 10, 2008, 13:33:09 pm
πρεπει να παιξεις με την lpm. γι αυτο κ αναφερει με μεγαλα γραμματα το ''μνημη προγραμματος


Title: Re: Μίκρο Ι - Εργασίες 2008-2009
Post by: user1515 on December 11, 2008, 13:51:19 pm
Ε, όταν λεει 3 sec για κάθε ψηφίο τι εννοεί; αφού και τα δυο μαζί δεν εμφανίζονται; Έχουμε 8 led από 4 για κάθε ψηφίο. Και να φανταστώ λογικά θα τις παραδοσουμε από βδομάδα έτσι;


Title: Re: Μίκρο Ι - Εργασίες 2008-2009
Post by: Stu@rt on December 17, 2008, 19:10:18 pm
πρεπει να παιξεις με την lpm. γι αυτο κ αναφερει με μεγαλα γραμματα το ''μνημη προγραμματος
και πως θα παιξω χωρις να αλλαξω τωρα την εργασια ολοκληρη ?????? μπορεις να βοηθησεις ή καποιος τεσπα..


Title: Re: Μίκρο Ι - Εργασίες 2008-2009
Post by: johnny_d on December 20, 2008, 19:45:43 pm
Ρε παιδιά, το εργαστήριο στα Μικρο την Παρασκευή έγινε?