-
-
Neuer Benutzer
Öfters hier
hi,
also die parallele schnittstelle gibt die werte exakt aus, das habe ich gecheckt mit einem anderen interface wo led's den stand anzeigen. gemessen hab ich auch zusaetzlich noch. also daran sollte es nicht liegen. ich habe noch ein programm geschrieben, welches die werte von PORT nach PORTB direkt rueberschreibt.
auszug:
while(1==1){
PORTB=PORTA;
}
auszug ende.
damit funktioniert alles wunderbar. wenn an ra0 eine 1 anliegt liegt auch an rb0 eine 1 an, wenn an ra1 eine 1 anliegt liegt auch an rb1 eine 1 an und wenn an ra0 und ra1 eine 1 anliegt liegt auch an rb0 und rb1 eine 1 an.
vielleicht ist auch ein bitvergleich falsch, vielleicht sollte man ein ganzes register vergleichen, d.h nicht nur (PORTA.1==1) sondern (PORTA==0b.0000.0010). vielleicht ist das besser.
PORTA ist wie ich gelesen habe im datasheet immer am anfang schon als input definiert, also braucht man es nicht setzen. sonst muesste man doch TRISA=0b.0000.0011 setzen oder?
danke.
msp
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln
Lesezeichen