Vitis hat gemeint der Decoder wäre unnötig ;)
Die Dekoder sind folgende
Naja vielleicht lasse ich sie doch drin...
Mal schaun ob ich den Code von Vitis verstehen kann, dann wäre das Problem ja eh gelöst :)
Druckbare Version
Vitis hat gemeint der Decoder wäre unnötig ;)
Die Dekoder sind folgende
Naja vielleicht lasse ich sie doch drin...
Mal schaun ob ich den Code von Vitis verstehen kann, dann wäre das Problem ja eh gelöst :)
nen Dekoder verwenden ist auch nicht verkehrt, nur eben
nicht 3 davon, das brauchts nicht und das Routing ist einfacher.
Ich hab erst n Projekt mit 5 Stück 16-Segment Anzeigen gemacht,
das läuft ohne Probleme beim Timing ohne Flackern oder
Hänger.
Ich hab einfach nen Timer verwendet, der zyklisch 1-5 hochzählt,
und dann immer ein Segemnt weiter schaltet und die jeweiligen
Signale an die Segmentanzeige schickt.
Mein Mega128 läuft auf ~12.280 MHz, reicht vom Timing her
locker aus.
Was ist den an dem Code unklar?
Lass ihn mal in Deinem Simulator vom Bascom laufen
und dir dabei die Variableninhalte anzeigen, dann wirds eventuell
klarer.
Achso, du meinst einen Decoder und dann Multiplexen...
Jetz hab ichs gecheckt, sorry ;)
Hm ja ich werd ihn mir nachher anschauen,
werd ich schon verstehn...
So, also den Code habe ich soweit eigentlich verstanden.
Wie Dezstellen(1) (2) und (3) erstellt werden ist mir jetzt klar,
ich hab nicht bedacht, dass bei Byte Variablen ja kein Komma übergeben wird ;)
Was Shift tut ist mir auch klar, allerdings verstehe ich nicht warum man Dezstellen(1) um 1 Dezstellen(2) um 5 geshiftet werden...
Müsste man nicht Dezstellen(1) so lassen und (2) um 4 nach links shiften?
So ist ja alles um ein Bit nach links verschoben...
ich hatt mich hier auf :
Pin 1-4 eine Stelle und auf Pin 5-8 die 2.
bezogen ...
Die Ports werden von 0 bis 7 gezählt, daher hab ich gedacht,
dass Du A.0 den ADC anderweitig verwendest ... wenn Du am ersten
physischen Pin, also A.0 anfangen willst dann halt einmal ohne shift
und einmal nur um 4
dann haste porta.0 bis port a.3 den ersten bcd, und auf port a.4
bis a.7 den zweiten
Achso, weil ich oben 1-4 und 5-8 geschrieben habe...
Gut aber dann habe ich es verstanden :)
Danke