XMEGA und MODBUS Bug??

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

Re: XMEGA und MODBUS Bug??

 · 
Posted: 26.02.2015 - 09:00  ·  #9
Quote by rh

Hallo Thorsten,

danke für diese Info.
Ich werde das untersuchen.

rolf

Hallo rolf,

hast Du schon schauen können?

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

Re: XMEGA und MODBUS Bug??

 · 
Posted: 26.02.2015 - 19:37  ·  #10
Hallo Thorsten,

ich bin dran.

rolf
Mathias
Benutzer
Avatar
Gender: n/a
Location: Weingarten - Baden
Posts: 310
Registered: 07 / 2003
Subject:

Re: XMEGA und MODBUS Bug??

 · 
Posted: 19.04.2015 - 12:02  ·  #11
Hallo,

möchte auch einen XMega für MOD-Bus RTU verwenden.
Unter den normalen ATmegas lief es.

Habe in den "AVRco Release News" folgenden Eintrag gefunden:

Compiler Revision 5.04.98 09.Mar.2015
----------------------------------------------
Beautifier verbessert.
XMega: CDC (USB) verbessert.
XMega: ModBus RTU hat vermutlich noch ein Problem. Wird untersucht.
----------------------------------------------

Gibt's Entwarnung oder ist es zu riskant?
Was geht denn nicht?

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

Re: XMEGA und MODBUS Bug??

 · 
Posted: 19.04.2015 - 14:07  ·  #12
Hallo Mathias,

ja, User Avra meinte da noch einen Bug gefunden zu haben.
Ich konnte das leider nicht nachvollziehen.

rolf
Mathias
Benutzer
Avatar
Gender: n/a
Location: Weingarten - Baden
Posts: 310
Registered: 07 / 2003
Subject:

Re: XMEGA und MODBUS Bug??

 · 
Posted: 30.06.2015 - 23:52  ·  #13
Hallo,

bin am rätseln was es ist, meine ModBus-Verbindung klappt einfach nicht.
Vom PC kommen Daten an. Der Xmega64A3 antwortet nicht.
Alles schon zigmal überprüft. Finde nix negatives.

Vielleicht habe ich was nicht richtig eingestellt?
Hier ist Quellcode zum drüberschauen.

Code

Device = Xmega64A3, VCC = 3.3;
{ $BOOTRST $08000}         {Reset Jump to $08000} 

define_fuses
  Override_Fuses;
  NoteBook   = D; 
  ProgMode   = PDI; 
  COMport    = USB; 
  Supply     = 3.3, 100; 
  LockBits0  = []; 
  FuseBits0  = []; 
  FuseBits1  = []; 
  FuseBits2  = []; 
  FuseBits5  = [BodLevel0, BodLevel2];
  ProgFlash  = true;  // or false – program Flash
  ProgEEprom = false; // or false – program EEprom
  
import SysTick, TickTimer, WatchDog, QDEC_C0, QDEC_D1, ModBus, SerPortD1, SerPortF0;

from System import Processes, longword, float, longint; 


define
  // The XMegas don't provide any Oscillator fuses. 
  // So the application must setup the desired values 
  // possible OSC types: extXTAL, extClock, ext32kHz, int32Khz, int2MHz, int32MHz 
  
  //>> CPU=32MHz, PeripherX4=32MHz, PeripherX2=32MHz 
  OSCtype        = extXTAL = 7372800, PLLmul = 4, prescB = 1, prescC = 1;
  SysTick        = 10;             {msec}
  WatchDog       = msec125;       {presc = 3}
  StackSize      = $0100, iData; 
  FrameSize      = $0100, iData;
  Scheduler      = iData;
  TickTimer      = Timer_C1;
  
  QDECphase_C0   = PortD, 0, 1;        // Port, Phase0, Phase90 input pin
  QDECres_C0     = 32;                 // Resolution QDEC D0
  QDECevChan_C0  = 0;
  QDECphase_D1   = PortE, 0, 1;        // Port, Phase0, Phase90 input pin
  QDECres_D1     = 32;                 // Resolution QDEC D1
  QDECevChan_D1  = 2;
  
