Gast
#177644
Halli hallo an Alle...
hab da ein Problem bei mir festgestellt. Ich benutze PORTB bei mir als
Ausgang. Dabei entspricht PB0->CLK, PB2->/CLK, PB3->/WE, PB4->/CAS,
PB5->/RAS, PB6->/CS, PB7->CKE und PB1 ist nicht belegt.
So jetzt habe ich folgende Funktionen:
void CLK_send(int cycle)
{
int i=0;
for(i=0;i<cycle;i++)
{
PORTB(0x04 & 0x05);
PORTB(0x01 & 0x05);
}
}
void SetCommandPins (uint8_t cmd)
{
PORTB = (cmd & 0xf8);
}
So rufe ich nun zuerst CLK_send auf und danach SetCommandPins, werden
PB0->CLK und PB2->/CLK mit auf "NULL" gesetzt. Und umgekehrt das
gleiche, wenn ich erst SetCommandPins aufrufe und dann CLK_send, dann
werden meine Daten "NULL" gesetzt. Das will ich natürlich nicht. Gibt
es da einen Ausweg?
Dennnoch möchte ich aber das Daten bzw. der Takt ohne Zeitversatz
gesetzt werden....
Wie kann man das machen??? Habe auch nicht die Möglichkeit einen
anderen Port zu benutzten. Es muss mit einem funktionieren! Bitte helft
mir...!
Danke Thomas