Probleme mit TINA Treiber

wom
 
Avatar
 
Subject:

Probleme mit TINA Treiber

 · 
Posted: 30.01.2011 - 14:48  ·  #1
Hallo,

ich bekomme den Treiber nicht am Laufen. Die Hardware kann es nicht sein, die kommt von einem DEMO-Board (dr. rakers) Hier wird der ENC28J060 verwendet, in Verbindung mit einen 90CAN128 (PE4- INT, PB1-SCK, PB2-MOSI, PB3-MISO und PB4 CS). Das kleine Programm kommt über den TINA_Init nicht hinaus und bleibt dort hängen. Hat da jeman eine Ide ?

Gruß
WOM

Code
program Test_USB;
{$NOSHADOW}
{ $WG}                     {global Warnings off}

Device = 90CAN128, VCC=5;
{ $BOOTRST $0F000}         {Reset Jump to $0F000}

Define_Fuses
//  Override_Fuses;
  NoteBook   = A;
  COMport    = USB;
  LockBits0 = [];
  FuseBits0  = [];
  FuseBits1  = [SPIEN, JTAGEN, OCDEN];
  FuseBits2  = [];

Import SysTick,WatchDog, SerPort2,TINAstack;

From System Import LongWord, LongInt, Float;


Define
  ProcClock      = 16000000;       {Hertz}
  SysTick        = 10;             {msec}
  WatchDog       = msec1000;         {presc = 6}
  StackSize      = $0064, iData;
  FrameSize      = $0064, iData;
  SerPort2       = 19200, Stop2;    {Baud, StopBits|Parity}
  RxBuffer2      = 8, iData;
  TxBuffer2      = 8, iData;

  TINAdriver              = ENC28J60;
  TINAport                = SPI, PortB, 4;       // SPItyp, SS_Port, SS_Pin
  TINAtimer               = Timer3;
  TINAsockets             = 4;

Uses TINA;

Implementation
{$IDATA}

begin
  EnableInts;
  //Init the Core of TINA with Params
  With TinaCore do
    StrToIP('192.168.178.16', IP);        // tina ip address
    StrToIP('255.255.255.000', Mask);
    StrToIP('192.168.178.28', GateWay);
    StrToMac('00-A0-A1-A2-A3-A4', MAC);
    ResponsePing:= True;
    Prio:= TinaPrioHigh;
    RXCheckSumCheck:=True;
  endwith;

  WriteLn (SerOut2,'System RESET');
  //Init TINA
  IF NOT TINA_Init then
   loop
    mdelay(500);
   endloop;
  endif;

  //Start TINA - lets do the Job!
  TINA_Start;
  WriteLn (SerOut2,'TINA_Start');
end.
Jony09
 
Avatar
 
Subject:

Re: Probleme mit TINA Treiber

 · 
Posted: 15.02.2011 - 22:21  ·  #2
Hallo wom

du benötigst noch etwas mehr:

Var
MainBuff : String[255];
UDPSBuff : Array[0..150] of Byte;
UDPSBuff1 : Array[0..255] of Byte;

UDPS : TSocketHandle;
UDPS1 : TSocketHandle;


dann nach begin und vor loop

//Socket erstellen zum Empfangen

UDPS := TinaCreateSocket;
With UDPS^ do
Protocol:= pUDP;
LocalPort:= word(Port);
RemotePort:= word(Port);
TimeOut:= 100;
RetryCount := 2;
PacketRecInfo.BufferPtr:= @UDPSBuff;
PacketRecInfo.BufferLen:= SizeOf(UDPSBuff);
endwith;

//Socket Erstellen zum Senden

UDPS1 := TinaCreateSocket;
With UDPS1^ do
Protocol:= pUDP;
LocalPort:= word(Port);
RemotePort:= Word(Port);
TimeOut:= 100;
RetryCount := 2;
PacketRecInfo.BufferPtr:= @UDPSBuff1;
PacketRecInfo.BufferLen:= SizeOf(UDPSBuff1);
endwith;

jetzt noch

TINA_Start;

dann

Loop
if TinaPacketReceived(UDPS) then Auf Telegramm warten (Empfang)
Len := integer(UDPS^.PacketRecInfo.RecLen); //Länge ermitteln
x := UDPSBuff[0]; Daten rausholen
...
...

nun fürs senden

alle daten in MainBuff eintragen die gesendet werden sollen.

dann

CopyBlock(@MainBuff + 1, @UDPSBuff1, Word(Length(MainBuff)));
UDPS1^.LocalPort:= word(Port);
UDPS1^.RemotePort:= word(Port);
UDPS1^.RemoteHost:= IPEX; //Adresse vom Sender
ok := TinaSendPacket(UDPS1,@UDPSBuff1,Word(Length(MainBuff)));

wenn es dann noch probleme gibt nochmal melden.

Gruß Johannes
wom
 
Avatar
 
Subject:

Re: Probleme mit TINA Treiber

 · 
Posted: 20.02.2011 - 16:28  ·  #3
Hallo Jony09

danke vorerst. Ich werde das ganze in den nächsten Tagen testen und bescheid geben. Das Programm habe ich aus dem Demo-Ordner !! Sollte doch eigendlich kein Problem beinhalten.

Gruß
wom
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: 13   64   77 · Page-Gen-Time: 0.026969s · Memory Usage: 2 MB · GZIP: on · Viewport: SMXL-HiDPI