Hallo ich habe Mir ein Programm zur Ansteuerung eines Schrittmotors geschrieben... für die L297/298.... Fogende Portbelegung habe ich gewählt: PWM = PD5 ( CLOCK) PC0 = Reset PC1 = Half/Full PC2 = CW/CCW PC3 = Enable PC4 = Control Das Programm sieht wie folgt aus: #include <avr/io.h> #include <util/delay.h> int main(void) { // Port C 0-3 als Ausgänge definieren DDRC = 0XFF; DDRD = 0xFF; // Timer intialisieren DDRD = 0x30; // PD4 und PD5 als Ausgangfreigeben TCCR1B = 0x0D; // Prescaler auf 1024 TCCR1A = 0x83; OCR1A = (1024*197)/100; // Tastgrad festlegen PD4 OCR1B = (1024*197)/100; // Tastgrad festlegen PD5 //PORTC = 0x1F; //PORTD = 0xFF; while(1) { // Motortreiber ansteuern PORTC = 0x1C; } } Leider habe ich das Problem das mein Motor nur ganz leicht dreht wenn ich das PWM auf Masse ziehe ( eine Brücke lege) was mir natürlich schon sehr merkwürdig vorkommt... das zweite ist wenn er dreht und ich berühre das gehäuse bleibt er sofort stehen. Kann mir diese Phänomen nicht erklären vielleicht könnt ihr mir Helfen woran das liegen könnte bzw. auch Mängel am Programm zu beseitigen... Danke für die Mühen...
da_Rula schrieb: > Hallo ich habe Mir ein Programm zur Ansteuerung eines Schrittmotors > geschrieben... für die L297/298.... > > Fogende Portbelegung habe ich gewählt: > > PWM = PD5 ( CLOCK) > > PC0 = Reset > PC1 = Half/Full > PC2 = CW/CCW > PC3 = Enable > PC4 = Control Und Masse hast du auch verbunden?
habe alles so verbunden wie im schaltplan üblich also 0sc mit dem spannungsteiler etc... oder welche masse ist gemeint?
da_Rula schrieb: > habe alles so verbunden wie im schaltplan üblich also 0sc mit dem > spannungsteiler etc... oder welche masse ist gemeint? GND vom AVR und GND vom L297/298
da_Rula schrieb: > Ich verwende den Atmega 16 und habe eine Vref von 0,9V und 1Ohm an Sense Mega16 und PORTC: Das JTAG hast du per Fuse abgeschaltet?
> das zweite ist wenn er dreht und ich berühre > das gehäuse bleibt er sofort stehen. Dann würde ich nochmal alles auf Wackelkontakte prüfen. Ansonsten würde ich an deiner Stelle mal alles ohne PWM machen. Du kannst ja beliebig langsam takten :-) D.h. alle Ausgangsleitungen auf definierte statische Pegel und erst mal mit einem Voltmeter nachmessen. Und dann erst mal laaaaaaaaangsam und gemütlich takten lassen. 1 Clockpuls pro Sekunde oder noch langsamer reicht fürs erste, damit man sieht ob der Motor Schritte macht.
Bin jetzt Soweit das der MOtor fest steht wenn ich ihn an Saft lege zieht er den vollen halte Strom aber mit drehen ist nix mehr
Ich denke, es ist Zeit, dass du mal ein wenig Hardware zeigst. Schaltplan und/oder Aufbauphoto. AUs Beschreibungen kann man vieles nicht erraten
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.