Problem im Simulator

  • 1
  • 2
  • 3
  • Page 1 of 3
KF
Benutzer
Avatar
Gender: n/a
Location: NRW
Posts: 32
Registered: 03 / 2004
Subject:

Problem im Simulator

 · 
Posted: 18.02.2017 - 16:50  ·  #1
Hallo Rolf,

ich habe ein kleines Problem mit dem Simulator. Bei folgendem kleinen Programm hält der
Simulator reproduzierbar bei 23:17 mit einer Integer-Überlauf Fehlermeldung an. Dadurch
kann ich leider keinen Tageswechsel simulieren. Ist dieses Problem bekannt?
Code

program SimulatorTest;

{$NOSHADOW}
{ $WG}                     {global Warnings off}
{$DEBDELAY}                {kurze Delays für Simulator}

Device = mega8, VCC=5;
{ $BOOTRST $00C00}         {Reset Jump to $00C00}

Define_Fuses
//  Override_Fuses;
  NoteBook   = A;
  COMport    = USB;
  LockBits0  = [];
  FuseBits0  = [];
  FuseBits1  = [];

Import SysTick, RTclock, LCDport;

From System Import ;

From RTclock Import RTCalarm, RTCtimer;


Define
  ProcClock      = 16000000;       {Hertz}
  SysTick        = 10;             {msec}
  StackSize      = $0032, iData;
  FrameSize      = $0032, iData;
  LCDport        = PortD;
  LCDtype        = 44780;
  LCDrows        = 2;              {rows}
  LCDcolumns     = 16;             {columns per line}
  RTClock        = iData, DateTime;{Time, DateTime}
  RTCtimer       = 2;              {channels}

Implementation

{$IDATA}

{--------------------------------------------------------------}
{ Type Declarations }

type
  str16    = String[16];

{--------------------------------------------------------------}
{ Const Declarations }

{--------------------------------------------------------------}
{ Var Declarations }
{$IDATA}
Var
  ANzeigen  : Boolean;


{--------------------------------------------------------------}
{ functions }

procedure RTCtimer;           // CallBack from RTCtimer
begin
end;

procedure RTCalarm;           // CallBack from RTCalarm
begin
end;

procedure RTCtickSecond;      // CallBack from RTCclock
begin
end;

procedure RTCtickMinute;      // CallBack from RTCclock
begin
  Anzeigen:=True;
end;

procedure RTCtickHour;        // CallBack from RTCclock
begin
end;

Procedure Zeit_anzeigen;
Var se, mi, st : Byte;
    da, mo, ye : Byte;
    Ausgabe    : Str16;
Begin
  st:=RTCGetHour;
  mi:=RTCGetMinute;
  se:=RTCGetSecond;
  da:=RTCGetDay;
  mo:=RTCGetMonth;
  ye:=RTCGetYear;
  Ausgabe:=ByteToStr(da:2:'0')+'.'+ByteToStr(mo:2:'0')+'.20'+ByteToStr(ye:2:'0')+' ';
  Ausgabe:=Ausgabe+ByteToStr(st:2:'0')+':'+ByteToStr(mi:2:'0');
  LCDxy(0,0);
  Write(LCDOut,Ausgabe);
  Anzeigen:=False;
End Zeit_anzeigen;


{--------------------------------------------------------------}
{ Main Program }
{$IDATA}

begin
  EnableInts;
  Anzeigen:=True;
  loop
    if Anzeigen then
      Zeit_anzeigen;
    endif;
  endloop;
end SimulatorTest.


Viele Grüße

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

Re: Problem im Simulator

 · 
Posted: 22.02.2017 - 16:52  ·  #2
Hallo Klaus,

in welcher Zeile passiert das?

rolf
KF
Benutzer
Avatar
Gender: n/a
Location: NRW
Posts: 32
Registered: 03 / 2004
Subject:

Re: Problem im Simulator

 · 
Posted: 23.02.2017 - 10:44  ·  #3
Hallo Rolf,

ich versuche mal rauszufinden in welcher Zeile der Simulator mit der Fehlermeldung abbricht, ist durch die 23 Minuten aber ziemlich langwierig.
Mir fällt gerade ein, nach einem erneuten Start des Programms kommt die Fehlermeldung sofort. Ich muss dann den Simulator beenden und komplett neu starten.

mfg

Klaus
KF
Benutzer
Avatar
Gender: n/a
Location: NRW
Posts: 32
Registered: 03 / 2004
Subject:

Re: Problem im Simulator

 · 
Posted: 23.02.2017 - 12:59  ·  #4
Hallo Rolf,

also der Fehler tritt in der Zeile
Code

Write(LCDOut,Ausgabe);

auf, mehrfach überprüft. Da ich das Problem in der simulierten LCD-Ausgabe
vermutete, habe ich anstelle der LCD-Ausgabe die Ausgabe auf die serielle
Schnittstelle (SerOut,..) benutzt. Der Fehler tritt trotzdem nach 23:17 auf.
Wie schon gesagt, muss ich nach der Fehlermeldung den Simulator komplett neu
starten sonst kommt sofort wieder die Fehlermeldung. Ich hoffe, die Infos helfen
Ihnen.

mfg

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

Re: Problem im Simulator

 · 
Posted: 23.02.2017 - 17:28  ·  #5
Hallo Klaus,

ich habe dieses Testprogramm längere Zeit laufen lassen und das Problem
ist nicht aufgetreten, sorry.

rolf
KF
Benutzer
Avatar
Gender: n/a
Location: NRW
Posts: 32
Registered: 03 / 2004
Subject:

Re: Problem im Simulator

 · 
Posted: 23.02.2017 - 18:41  ·  #6
Hallo Rolf,

ich habe jetzt nochmal den Simulator gestartet, Ergebnis siehe Bildschirmfotos.

Mein System:
Windows 7 64Bit
16 GB RAM
2 Bildschirme 2560x1440
AVRCo 5.09.07
Simulator 8.6

Mfg

Klaus
Attachments
Fehlermedung 1
Filename: 2017-02-23 17_56_48- … ator.png
Filesize: 21.85 KB
Title: Fehlermedung 1
Download counter: 140
Simulator 2
Filename: 2017-02-23 18_18_06- … ator.png
Filesize: 26.05 KB
Title: Simulator 2
Download counter: 145
miparo
Administrator
Avatar
Gender:
Location: Germany
Age: 58
Posts: 959
Registered: 09 / 2007
Subject:

Re: Problem im Simulator

 · 
Posted: 24.02.2017 - 14:20  ·  #7
Jups, bei mir das gleiche Ergebnis.
Merlin
Administrator
Avatar
Gender:
Age: 24
Posts: 1409
Registered: 03 / 2005
Subject:

Re: Problem im Simulator

 · 
Posted: 24.02.2017 - 14:35  ·  #8
23 minutes and 17 seconds at 16MHz is 2235200000 clock cycles. The maximum size of a 64 bit (signed) integer is 2147483648. A coincidence? I suspect not!
  • 1
  • 2
  • 3
  • Page 1 of 3
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   141   156 · Page-Gen-Time: 0.041259s · Memory Usage: 2 MB · GZIP: on · Viewport: SMXL-HiDPI