deppara Δημοσ. 8 Μαΐου 2011 Δημοσ. 8 Μαΐου 2011 Καλησπερα,εχω ενα προβλημα το οποιο ειναι, πρεπει σε 2sevensegment απο τα 4 να εμφανιζεται σε δεκαεξαδικη μορφη ο αριθμος που ειναι στην κορυφη μιας στοιβας. Εχω λοιπον μετα απο εντολες καταληγω στην αποθηκευσει του αριθμου. mem1:RAM port map ( clk, ram_enable1, ram_address2, total_number, Number_out ); Number_out<=total_number; καταληγω εδω.Εχω τον τελικο μου αριθμο και πρεπει να τον εμφανισω σε 2 seven segment.Αυτο δεν ξερω να το κανω.
nikos903 Δημοσ. 8 Μαΐου 2011 Δημοσ. 8 Μαΐου 2011 Τα 7segment είναι είτε active-low είτε active-high, αυτό θα το δεις στο manual του board... Εκεί θα δεις και τα πίνς απο τα 2 7segment σε ποια πίνς του fpga αντιστοιχούν... Μετά δες τα Led του 7segment, έχουν μια αρίθμηση, ανάλογα με το αν βάλεις high τάση ή low στο αντίστοιχο πινάκι του led αυτό θα ανάψει ή θα σβήσει, Έτσι μπορείς να στείλεις κάποιον αριθμό σε κάποια οντότητα (ή και απο την ίδια που είσαι...) και γίνεται μετατροπή αυτού σε 7segment και έξοδος προς τα πινάκια αυτού. Να και ένας κώδικας που πέτυχα που είχα παλιά απο ένα board με active low 7segment... Δηλαδή όπου δίνεις 0 ανάβει το αντίστοιχο LED. >LIBRARY ieee; USE ieee.std_logic_1164.all; ENTITY bcdto7seg IS PORT(bcdin:IN STD_LOGIC_VECTOR(3 DOWNTO 0); seg7out: OUT STD_LOGIC_VECTOR(6 DOWNTO 0)); END bcdto7seg; ARCHITECTURE display OF bcdto7seg IS BEGIN seg7out<="1000000" WHEN bcdin="0000" ELSE --Για είσοδο 0 "1111001" WHEN bcdin="0001" ELSE --Για είσοδο 1 "0100100" WHEN bcdin="0010" ELSE --Για είσοδο 2 "0110000" WHEN bcdin="0011" ELSE --Κτλπ "0011001" WHEN bcdin="0100" ELSE "0010010" WHEN bcdin="0101" ELSE "1000010" WHEN bcdin="0110" ELSE "1111000" WHEN bcdin="0111" ELSE "0000000" WHEN bcdin="1000" ELSE "0010000" WHEN bcdin="1001" ELSE "0111111"; END display; Καλή τύχη...
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.