LAN-Netzwerk, Termialprogramm

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

LAN-Netzwerk, Termialprogramm

 · 
Posted: 14.09.2011 - 23:42  ·  #1
Hallo,

möchte für Testzwecke eine Kommunikation zwischen PC und ATmega herstellen.
Das ganze mit dem LAN-Netzwerk Treiber auf der ATmega-Seite und einem Terminalprogramm auf der PC-Seite.
Schnittstellenkonverter RS232 <-> RS485 ist vorhanden.

Suche deshalb ein Terminalprogramm.
Im Internet findet man einige, aber was könnt ihr mir empfehlen?
Was benutzt ihr?

Danke

Gruß
Mathias
pvs-deck
PowerUser
Avatar
Gender:
Age: 53
Homepage: pvs-deck.de
Posts: 1340
Registered: 02 / 2009
Subject:

Re: LAN-Netzwerk, Termialprogramm

 · 
Posted: 15.09.2011 - 11:18  ·  #2
Hallo Mathias,
Quote by Mathias

Hallo,

möchte für Testzwecke eine Kommunikation zwischen PC und ATmega herstellen.
Das ganze mit dem LAN-Netzwerk Treiber auf der ATmega-Seite und einem Terminalprogramm auf der PC-Seite.
Schnittstellenkonverter RS232 <-> RS485 ist vorhanden.

Suche deshalb ein Terminalprogramm.
Im Internet findet man einige, aber was könnt ihr mir empfehlen?
Was benutzt ihr?


Also für unsere eigenen Testfunktionen schreiben wir meistens unsere eigenes Terminal-Programm. Das geht unter Delphi/C mit dem CPort Tools ganz einfach.

Aber bei Windows2000, XP gibt es auch das Hyperterminal (bei Vista oder W7 Keine Ahnung).

Alternativ kann man auch das "Dual Terminal" vom AVRco benutzen. Ich glaube aber das unterstützt kein ANSI.

Das ZOC6.33 ist auch sehr gut, gab es schon zu AMIGA Zeiten.

Aber die Frage, was sich bei Deiner Frage stellt:
Quote by Mathias

Das ganze mit dem LAN-Netzwerk Treiber auf der ATmega-Seite und einem Terminalprogramm


Netzwerk (LAN) Ethernet am AVRCO oder

Quote by Mathias

Schnittstellenkonverter RS232 <-> RS485 ist vorhanden.

doch RS232/RS485, oder meinst Du, Du hast einen "RS232/485 auf LAN-Konverter"?

Gruß
Thorsten
Mathias
Benutzer
Avatar
Gender: n/a
Location: Weingarten - Baden
Posts: 307
Registered: 07 / 2003
Subject:

Re: LAN-Netzwerk, Termialprogramm

 · 
Posted: 15.09.2011 - 13:12  ·  #3
Hallo Thorsten,

es geht letztendlich um ein RS485 Netzwerk mit MC <-> MC <-> Touchpanel ...
Die Software für das Touchpanel macht ein Kollege (wohnt weit weg). Da sollte ich eine funktionstüchtige Komunikation liefern.

Nur für Testzwecke der Aufbau wie auf dem Foto.
Links, "MC <-> Kabel <-> RS485/RS232-Konverter <-> Stecker mit Kabel zum COM-Port des PC", fertig.
Das Demoprogramm "AVR_LANmaster" oder "AVR_LANslave" auf dem MC instalieren.
Das Terminalprogramm sollte allen "Schnickschnak" den der AVR LANport bietet mitmachen, unteranderem CRC16.
| ADDRESS | FRAMELENGTH | DATA, DATA ... | CHECKSUM |

Delphi/C, kann ich nicht.
Hyperteriminal unter XP, hab mal gekuckt, verstehe ich erstmal nicht.
Dual Terminal vom AVRco, wie kann man da ein Protokoll zusammenzimmern?
Das ZOC6.33, hab ich mir mal gemerkt.

Weis jemand was gutes?

Gruß
Mathias
Attachments
LAN-Netzwerk, Termialprogramm
Filename: IMG_1263.jpg
Filesize: 110.35 KB
Title:
Download counter: 80
pvs-deck
PowerUser
Avatar
Gender:
Age: 53
Homepage: pvs-deck.de
Posts: 1340
Registered: 02 / 2009
Subject:

Re: LAN-Netzwerk, Termialprogramm

 · 
Posted: 17.09.2011 - 11:51  ·  #4
Hallo Mathias.
Quote by Mathias

Hallo Thorsten,

es geht letztendlich um ein RS485 Netzwerk mit MC <-> MC <-> Touchpanel ...
Die Software für das Touchpanel macht ein Kollege (wohnt weit weg). Da sollte ich eine funktionstüchtige Komunikation liefern.

Nur für Testzwecke der Aufbau wie auf dem Foto.
Links, "MC <-> Kabel <-> RS485/RS232-Konverter <-> Stecker mit Kabel zum COM-Port des PC", fertig.
Das Demoprogramm "AVR_LANmaster" oder "AVR_LANslave" auf dem MC instalieren.
Das Terminalprogramm sollte allen "Schnickschnak" den der AVR LANport bietet mitmachen, unteranderem CRC16.
| ADDRESS | FRAMELENGTH | DATA, DATA ... | CHECKSUM |

Delphi/C, kann ich nicht.
Hyperteriminal unter XP, hab mal gekuckt, verstehe ich erstmal nicht.
Dual Terminal vom AVRco, wie kann man da ein Protokoll zusammenzimmern?
Das ZOC6.33, hab ich mir mal gemerkt.

Weis jemand was gutes?

Gruß
Mathias

