closed

Loginbox

Please enter your username and password into the following fields to log in.


  • Username:
  • Password:
  •  
  • Auto log in on every visit.


  •  

Programm / unit



TheBeginner offline
Benutzer
Avatar
Gender: n/a
Location: GERMANY  Wunsiedel Bayern
Age: 63
Posts: 486
Registered: 06 / 2013
Private message
Subject: Programm / unit  -  Posted: 15.06.2020 - 18:09   -  
In mein Hauptprogramm habe ich Init Socket erstellt
Code

   //Init Socket
  SockHandle:= wzCreateSocket;
  u.s.w......


Nun habe ich aber noch eine zweite Unit uSDCard; von dieser Unit
kann ich aber nicht senden, weil das Programm die SockHandle nicht
findet
wzSendBuffer(SockHandle, @SendStr+1, len);

Wie kann ich in meiner 2ten Unit das Programm einbinden,
oder geht das nicht ?

Oder muss ich in der zweiten unit ein eigenen SockHandle erstellen ?


Gruß Frank
------------------------------------------------------------------------
Als Gott mich schuf wollte er angeben.
go down go up
pvs-deck offline
PowerUser
Avatar
Gender: male
Location: GERMANY 
Age: 49
Posts: 1108
Registered: 02 / 2009
Homepage Private message
Subject: Re: Programm / unit  -  Posted: 16.06.2020 - 11:12   -  
Quote by TheBeginner

In mein Hauptprogramm habe ich Init Socket erstellt
Code

   //Init Socket
  SockHandle:= wzCreateSocket;
  u.s.w......


Nun habe ich aber noch eine zweite Unit uSDCard; von dieser Unit
kann ich aber nicht senden, weil das Programm die SockHandle nicht
findet
wzSendBuffer(SockHandle, @SendStr+1, len);

Wie kann ich in meiner 2ten Unit das Programm einbinden,
oder geht das nicht ?

Oder muss ich in der zweiten unit ein eigenen SockHandle erstellen ?


Gruß Frank


Hallo Frank,

über diese Probleme wirst Du immer wieder stolpern. Mein aktuelles Projekt besteht aus 12 Units.

Ich habe eine Globale Unit, dort sind alle Globalen Variablen enthalen, diese sind dann in allen anderen Units als "uses" eingebunden. Dann gibt es eine Unit "PrjType", hier sind alle Consts und Types enthalten.

In meiner LAN-Unit sind dann:
Code
uses PRJ_Global, PRJ_SDCARD, PRJ_WD;
uses uWzTnSMTP, uWzTINA5xx;


In meiner Main:
Code
uses UFAT16_32, PRJ_Type, PRJ_Tool, RTC, LCD, PRJ_WD, PRJ_Global; 
uses PRJ_Door, PRJ_SDCARD, PRJ_ZKS, PRJ_IO, PRJ_USB; 


In meiner Display Unit:
Code
uses PRJ_Global, PRJ_SDCARD, PRJ_LAN, PRJ_WD, PRJ_Tool;

usw.
Du wirst über diese Verzweige beim Compiler immer wieder stolpern.

Meine wichtigen Routinen arbeiten als Taks/Prozesse:
-Main
-USB
-LAN
-ZKS
-SDCard
-ModBus

Wenn ich nun Daten über LAN oder USB verschieben möchte, nutze ich eine Pipe und sende die Daten in die Pipe. z.B. im USB Task prüfe ich ob weitere/neue Daten in der Pipe liegen und sende diese dann. Es ist immer die Frage wie Du das ganze regeln willst.

Thorsten
---------------------------------------------------------
Nichts ist unmöglich in der Elektronik und der Software, die Grenzen
setzt nur das Budget, Zeit und der Entwickler! ( P V S - D E C K )
go down go up
TheBeginner offline
Benutzer
Avatar
Gender: n/a
Location: GERMANY  Wunsiedel Bayern
Age: 63
Posts: 486
Registered: 06 / 2013
Private message
Subject: Re: Programm / unit  -  Posted: 16.06.2020 - 12:37   -  
Danke Thorsten für die Info.

Ich hatte das auch gemacht, alles was mit W5500 zu tun hat habe ich
in der Unit uSDCard abgelegt und dann ging es.


Code

//W5500  var go  ===============================================================  USB
  LED[@PortF, 1]   : bit;
  SockHandle       : tSocketHandle;
  UDPBuff          : array[0..63] of byte;  //eingang
  SendBuff         : array[0..63] of byte;  //ausgang
  TempStr          : string[16];
  ReceivedSize     : word;
  CurRxSize        : word;
  n                : word;
  MarkCount        : byte;
  cmd              : byte;
//W5500  var ende  =============================================================  USB



Gruß Frank
------------------------------------------------------------------------
Als Gott mich schuf wollte er angeben.
go down go up
 


Registered users in this topic
Currently no registered users in this section

Delete cookies of this forum  •  FAQ / Help  •  Team page  •  Imprint   |  Local time: 11.07.2020 - 21:58