Hallo Leute!
Habe ein Problem mit meinem Programm!
zur nächst mal zum eigentlichen Projekt:
Es soll eine Spulenwickelmaschine mittel 2 Schrittmotoren gebaut werden. Es soll eine Eingabe mittels Taster erfolgen für z.B. Hand-Modus und die einzelnen Spulenprogramme. Die Hardware steht soweit jetzt hab ich nur noch das Problem das ich a) die Taster nicht vernünftig ausgewertet bekomme b) Nicht das gewünschte auf dem LCD Display angezeigt bekomme c) der 2. Motor total heiß wird und jetzt zuguter letzt der ATMEGA32 garnicht mehr erkannt wird.
hier mal das Programm:
Vielleicht hat jemand ja auch ne idee das ganze ganz anders zu realisieren.Code:'---------------- Deklaration des Mikrokontrollers ------------ $regfile = "M32def.dat" $framesize = 32 $swstack = 32 $hwstack = 64 $crystal = 1600000 Cursor Off Noblink Declare Sub Keypressed Declare Sub Enable1 Declare Sub Enable2 Declare Sub Rechts Declare Sub Links Declare Sub Ok Declare Sub Dreh1 Declare Sub Prog1 '-------------------------------------------------------------- '---------------- Deklaration der Aus und Eingänge ------------ Ddrb = &B00110011 Portb = &B11001100 Ddrc = &B00000000 Portc = &B11111111 Ddrd = &B00110011 Portd = &B11001100 '----------------- Deklaration der Motor Variablen ------------ Motor1_clock Alias Portb.0 'Deklaration des Ausganges PortB.0 als Motor1_clock Motor1_cw Alias Portb.1 'Deklaration des Ausganges PortB.1 als Motor1_cw Motor1_enable Alias Portb.5 'Deklaration des Ausganges PortB.6 als Motor1_enable Motor2_clock Alias Portd.0 'Deklaration des Ausganges PortD.0 als Motor2_clock Motor2_cw Alias Portd.1 'Deklaration des Ausganges PortD.1 als Motor2_cw Motor2_enable Alias Portd.5 'Deklaration des Ausganges PortD.6 als Motor2_enable '-------------------------------------------------------------- Dim A As Word Dim I As Word Dim X As Word Dim Z As Word '-------------------------------------------------------------- '-------------------- Hauptprogramm ------------------------- Cls Locate 1 , 5 Lcd "NBSS TEC" Locate 2 , 2 Lcd "Spulenmaschine" Main: Do 'Debounce Pinc.1 , 0 , Enable1 , Sub Debounce Pinc.0 , 0 , Links , Sub Debounce Pinc.2 , 0 , Rechts , Sub 'Debounce Pinc.3 , 0 , Ok , Sub 'Debounce Pinc.4 , 0 , Prog2 , Sub Debounce Pinc.5 , 0 , Prog1 , Sub 'Debounce Pinc.7 , 0 , Prog3 , Sub Loop Sub Enable1: Do Loop Goto Main End Sub Sub Links: Cls Locate 1 , 5 Lcd "NBSS TEC" Locate 2 , 3 Lcd "Hand - Modus" Portb.5 = 1 Do If Pinc.0 = 0 Then Portb.0 = 1 Waitus 800 Portb.0 = 0 End If Loop Goto Main End Sub Sub Rechts: Cls Locate 1 , 5 Lcd "NBSS TEC" Locate 2 , 3 Lcd "Hand - Modus" Do If Pinc.2 = 0 Then Portb.0 = 1 Waitus 800 Portb.0 = 0 End If Loop Goto Main End Sub Sub Prog1: Do If Pinc.5 = 0 Then Gosub Enable1 End If If I = 7400 Then Gosub Dreh1 End If If I = 7400 Then Incr A End If If A = 4 Then Gosub Enable2 End If If Z = 74000 Then Gosub Enable2 End If Incr I Incr Z Portb.0 = 1 Waitus 800 Portb.0 = 0 Portd.0 = 1 Waitus 800 Portd.0 = 0 Loop End Sub Sub Dreh1: Do Toggle Portb.1 I = 0 'waitms 80 Goto Prog1 Loop End Sub Sub Enable2: Do Toggle Motor1_enable Toggle Motor2_enable Loop End Sub End
Ich hoffe es kann mir jemand helfen!!
VIELEN VIELEN DANK IM VORRAUS!!
Gruß Jan







Zitieren

Lesezeichen