Also wenn ich das richtig verstehe bist Du auf der Suche nache einen Protkollanalyser. Für den LAN-Port vom Avrco. Oder?

Ich glaube da wirst Du wenig Glück haben. Mit einem normalen Terminal-Programm geht das schon gar nicht. Da Du ja Daten sendest, die so gar nicht von der Terminal-Emulation übersetzt/angezeigt werden können.

Zumal Du ja selbst das Protokoll im Lanport festlegst. Der Avrco gibt nur nur die Grundzüge inkl. CRC. Wenn Du die Daten ausgewertet haben möchtest musst Du schon selbst Hand anlegen und das passende programmieren.
Wenn Dir aber die Hexcodes reichen, dann kannst Du Dir einfach einen fertigen Protokollanalyser z.B. der Firma Processinformatik laden, das Programm nennt sich PG-Fox32bit (eine DOS Version gibt es auch noch ;) )

Ich kenne keines wo man selbst seinen Protokoll-Rahmen einstellen kann.

Aber als Tip, wenn das Touchpanel ein Industrie-Panel bzw. eines aus der Automation ist, dann unterstützt es selbst vom Werk aus das Modbus-RTU/ASCII als Standard.

Wenn ich sowas habe, dann lasse ich das Panel als Modbus-Master laufen und nehme die Steuerungen als Slaves, der AVRCO hat einen wunderbaren Modbus-Slave-Treiber für sowas.

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

Re: LAN-Netzwerk, Termialprogramm

 · 
Posted: 17.09.2011 - 14:14  ·  #5
@Mathias, Thorsten,

das LAN ist ja recht nett, aber warum nicht das SLIP-Protokoll nehmen? Das ist wesentlich moderner und komfortabler. Dieses wird auch vom Dual Terminal unterstützt.

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

Re: LAN-Netzwerk, Termialprogramm

 · 
Posted: 19.09.2011 - 18:41  ·  #6
Hallo,

@Rolf, ich versuch's erstmal mit LAN.
@Thorsten, danke für die Tipps.

Also, erster Versuch und schon klappt was nicht.....

Habe dieses Terminal-Programm im Internet gefunden: Terminalprogramm
Es ist erstmal brauchbar, komme mit zurecht.

Hier etwas Code:
Code

//--------------------------------------------------------------;
procedure pRS485;
begin
  Case CASE_RS485_Zyklus of
  0  : SetSysTimer(TimerRS485_Zyklus, 1);    // alle 10ms.
       CASE_RS485_Zyklus:= 1;
     |
  1  : IF IsSysTimerZero(TimerRS485_Zyklus) Then
         CASE_RS485_Zyklus:= 2;
       EndIf;
     |
  2  : If lwInBits <> lwInBitsOld Then
         lwInBitsOld:= lwInBits;
         LANTxRec.LANdata[0]:= aInBits[0];      //
         LANTxRec.LANdata[1]:= aInBits[1];      //
         LANTxRec.LANdata[2]:= aInBits[2];      //
         LANTxRec.LANdata[3]:= aInBits[3];      //
         LANtxFrame(100, 4);                    // Sende Frame mit Slave-Adresse, Anz. Datenbytes, Datenbytes, CRC-16.
         CASE_RS485_Zyklus:= 3;
       EndIf;
     |
  3  : If LANtxStat Then                        // Diese Funktion prüft, ob ein zu sendender Frame gesendet ist oder nicht.
         If (LANrxStat)Then                     // Diese Funktion gibt ein true zurück, wenn ein Frame empfangen wurde und noch nicht mit „LANrxClear“ ungültig gemacht wurde.
           If(LANrxStatReg = $FF) Then          // Check ob empfangener Frame ok ist. $FF = ja.
             LANrxClear;                        // Das Statusbyte des RxBuffers wird zurückgesetzt.
             aOutBits[0]:= LANRxRec.LANdata[0]; //
             aOutBits[1]:= LANRxRec.LANdata[1]; //
             aOutBits[2]:= LANRxRec.LANdata[2]; //
             aOutBits[3]:= LANRxRec.LANdata[3]; //
excl (lwSPSout, 28);        // nur für Test.
           Else
inc (lwSPSout, 28);         // nur für Test.
             (* Frame error *)
             LANrxClear;
           EndIf;
           CASE_RS485_Zyklus:= 0;
         EndIf;
       EndIf;
     |
   EndCase;
End pRS485;
//--------------------------------------------------------------;


Im Anhang ein Screen-Shot mit falscher CRC-16.
Die müsste eigentlich 00 00 sein.
Wie kann das zustande kommen?

Der Rest ist immer in Ordung.

Danke

Gruß
Mathias
Attachments
LAN-Netzwerk, Termialprogramm
Filename: Terminal v1.9b, CRC-16 falsch.jpg
Filesize: 147.75 KB
Title:
Download counter: 49
Mathias
Benutzer
Avatar
Gender: n/a
Location: Weingarten - Baden
Posts: 307
Registered: 07 / 2003
Subject:

Re: LAN-Netzwerk, Termialprogramm

 · 
Posted: 20.09.2011 - 16:34  ·  #7
Hallo,

ChkSum8 und 16 gehen.
Dieser Checksummentester bringt bei CRC-16 ein anderes Ergebnis:
www.lammertbies.nl/comm/info/crc-calculation.html
Kann das mit der CRC-16 Checksumme mal jemand nachprüfen?

AVRco Compiler Version: 4.99.05

Danke

Gruß
Mathias
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   129   144 · Page-Gen-Time: 0.029605s · Memory Usage: 2 MB · GZIP: on · Viewport: SMXL-HiDPI