Neue Version .54

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • Seite 4 von 6
golf
Benutzer
Avatar
Geschlecht:
Herkunft: Donauwörth
Alter: 72
Beiträge: 266
Dabei seit: 11 / 2009
Betreff:

Re: Neue Version .54

 · 
Gepostet: 11.10.2011 - 21:45 Uhr  ·  #25
hallo rolf,

ja, ich habe die aktuelle version .56 installiert , PortAusgänge sind nur Low.

golf
rh
Administrator
Avatar
Geschlecht:
Herkunft: Germany
Alter: 25
Homepage: e-lab.de
Beiträge: 5558
Dabei seit: 03 / 2002
Betreff:

Re: Neue Version .54

 · 
Gepostet: 11.10.2011 - 23:15 Uhr  ·  #26
Hallo Golf,

das Problem ist, dass man mit Ports offensichtlich nicht mit LAS und LAC opcodes arbeiten kann.
Das dürfte evtl. noch ein Problem der XMegas sein, denn in der Opcode Liste stehen für die Addressen die LAS, LAC und LAT opcodes benützen keinerlei Beschränkungen drin. Ich habe das
jetzt geändert. Sie sollten deshalb diese Konstruktionen wie z.B.
Code
  Daten1[@PortC,3]: bit;
  Daten3[@PortD,2]: bit;
oder
  DDaten1[@DDRC,3]: bit;
  DDaten3[@DDRD,2]: bit;

nicht benutzen (bit-definitions in ports). Im nächsten Update wird dem Rechnung getragen.

rolf
golf
Benutzer
Avatar
Geschlecht:
Herkunft: Donauwörth
Alter: 72
Beiträge: 266
Dabei seit: 11 / 2009
Betreff:

Re: Neue Version .54

 · 
Gepostet: 12.10.2011 - 04:45 Uhr  ·  #27
hallo rolf,
das passt erst mal. ich werds einfach anders lösen. ich hatte mich nur gewundert, da das früher immer so ging.

DDRF:= %00100111;
D:= $0F;
loop
if bit(D,0) = true then incl(PortF,2); else excl(PortF,2); endif;
if bit(D,4) = true then incl(PortF,2); else excl(PortF,2); endif;

so in der Art z.B. schaltet der Port wieder einwandfrei.

aber auch sowas geht.

if bit(D,0) = true then incl(Daten1); else excl(Daten1); endif;
...
also an den bit-definitions alleine liegts wohl nicht , die verwende ich häufig im programm.
was nicht geht, war

Daten1 := bit(D,0);

golf
rh
Administrator
Avatar
Geschlecht:
Herkunft: Germany
Alter: 25
Homepage: e-lab.de
Beiträge: 5558
Dabei seit: 03 / 2002
Betreff:

Re: Neue Version .54

 · 
Gepostet: 12.10.2011 - 14:03 Uhr  ·  #28
Hallo Golf,

richtig, es liegt weder an der Bit-Kombination noch an der verwendeten Syntax.
Der AVRco versucht beim XMega und Bit-Operationen grundsätzlich diese neuen "atomic" opcodes einzusetzen, was bei Interrupts und MultiTasking natürlich Sinn macht. Aber offensichtlich können diverse solche Operationen nicht auf Port-Register angewandt werden. Im Mnemonics Manual von Atmel sind dazu jedoch keinerlei Einschränkungen zu finden. Das geht deshalb offensichtlich nicht:

Bit in PortB setzen:
Lade Z, @PortB
Lade R16, BitMask
LAS Z, R16 <<<<<<<<<< hier streikt der XMega

btw.
Für den AVRco ist es ein riesen Unterschied ob mit einem vorher definierten BitTyp gearbeitet wird (Daten1[@PortD,3]: bit) oder ein bit direkt im Kontext konstruiert wird (abc.5:= xxx).
Im ersten Fall wird mit den opcodes LAS und LAC gearbeitet, im zweiten Fall mit den Registern OutSetX bzw. OutClrX. Im nächsten AVRco update wird für Ports immer OutSet und OutClr angewendet. Damit sollte sich das Problem erledigt haben.

rolf
Jeroen.Vandezande
 
Avatar
 
Betreff:

Re: Neue Version .54

 · 
Gepostet: 18.10.2011 - 12:16 Uhr  ·  #29
I have version .57 and it seems there is still a problem with the bit type on XMegas...
I use a XMega64A3

I have this code:

Code

var
  RedLED[@PortA, 3]: Bit;
  BlueLED[@PortA, 4]: Bit;

loop
  incl(RedLed);
  excl(RedLed);
endloop;


That works!

but this does not:

Code

loop
  RedLed := true;
  RedLed := false;
endloop;


Best Regards,

Jeroen
rh
Administrator
Avatar
Geschlecht:
Herkunft: Germany
Alter: 25
Homepage: e-lab.de
Beiträge: 5558
Dabei seit: 03 / 2002
Betreff:

Re: Neue Version .54

 · 
Gepostet: 18.10.2011 - 14:11 Uhr  ·  #30
Hello Jeroen,

you are right. These "atomic" features of the XMegas are fantastic but have some pitfalls.
I will do an AVRco update this afternoon.

rolf
rh
Administrator
Avatar
Geschlecht:
Herkunft: Germany
Alter: 25
Homepage: e-lab.de
Beiträge: 5558
Dabei seit: 03 / 2002
Betreff:

Re: Neue Version .54

 · 
Gepostet: 18.10.2011 - 14:44 Uhr  ·  #31
new AVRco download ready
Jeroen.Vandezande
 
Avatar
 
Betreff:

Re: Neue Version .54

 · 
Gepostet: 19.10.2011 - 10:44 Uhr  ·  #32
Where do I find this?
The only download I can find is still .57
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • Seite 4 von 6
Gewählte Zitate für Mehrfachzitierung:   0

Registrierte in diesem Topic

Aktuell kein registrierter in diesem Bereich

Die Statistik zeigt, wer in den letzten 5 Minuten online war. Erneuerung alle 90 Sekunden.
MySQL Queries: 15 · Cache Hits: 14   139   153 · Page-Gen-Time: 0.029884s · Speichernutzung: 2 MB · GZIP: ein · Viewport: SMXL-HiDPI