Hallo,
ich hab ein Problem mit dem Simulator. Der Pfeil hängt in der ersten Zeile
und ich dachte immer er ist abgestürzt. Die Registerwerte ändern sich aber
ständig. Ich hab dan mal gewartet und irgendwann ging es weiter, die
Cyklenzahl stand dann auf über 4 Millionen.
Das ist das Programm:
Alles anzeigen
Bei einigen anderen Programmen funktioniert es, ich kann da kein System erkennen.
Am verwendeten Controller liegt es nicht, ich kann da auch den Mega8 eintragen,
es ändert sich nichts.
Was kann das sein?
Gruß Ralf
ich hab ein Problem mit dem Simulator. Der Pfeil hängt in der ersten Zeile
und ich dachte immer er ist abgestürzt. Die Registerwerte ändern sich aber
ständig. Ich hab dan mal gewartet und irgendwann ging es weiter, die
Cyklenzahl stand dann auf über 4 Millionen.
Das ist das Programm:
Quellcode
- $regfile = "m2560def.dat" ' specify the used micro
- $crystal = 16000000 ' used crystal frequency
- $baud = 19200
- $hwstack = 64 ' default use 32 for the hardware stack
- $swstack = 20 ' default use 10 for the SW stack
- $framesize = 80 ' default use 40 for the frame space
- Config Portc.0 = Output 'Takt
- Config Portc.1 = Output 'Richtung
- Config Portc.2 = Output 'Freigabe 0= Motor freigegeben
- Config Portc.3 = Output 'Reset 0= Controller wird zurückgesetzt
- Config Portc.4 = Input 'Fehler 0= Schleppfehler
- Set Portc.2 'Motor gesperrt
- Reset Portc.3 'Controller wird zurückgesetzt
- Waitms 100
- Set Portc.3 'Controller freigegeben
- 'Config Lcdpin = Pin , Db4 = Portg.5 , Db5 = Porte.3 , Db6 = Porth.3 , Db7 = Porth.4 , E = Porth.6 , Rs = Porth.5
- 'Config Lcd = 16 * 2 'configure lcd screen
- 'Cls
- Dim Z As Long , Z2 As Integer
- Dim Word1 As Word , Word2 As Word , Word3 As Long
- 'Locate 1 , 6 : Lcd "R"
- 'Word1 = Getadc(0) 'AD Wandler auslesen
- 'Word2 = Getadc(1)
- 'Word3 = Getadc(2)
- Word1 = 25
- Word2 = 5000
- Word3 = 1000
- Word3 = Word3 * 55
- Reset Portc.2 'Motor freigegeben
- Do
- Set Portc.1 'Richtung
- For Z = 0 To Word3
- Reset Portc.0 'Takt
- Waitus 10
- Set Portc.0
- For Z2 = 0 To Word1
- Waitus 1
- Next Z2
- Next Z
- Waitms Word2
- Locate 1 , 6 : Lcd "R"
- Reset Portc.1
- For Z = 0 To Word3
- Reset Portc.0
- Waitus 10
- Set Portc.0
- For Z2 = 0 To Word1
- Waitus 1
- Next Z2
- Next Z
- Waitms Word2
- Locate 1 , 6 : Lcd "L"
- Loop
Am verwendeten Controller liegt es nicht, ich kann da auch den Mega8 eintragen,
es ändert sich nichts.
Was kann das sein?
Gruß Ralf