//  SerPortF0      = 57600, Databit8, Stop2;   // RTU Hr. Wagner default. ModBus-Tester meckert bei dieser Einstellung!!
  SerPortF0      = 57600, Databit8, parEven, Stop1;            // RTU default
  RxBufferF0     = 100, iData; // recommended 255, but may be lower (danger: minimum is max message length in bytes)
  TxBufferF0     = 100, iData; // recommended 255, but may be lower (danger: minimum is max message length in bytes) 
  SerCtrlF0      = PortF, 4, Positive;
  ModBus         = SerPortF0, 50, iData, 240; // port, capacity of MODBUS data block in words, iData/xData, effective bytes (Framesize = effective bytes + function code + crc + EXTRA)
  ModBusMode     = RTU, Timer_D0;

  SerPortD1      = 19200;
  TxBufferD1     = 32, iData;
  RxBufferD1     = 8, iData;
  
uses ModBusServRTU; 


Code

{ Main Program } 
{$IDATA}
begin
  pInitPorts; 
  Excl(RS485_OnOff);           // RS485-Treiber einschalten.
//  pClientAdresse;
//  pClientBaudrate;
  EnableInts($87);
  SetSerBaud(UsartF0, 57600);
  mb_SetModBusDevID(1);
  ModBuff.rCompRev:= word(CompilerRev); 
  ModBuff.rCompYear:= word(COMPILEYEAR); 
  ModBuff.rCompMonth:= word(COMPILEMONTH); 
  ModBuff.rCompDay:= word(COMPILEDAY); 
  ModBuff.rCompHour:= word(COMPILEHOUR); 
  ModBuff.rCompMinute:= word(COMPILEMINUTE); 
  ModBuff.ProjBuild:= PROJECTBUILD; 
  
  WatchDogStart;
//  EEPROM_WerteInitialisieren;
  Start_processes($87);

  loop
    pPowerFail;
    pModBus_WerteUebertragen; 
    pCounterReset;
    pCounterPreset;
    pLED_ModBus;
    pExEingaenge; 
    pExAusgaenge; 
    pWatchDogTrigger; 
 pTerminal;
  endloop; 


Zwei vergangene Projekte mit Mega644 hatten geklappt.

Wie weit kann der Simulator helfen?
Oder gibt's einen anderen Tipp?

Danke

Gruß
Mathias
Attachments
XMEGA und MODBUS Bug??
Filename: Schaltplanauszug, Xmega64A3.jpg
Filesize: 218.88 KB
Title:
Download counter: 149
Avra
Schreiberling
Avatar
Gender:
Location: Belgrade, Serbia
Age: 53
Homepage: rs.linkedin.com/in…
Posts: 653
Registered: 07 / 2002
Subject:

Re: XMEGA und MODBUS Bug??

 · 
Posted: 01.07.2015 - 09:29  ·  #14
Quote by Mathias

bin am rätseln was es ist, meine ModBus-Verbindung klappt einfach nicht.
Vom PC kommen Daten an. Der Xmega64A3 antwortet nicht.
Alles schon zigmal überprüft. Finde nix negatives.

Nothing has been changed since this post:
topic.php?p=21048#real21048
MODBUS RTU is still not supported on XMEGA. MODBUS RTU driver depends on interrupt communication and 3.5 chars frame end detection implemented by Rolf for MEGA AVRs. However his implementation does not work with XMEGA. Sorry, but I can not proceed without that part working first.
Mathias
Benutzer
Avatar
Gender: n/a
Location: Weingarten - Baden
Posts: 310
Registered: 07 / 2003
Subject:

Re: XMEGA und MODBUS Bug??

 · 
Posted: 01.07.2015 - 09:55  ·  #15
Quote

Hallo Mathias,

ja, User Avra meinte da noch einen Bug gefunden zu haben.
Ich konnte das leider nicht nachvollziehen.

rolf


Hallo Rolf,

das war für mich dann klar, daß es geht!
So nen Mist.
Wann kann ich auf Abhilfe rechnen?
Kunde steht mir auf den Füßen.

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

Re: XMEGA und MODBUS Bug??

 · 
Posted: 01.07.2015 - 13:02  ·  #16
Hallo Mathias,

ich muss gestehen dass ich hier vor einem Rätsel stehe. Ich verwende
den Modbus nur in der ASCII Variante. Keinerlei Erfahrung mit RTU.
Ich bin im Kontakt mit Avra, der mit mir zusammen den Modbus erstellt hat.

Weiterhin bin ich um jeden Tip dankbar der mir weiterhilft, speziell wenn
im generierten ASM Code was zu sehen ist.

Ich leider Modbus Dummy :angry5:

rolf
  • 1
  • 2
  • 3
  • 4
  • Page 2 of 4
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: 16 · Cache Hits: 15   138   153 · Page-Gen-Time: 0.036919s · Memory Usage: 2 MB · GZIP: on · Viewport: SMXL-HiDPI