Hallo Leute,
ich habe ein komisches verhalten mit einen ATXMEGA128A1U.
Ich wollte eigentlich die Quarz Eingänge als normale IOs nutzen, da ich den internen Quarz nutze. Aber ich bekomme keine Signaländerungen auf den PINs. Entweder sehe ich vor lauter Bäumen den Wald nicht mehr, oder muss ich da noch was bestimmtes beachten? Evtl. spezielle Register setzen?
....
Define
OSCtype = int2MHz,
PLLmul = 16,
prescB = 1,
prescC = 1;
SysTick = 10; // msec
...
var
// Input Onboard
HxIN_SOFTRESET [@PINQ, 0 ] : bit;
HxIN_RUNSTOP [@PINR, 0 ] : bit;
HxIN_SERVTAST [@PINR, 1 ] : bit;
....
procedure InitPorts;
begin
//Reset Input Taste
PortQ.0:= 1; //Pullup
DDRQ.0:= 0; // 0=EINGANG 1=Ausgang
//Run Stop/Schalter
PortR.0:= 1; //Pullup
DDRR.0:= 0; // 0=EINGANG 1=Ausgang
//ServTaste
PortR.1:= 1; //Pullup
DDRR.1:= 0; // 0=EINGANG 1=Ausgang
end InitPorts;
Die DDRx und PORTx werden richtig gesetzt, ich habe diese Register als Ser-Ausgabe ausgegeben, diese scheinen zu stimmen, wenn ich jetzt ein GND Signal anlege sollte eigentlich etwas im PIN-Register zu sehen sein
DebugOut('HxPinQ : '+ByteToBin( PinQ) );
DebugOut('HxPinR : '+ByteToBin( PinR) );
Aber da gibt es keine Reaktion, habe ich da einen Denkfehler?
Gruss
PVS-Deck
ich habe ein komisches verhalten mit einen ATXMEGA128A1U.
Ich wollte eigentlich die Quarz Eingänge als normale IOs nutzen, da ich den internen Quarz nutze. Aber ich bekomme keine Signaländerungen auf den PINs. Entweder sehe ich vor lauter Bäumen den Wald nicht mehr, oder muss ich da noch was bestimmtes beachten? Evtl. spezielle Register setzen?
Code
....
Define
OSCtype = int2MHz,
PLLmul = 16,
prescB = 1,
prescC = 1;
SysTick = 10; // msec
...
var
// Input Onboard
HxIN_SOFTRESET [@PINQ, 0 ] : bit;
HxIN_RUNSTOP [@PINR, 0 ] : bit;
HxIN_SERVTAST [@PINR, 1 ] : bit;
....
procedure InitPorts;
begin
//Reset Input Taste
PortQ.0:= 1; //Pullup
DDRQ.0:= 0; // 0=EINGANG 1=Ausgang
//Run Stop/Schalter
PortR.0:= 1; //Pullup
DDRR.0:= 0; // 0=EINGANG 1=Ausgang
//ServTaste
PortR.1:= 1; //Pullup
DDRR.1:= 0; // 0=EINGANG 1=Ausgang
end InitPorts;
Die DDRx und PORTx werden richtig gesetzt, ich habe diese Register als Ser-Ausgabe ausgegeben, diese scheinen zu stimmen, wenn ich jetzt ein GND Signal anlege sollte eigentlich etwas im PIN-Register zu sehen sein
Code
DebugOut('HxPinQ : '+ByteToBin( PinQ) );
DebugOut('HxPinR : '+ByteToBin( PinR) );
Aber da gibt es keine Reaktion, habe ich da einen Denkfehler?
Gruss
PVS-Deck