Startseite · Forum · CAN Module · Shops · Katalog · Pressearchiv · Downloads · Videos · WebLinksSonntag, 10. November 2024
Thema ansehen
 Das CAN digital Bahn Projekt > M(ärklin)-CAN Module
 CC-Schnitte
Vorheriges Thema Nächstes Thema

 
Autor CC-Schnitte unter XP ansteuern geht nicht   1 # 10 top
Bernie256
Amateur


User Avatar



Beiträge: 19

Ort: Weinheim
Eingetreten: 20.10.13
Status: Offline
Eingetragen am 03.02.2015 09:37  

Hier kurz mein Problem - programmiert in Delphi

Die wesentlichen Teile hier angeführt:

//Öffnen der Com-Schnittstelle (Treiber FTDI sind installiert)
Openstring :='COM7:,500000,N,8,1';
PortHandle:=CreateFile(PChar(OpenString),GENERIC_READ or GENERIC_WRITE,0,NIL,OPEN_EXISTING,0,0);
// Gibt Porthandle zurück


//Schicken der 13 Bytes an die CC-Schnitte
Data[0]:=0;
Data[1]:=35;
Data[2]:=231;
Data[3]:=85;
Data[4]:=6; //DCL
Data[5]:=30;
Data[6]:=0;
Data[7]:=0;
Data[8]:=150: // Adresse des Monitors
Data[9]:=1: //1-16 Nummer des einzelnen Monitors
Data[10]:=1; //EIN=1 - AUS=0
Data[11]:=0;
Data[12]:=0;
for ni:=0 to 12 do
WriteFile(PortHandle,Data[ni],1,BytesWritten,NIL);

Bei meinem Windows7-Rechner funktioniert das alles und ich kann die LED am Monitor (150)
ein und ausschalten sowie Tastenbefehle empfangen!

Warum funktioniert die oben angeführte Sequenz nicht auf dem Notebook mit XP???
Die CC-Schnitte reagiert mit einem Dauerlicht- führt aber keinerlei Befehle aus!

Hterm( von Hammer) funktioniert auf beiden Geräten!


Was mache ich falsch?

oder was kann ich besser machen!

Gruss Bernhard

 
Autor RE: CC-Schnitte unter XP ansteuern geht nicht   2 # 10 top
AndreasWB
Spezialist


User Avatar



Beiträge: 312

Eingetreten: 01.01.12
Status: Offline
Eingetragen am 03.02.2015 13:26  

Hallo Bernhard,

Stellt die Schnitte bei Anschluß an Deinen XP-Rechner wirklich die COM7 dar?
Der Rest sollte bei einer guten Programmiersprache ja unabhängig vom Betriebssystem gültig sein.

Gruß
Andreas


Märklin H0, Umbau auf Digital, Multiprotokoll- und MM(mfx)-Dekoder, PC-Steuerung ohne teure Zentrale,
Gleisbox mit CC-Schnitte
Steuerungsprogramm: WinDigipet 2015
Meine MoBa-Homerpage: http://andreaswb.bplaced.net/modell...ahn.html
Mein YouTube-Kanal: http://www.youtube.com/user/AndyWoBu

http://andreaswb.bplaced.net/modellbahn.html  
Autor RE: CC-Schnitte unter XP ansteuern geht nicht   3 # 10 top
Bernie256
Amateur


User Avatar


Threadstarter

Beiträge: 19

Ort: Weinheim
Eingetreten: 20.10.13
Status: Offline
Eingetragen am 04.02.2015 12:19  

Hallo Andreas

ich lese die jeweiligen Schnittstellen für jeden Rechner extra ein. Beim Win7Rechner ist es COM7 beim XP ist es die COM3-- das ist von Rechner zu Rechner verschieden. Aber HTerm und Gleismonitor_001 machen das genauso und zeigen die jeweilige COM an.

Gruss aus Weinheim


Spur N Anlage bei den Eisenbahnfreunden Weinhem: www.efweinheim.de

 
Autor RE: CC-Schnitte unter XP ansteuern geht nicht   4 # 10 top
AndreasWB
Spezialist


User Avatar



Beiträge: 312

Eingetreten: 01.01.12
Status: Offline
Eingetragen am 04.02.2015 15:58  

Hallo Bernhard,

dann ist ja gut.
Ich fragte nur, weil die COM-Nummer in Deinem Code-Beispiel fest eingetragen ist. Das hast Du also nur exemplarisch zum zeigen hier im Forum so geschrieben(?)
Es gäbe ja sonst keinen weiteren Grund, weshalb der rudimentäre Code vom Betriebssystem abhängig sein sollte.
Kannst Du mit anderen selbst geschriebenen Programmen am XP-Rechner auf die Schnitte an COM3 zugreifen?

