Zu den Tastern, ja auf den Pollin boards sind pull down wiederstände drauf und die taster schalten nach 5v.
Ja das LCD Funktioniert, hab damit schon ein paar andere anwendungen erstellt.
Ich habe nun erstmal nen programm für den Schrittmotor erstellt ohne timer.
Da funktioniert es bestens.
Code:'Programm Schrittmotor Test 01 nach verdrahtungsplan 1.0 $regfile = "m32def.dat" 'Taktfrequenz 16MHz $crystal = 16000000 'Baudrate für UART $baud = 2400 'Setzt den verfügbaren Speicher für den Frame $framesize = 32 'Setzt den verfügbaren Speicher für den Software Stack $swstack = 32 'Setzt den verfügbaren Speicher für den Hardware Stack $hwstack = 32 '************************************** '********* Variablen ********** '************************************** Declare Sub Schritte Dim Speed As Integer Dim Modus As Integer Dim A As Integer Dim I As Integer '************************************** '********* Namenszuweisung ********** '************************************** Lcd_db4 Alias Porta.4 Lcd_db5 Alias Porta.5 Lcd_db6 Alias Porta.6 Lcd_db7 Alias Porta.7 Lcd_e Alias Portb.0 Lcd_rs Alias Portb.2 Led1 Alias Portc.0 Led2 Alias Portc.1 Led3 Alias Portc.2 Led4 Alias Portc.3 Led5 Alias Portc.4 Led6 Alias Portc.5 Led7 Alias Portc.6 Led8 Alias Portc.7 Led9 Alias Portd.5 Led10 Alias Portd.6 Taste1port Alias Porta.0 Taste1 Alias Pina.0 Taste2port Alias Porta.1 Taste2 Alias Pina.1 Taste3port Alias Porta.2 Taste3 Alias Pina.2 Taste4port Alias Porta.3 Taste4 Alias Pina.3 Audio Alias Portd.7 Schrittmotorschalter1port Alias Portb.3 Schrittmotorschalter1 Alias Pinb.3 Schrittmotorschalter2port Alias Portb.1 Schrittmotorschalter2 Alias Pinb.1 Schrittmotor1 Alias Portb.4 Schrittmotor2 Alias Portd.2 Schrittmotor3 Alias Portd.3 Schrittmotor4 Alias Portd.4 '************************************** '********* LCD-Konfiguration ********** '************************************** 'LCD-Pins konfigurieren Config Lcdpin = Pin , Db4 = Lcd_db4 , Db5 = Lcd_db5 , Db6 = Lcd_db6 , Db7 = Lcd_db7 , E = Lcd_e , Rs = Lcd_rs 'LCD als 16x2 Zeichen konfigurieren Config Lcd = 16 * 2 'LCD wird im 4-Bit-Modus betrieben Config Lcdbus = 4 '************************************** '********* Port-Konfiguration ********* '************************************** 'LED-Ausgänge Config Led1 = Output Config Led2 = Output Config Led3 = Output Config Led4 = Output Config Led5 = Output Config Led6 = Output Config Led7 = Output Config Led8 = Output Config Led9 = Output Config Led10 = Output 'Tasteneingang Config Taste1port = Input Config Taste2port = Input Config Taste3port = Input Config Taste4port = Input 'Audio-Ausgang (Summer und NF Verstärker) Config Audio = Output 'Schrittmotorplatine Ein/Ausgänge Config Schrittmotor1 = Output Config Schrittmotor2 = Output Config Schrittmotor3 = Output Config Schrittmotor4 = Output Config Schrittmotorschalter1port = Input Config Schrittmotorschalter2port = Input '************************************** '******** LCD initialisieren ********** '************************************** Initlcd 'Display löschen Cls 'Anfang Eigendliches Programm Speed = 100 'Endlosschleife Do If Taste1 = 1 Then A = 8 Bitwait Taste1 , Reset End If If Taste2 = 1 Then A = 80 Bitwait Taste2 , Reset End If If Taste3 = 1 Then A = 400 Bitwait Taste3 , Reset End If If Taste4 = 1 Then Do If Modus = 0 Then Modus = 1 Exit Do End If If Modus = 1 Then Modus = 2 Exit Do End If If Modus = 2 Then Modus = 0 Exit Do End If Loop Bitwait Taste4 , Reset End If If Modus = 0 Then Speed = A End If If Modus = 1 Then Speed = A / 2 End If If Modus = 2 Then Speed = A / 4 End If Cls Locate 1 , 1 Lcd Speed Locate 2 , 1 Lcd Modus Call Schritte Loop Sub Schritte Schrittmotor1 = 1 Schrittmotor2 = 0 Schrittmotor3 = 0 Schrittmotor4 = 0 Waitms Speed Schrittmotor1 = 0 Schrittmotor2 = 0 Schrittmotor3 = 1 Schrittmotor4 = 0 Waitms Speed Schrittmotor1 = 0 Schrittmotor2 = 1 Schrittmotor3 = 0 Schrittmotor4 = 0 Waitms Speed Schrittmotor1 = 0 Schrittmotor2 = 0 Schrittmotor3 = 0 Schrittmotor4 = 1 Waitms Speed End Sub End







Zitieren

Lesezeichen