Neue Version .54

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • Page 4 of 6
golf
Benutzer
Avatar
Gender:
Location: Donauwörth
Age: 71
Posts: 256
Registered: 11 / 2009
Subject:

Re: Neue Version .54

 · 
Posted: 11.10.2011 - 21:45  ·  #25
hallo rolf,

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

golf
rh
Administrator
Avatar
Gender:
Location: Germany
Age: 24
Homepage: e-lab.de
Posts: 5558
Registered: 03 / 2002
Subject:

Re: Neue Version .54

 · 
Posted: 11.10.2011 - 23:15  ·  #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
Gender:
Location: Donauwörth
Age: 71
Posts: 256
Registered: 11 / 2009
Subject:

Re: Neue Version .54

 · 
Posted: 12.10.2011 - 04:45  ·  #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
Gender:
Location: Germany
Age: 24
Homepage: e-lab.de
Posts: 5558
Registered: 03 / 2002
Subject:

Re: Neue Version .54

 · 
Posted: 12.10.2011 - 14:03  ·  #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
 
Subject:

Re: Neue Version .54

 · 
Posted: 18.10.2011 - 12:16  ·  #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
Gender:
Location: Germany
Age: 24
Homepage: e-lab.de
Posts: 5558
Registered: 03 / 2002
Subject:

Re: Neue Version .54

 · 
Posted: 18.10.2011 - 14:11  ·  #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
Gender:
Location: Germany
Age: 24
Homepage: e-lab.de
Posts: 5558
Registered: 03 / 2002
Subject:

Re: Neue Version .54

 · 
Posted: 18.10.2011 - 14:44  ·  #31
new AVRco download ready
Jeroen.Vandezande
 
Avatar
 
Subject:

Re: Neue Version .54

 · 
Posted: 19.10.2011 - 10:44  ·  #32
Where do I find this?
The only download I can find is still .57
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • Page 4 of 6
Selected quotes for multi-quoting:   0

Registered users in this topic

Currently no registered users in this section

The statistic shows who was online during the last 5 minutes. Updated every 90 seconds.
MySQL Queries: 15 · Cache Hits: 14   139   153 · Page-Gen-Time: 0.023901s · Memory Usage: 2 MB · GZIP: on · Viewport: SMXL-HiDPI