Gruß
Andreas


Märklin H0, Umbau auf Digital, Multiprotokoll- und MM(mfx)-Dekoder, PC-Steuerung ohne teure Zentrale,
Gleisbox mit CC-Schnitte
Steuerungsprogramm: WinDigipet 2015
Meine MoBa-Homerpage: http://andreaswb.bplaced.net/modell...ahn.html
Mein YouTube-Kanal: http://www.youtube.com/user/AndyWoBu

http://andreaswb.bplaced.net/modellbahn.html  
Autor RE: CC-Schnitte unter XP ansteuern geht nicht   5 # 10 top
Bernie256
Amateur


User Avatar


Threadstarter

Beiträge: 19

Ort: Weinheim
Eingetreten: 20.10.13
Status: Offline
Eingetragen am 04.02.2015 16:03  

Hallo
Wiegesagt kann ich auf die CC-Schnitte zugreifen!

Sobald ich die Schnittstelle geöffnet habe und die 13 Bytes schicke beginnt die CC-Schnitte auf Dauer zu leuchten- was nach der Beschreibung heißt, dass sie auf weitere oder auch fehlende Bytes wartet! Danach aber kann ich nur noch aus und weide einschalten! Wie gesagt auf COM3 reagieren der Gleisreporter_001 von Thorsten und HTERM -- es liegt also nicht an der Schnittstelle- sondern an der Geschwindigkeit von XP. Aber ein Ändern der BAUD-Rate bringt nichts, da die CC-Schnitte mit 500 000 Baud eingestellt ist.

Gruss
Bernhard



Spur N Anlage bei den Eisenbahnfreunden Weinhem: www.efweinheim.de

 
Autor RE: CC-Schnitte unter XP ansteuern geht nicht   6 # 10 top
AndreasWB
Spezialist


User Avatar



Beiträge: 312

Eingetreten: 01.01.12
Status: Offline
Eingetragen am 04.02.2015 17:52  

Na Bernhard,
Quote
Bernie256 schrieb:
-- es liegt also nicht an der Schnittstelle- sondern an der Geschwindigkeit von XP.


wohl eher an der PC-Hardware? Stört irgendwas die Taktung der Schnittstelle?

Ich arbeite ja auch mit XP ohne Probleme. Und das mit nem alten IBM Laptop (Intel Core Duo T7600 (2 x 2,33GHz, 667 MHz)). Die Lampe an der Schnitte leuchtet bei mir nur, bis ich die Schnitte das erste mal anspreche, bzw. wenn keine elektrische Verbindung zum USB-Stecker mehr besteht.


Märklin H0, Umbau auf Digital, Multiprotokoll- und MM(mfx)-Dekoder, PC-Steuerung ohne teure Zentrale,
Gleisbox mit CC-Schnitte
Steuerungsprogramm: WinDigipet 2015
Meine MoBa-Homerpage: http://andreaswb.bplaced.net/modell...ahn.html
Mein YouTube-Kanal: http://www.youtube.com/user/AndyWoBu


Bearbeitet von AndreasWB am 04.02.2015 18:10
http://andreaswb.bplaced.net/modellbahn.html  
Autor RE: CC-Schnitte unter XP ansteuern geht nicht   7 # 10 top
Bernie256
Amateur


User Avatar


Threadstarter

Beiträge: 19

Ort: Weinheim
Eingetreten: 20.10.13
Status: Offline
Eingetragen am 04.02.2015 20:52  

Hallo

Dann werde ich mal bei meinem alten Schlepptop-XP die Hardware untersuchen!

Erst mal Danke

Wenn ich herauskriege was Schuld ist, melde ich mich wieder!

Tschüss


Spur N Anlage bei den Eisenbahnfreunden Weinhem: www.efweinheim.de

 
Autor RE: CC-Schnitte unter XP ansteuern geht nicht   8 # 10 top
Bernie256
Amateur


User Avatar


Threadstarter

Beiträge: 19

Ort: Weinheim
Eingetreten: 20.10.13
Status: Offline
Eingetragen am 11.02.2015 10:58  

SO ERLEDIGT

Der Fehler lag am Programm und an der Hardware des XP!!

Im alten Programm stand:
for ni:=0 to 12 do
WriteFile(PortHandle,Data[ni],1,BytesWritten,NIL);

(aus dem Programm RSCOM)

also jedes Byte wurde einzeln geschickt!

Bei XP war die CC-Schnitte zu schnell.

