3 bit Zähler in der Mitte eines Ports ausgeben ?

Gast #3067045
Lesenswert?

Hallo,
ich habe ein riesen Problem, ich habe einen 3 bit Zähler und den möchte 
ich anstelle von Portc 0 - Portc 2, auf Portc 3 - Portc 5 ausgeben?
Beim uC handelt es sich um einen Atmega16 , und das ganze wird im Bascom 
geschrieben.

Könnte mir da jemand weiterhelfen? Das wäre super !
Gast #3067071
Lesenswert?

Bascom kann ich nicht, aber ich würde sagen du nimmst den wert des 
Zählers und schiebst den einfach um 3 stellen.

Zähler schieben
UND mit 00111000 -> B

Port einlesen
UND mit 11000111 -> A

A ODER B -> C
Gast #3067099
Lesenswert?

2 mal nach links schieben (?????zzz)      (???zzz00)
ev. Bereinigen mit UND    (???zzz00)(&1C) (000zzz00)
Oldtimer lesen            (xxx---xx)
mit UND löschen           (xxx---xx)(&63) (xxx000xx)
mit ODER setzen           (xxx000xx) OR   (xxxzzzxx)
Zurück in Ausgang schreiben
#3067111
Lesenswert?

@  Steven (Gast)

>ich habe ein riesen Problem, ich habe einen 3 bit Zähler und den möchte
>ich anstelle von Portc 0 - Portc 2, auf Portc 3 - Portc 5 ausgeben?
>Beim uC handelt es sich um einen Atmega16 , und das ganze wird im Bascom
>geschrieben.

Mit Bitmanipulation. Schieben und maskieren.

Die Befehle im BASCOM sind SHIFT, AND und OR.

Jetzt bist du wieder dran.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren