ADC Treiber mit ATXMega 384C3

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • Page 5 of 6
pvs-deck
PowerUser
Avatar
Gender:
Age: 53
Homepage: pvs-deck.de
Posts: 1341
Registered: 02 / 2009
Subject:

Re: ADC Treiber mit ATXMega 384C3

 · 
Posted: 14.10.2019 - 17:35  ·  #33
Quote by rh

Hallo Thorsten
schicke mir bitte mal diese App.
Ich denke das würde mir sehr weiterhelfen.
rolf

Hallo rolf,

PM ist raus, hatte ich hier aber auch schon unter diesem TOPIC veröffentlicht.

@Torsten;
Ich drücke es mal etwas anderst aus, wie kannn man mit dem AVRco aus dem XMEGA die "ProductionSignature" Werte auslesen?

Wo ich diese eintragen muß weiss ich, nur wie kann ich aus diesem Speicherbereich des XMEGAs Werte lesen? Diese Werte befinden sich ja in dem NVM-Bereich.

Code
[ProductionSignature]
...
ADCACAL0=$20
ADCACAL1=$21
TEMPSENSE0=$2E
TEMPSENSE1=$2F
...



Mit dieser Funktion erhalte ich immer "0", und warum wird hier in LOC ein Word verlangt?, der Adressbereich im "ProductionSignature" geht doch sowieso nur von 0x00 bis 0x2F

Code
 bCalLow:= ReadProductionRow(word(ADCACAL0));
  bCalHigh:= ReadProductionRow(word(ADCACAL1));

//  DebugOut('low:  '+ByteToHex(bCalLow));
//  DebugOut('High: '+ByteToHex(bCalHigh));


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

Re: ADC Treiber mit ATXMega 384C3

 · 
Posted: 14.10.2019 - 19:07  ·  #34
Hallo Thorsten,

ist eigentlich nicht nötig. Das Init im AVRco Treiber erledigt das CAL.

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

Re: ADC Treiber mit ATXMega 384C3

 · 
Posted: 14.10.2019 - 19:49  ·  #35
und nochwas.
Deine Source kann ich nicht verwenden, da ich für Chan0..3
die Pipe bzw. das auto scan verwende. Und das tut halt immer
noch nicht. Und da sollten die Ergebnisse hier abgelegt sein:
Code

ADCARESLCH0             .EQU    224h            ; var iData  byte
ADCARESHCH0             .EQU    225h            ; var iData  byte
ADCARESLCH1             .EQU    22Ch            ; var iData  byte
ADCARESHCH1             .EQU    22Dh            ; var iData  byte
ADCARESLCH2             .EQU    234h            ; var iData  byte
ADCARESHCH2             .EQU    235h            ; var iData  byte
ADCARESLCH3             .EQU    23Ch            ; var iData  byte
ADCARESHCH3             .EQU    23Dh            ; var iData  byte
rolf
pvs-deck
PowerUser
Avatar
Gender:
Age: 53
Homepage: pvs-deck.de
Posts: 1341
Registered: 02 / 2009
Subject:

Re: ADC Treiber mit ATXMega 384C3

 · 
Posted: 14.10.2019 - 21:16  ·  #36
Hallo rolf,

Code
ADCARESLCH1             .EQU    22Ch            ; var iData  byte
ADCARESHCH1             .EQU    22Dh            ; var iData  byte
ADCARESLCH2             .EQU    234h            ; var iData  byte
ADCARESHCH2             .EQU    235h            ; var iData  byte
ADCARESLCH3             .EQU    23Ch            ; var iData  byte
ADCARESHCH3             .EQU    23Dh            ; var iData  byte 


Verstehe ich da was falsch? lt. Datenblatt hat nur der XMEGA A Channel 0-3?

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

Re: ADC Treiber mit ATXMega 384C3

 · 
Posted: 14.10.2019 - 22:19  ·  #37
Nein, ich denke nicht.
Zumindest die ersten 4chans haben jeweils einen zusätzlichen Register Satz. Aber nix genaues weiss man nicht. Das Datenblatt schweigt sich dazu aus.
In diesen registersätzen sind auch jeweils ein RESL und ein RESH enthalten.
Alles sehr mysteriös......
rolf
pvs-deck
PowerUser
Avatar
Gender:
Age: 53
Homepage: pvs-deck.de
Posts: 1341
Registered: 02 / 2009
Subject:

Re: ADC Treiber mit ATXMega 384C3

 · 
Posted: 15.10.2019 - 09:54  ·  #38
Quote by rh

Nein, ich denke nicht.
Zumindest die ersten 4chans haben jeweils einen zusätzlichen Register Satz. Aber nix genaues weiss man nicht. Das Datenblatt schweigt sich dazu aus.
In diesen registersätzen sind auch jeweils ein RESL und ein RESH enthalten.
Alles sehr mysteriös......
rolf


Wenn ich das richtig verstanden habe, wird doch beim Autoscan immer wieder selbstständig in die Register RESL RESH geschrieben? Somit würde doch unter umständen mein Programm auf halb geschriebene Daten zugreifen oder? Beim AutoScan wird doch das Flag für "fertig" (ADCACH0INTFLAG.0) gelesen nicht gesetzt.
Auch beim Autoscan müsste ich den MuxCtrl auf die Pins regelmäßig änderm, wenn ich mehr als einen PortPin auslesen möchte.

Wie regelst Du das in Deinem Treiber?

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

Re: ADC Treiber mit ATXMega 384C3

 · 
Posted: 15.10.2019 - 16:48  ·  #39
Hallo Thorsten
Ohne eine passende Hardware komme ich jetzt nicht mehr weiter. Kannst Du mir da helfen. ?
rolf
pvs-deck
PowerUser
Avatar
Gender:
Age: 53
Homepage: pvs-deck.de
Posts: 1341
Registered: 02 / 2009
Subject:

Re: ADC Treiber mit ATXMega 384C3

 · 
Posted: 15.10.2019 - 17:59  ·  #40
Quote by rh

Hallo Thorsten
Ohne eine passende Hardware komme ich jetzt nicht mehr weiter. Kannst Du mir da helfen. ?
rolf


Hallo rolf,

ich sende Dir eine ältere Teststeuerung mit einem XMEGA384C3 zu, brauchst aber einen alten Programmer (10pol) oder DU musst das Kabel entsprechend für die X-Programmer anpassen. Ich habe auf diesen Leiterplatten den XMEGA PDI-Adapter onboard ;-)

Gruß
Thorsten
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • Page 5 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   141   155 · Page-Gen-Time: 0.048586s · Memory Usage: 2 MB · GZIP: on · Viewport: SMXL-HiDPI