Nach langem intensiven Nachdenkens habe ich experimentiert und habe nun die Lösung!

Neues Programm

var
data: array[0..12] of byte;

procedure Schalte(Sender: TObject);
var BWword;
begin
WriteFile(PortHandle,Data,13,BW,NIL);
end;


In Writefile übergebe ich die gesamte Datastruktur und schicke die Anzahl der zu sendenden Daten (13) gleich mit!
Und sieheda mein alter Schlepptop mag das alles!


Gruss aus Weinheim
Bernhard



Spur N Anlage bei den Eisenbahnfreunden Weinhem: www.efweinheim.de

 
Autor RE: CC-Schnitte unter XP ansteuern geht nicht   9 # 10 top
AndreasWB
Spezialist


User Avatar



Beiträge: 312

Eingetreten: 01.01.12
Status: Offline
Eingetragen am 11.02.2015 20:44  

Hallo Bernhard,

die CAN-Befehle als 13 einzelne Bytes zu senden, macht RocRail übrigens auch.
--> http://www.can-digital-bahn.com/forum/viewthread.php?forum_id=38&thread_id=682&pid=4373#post_4373

Dies hat zur Folge, daß die Befehle vom Empfänger dann nicht korrekt verstanden werden, wenn ein anderer Absender seine korrekten 13-Byte Pakete in den "Sendepausen" zwischen den einzelnen Bytes schickt. Mir war das aufgefallen, als die Gleisbox einige Steuerungsbefehle von RocRail nicht bestätigt hat. Als dann nicht nur einige Siganle nicht, sondern auch Weichen nicht geschaltet wurden, war Schluß mit Lustig mit meinen RocRail-Tests.

Bis dahin hätte ich aber nicht gedacht, daß die "Paketierung" so wichtig ist. Schließlich sendet das CS2-Demo Programm über Netz auch 13 Einzelbytes statt der 13er-Pakete.
Aber da fällts nicht auf, solange es sich um vereinzelte Steuerbefehle handelt.

Aber gut, daß Du die Lösung gefunden hast.

Gruß
Andreas


Märklin H0, Umbau auf Digital, Multiprotokoll- und MM(mfx)-Dekoder, PC-Steuerung ohne teure Zentrale,
Gleisbox mit CC-Schnitte
Steuerungsprogramm: WinDigipet 2015
Meine MoBa-Homerpage: http://andreaswb.bplaced.net/modell...ahn.html
Mein YouTube-Kanal: http://www.youtube.com/user/AndyWoBu

http://andreaswb.bplaced.net/modellbahn.html  
Autor RE: CC-Schnitte unter XP ansteuern geht nicht   10 # 10 top
ST-Oldie
Spezialist




Beiträge: 55

Eingetreten: 24.04.13
Status: Offline
Eingetragen am 13.02.2015 23:52  

Hi Andreas,

Quote
AndreasWB schrieb:Dies hat zur Folge, daß die Befehle vom Empfänger dann nicht korrekt verstanden werden, wenn ein anderer Absender seine korrekten 13-Byte Pakete in den "Sendepausen" zwischen den einzelnen Bytes schickt. Mir war das aufgefallen, als die Gleisbox einige Steuerungsbefehle von RocRail nicht bestätigt hat. Als dann nicht nur einige Siganle nicht, sondern auch Weichen nicht geschaltet wurden, war Schluß mit Lustig mit meinen RocRail-Tests.



Das ist natürlich tödlich. Die serielle Schnittstelle liefert ja einen Bytestrom, gbit es da kein Framing zum synchronisieren? Dann würde ein CAN Frame verloren gehen und man könnte sich neu synchronisiern. Definiert die CC-Schnitte kein Framing, um sich gegebenfalls neu zu synchronisieren?

Quote
AndreasWB schrieb:Bis dahin hätte ich aber nicht gedacht, daß die "Paketierung" so wichtig ist. Schließlich sendet das CS2-Demo Programm über Netz auch 13 Einzelbytes statt der 13er-Pakete.
Aber da fällts nicht auf, solange es sich um vereinzelte Steuerbefehle handelt.



Bist du dir da sicher? Ich hab noch nicht den komletten Datenverkehr getract. Aber mr erschien es so, daß immer komplette Frames geschickt wurden. Was ja eigentlich logischer wäre. Es wird ein CAN frame aufgebaut, der dann verschickt wird.

Tschüß
Michael


Bearbeitet von ST-Oldie am 16.02.2015 14:42
 
 
Springe zu Forum:
Copyright 2010 - 2023 by Sven Schapmann