hallo, ich habe ein Code geschrieben, der ein LED mit PWM steuert, aber ich möchte die Duty Cycle während der Programm umschalten wie kann ich das? #include <P16F88.inc> LED equ 0 LED1 equ 1 Wait1 equ 0x25 Wait2 equ 0x26 RB0 equ 0 ergebnisl equ 0x21 ergebnish equ 0x22 org 0x0000 ERRORLEVEL -302 ; __CONFIG _CONFIG1, _PWRTE_ON & _WDT_OFF & _CCP1_RB0 ; init bsf STATUS, RP0 movlw b'1110110' movwf OSCCON bcf STATUS, RP0 ; Vorteiler 16:1 und Timer2 einschalten movlw b'01' movwf T2CKPS1 ; Vorteiler 16:1 BSF T2CON,TMR2ON ; Timer2 ein ; Frequenz auf 8 kHz einstellen BSF STATUS,RP0 ; Bank1 MOVLW D'200' MOVWF PR2 ; 2,5 kHz BCF STATUS,RP0 ; Bank1 ; Tastverhältnis auf 50% einstellen MOVLW D'2' MOVWF CCPR1L ; 50% von 124 ; RC2/CCP1 auf Ausgang stellen BSF STATUS,RP0 ; Bank1 BCF TRISB, 0 ; RC2: output=0 BCF STATUS,RP0 ; Bank 0 ; PWM MODE mit CCP1 initialisieren CLRF CCP1CON ; CCP1-Modus aus BSF CCP1CON,CCP1M3 ; CCP1-Modus PWM-Mode BSF CCP1CON,CCP1M2 loop1 GOTO loop1
das Problem ist, wenn ich den Register CCPR1L ändern, ändert die Geschwindigkeit von der Schrittmotor nicht!
Warum sollte der Schrittmotor langsamer werden? Die Frequenz bleibt ja gleich. Und vor allem: Wie wurde jetzt aus einer LED ein Schrittmotor?
ich habe verschiedene Werte für CCPR1l für die LED genommen, die helligkeit hat sich verändert. ich möchte jetzt die geschwindigkeit von eine Schrittmotor steuren. ich habe verstanden, dass wenn Duty Cycle größer wird dann läuft der Motor schneller, ist das nicht wie beim LED????
Hi >ich möchte jetzt die geschwindigkeit von eine Schrittmotor steuren. >ich habe verstanden, dass wenn Duty Cycle größer wird dann läuft der >Motor schneller, ist das nicht wie beim LED???? Nein! Ein Schrittmotor wird über die Frequenz gesteuert. MfG Spess
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.