Hilfe bei der PWM-Schaltung für PIC16F877A

[MOD] Die Nachricht wird im Zusammenhang mit PWM anderen Beitrag für gleiche Frage gelöscht verschmelze ich mit einem anderen Posten des gleichen Thema zu lesen Regeln oder gehen Sie hier http://www.edaboard.com/ftopic382546.html [/MOD] Hallo, ich möchte bis 500 Hz Uhr mit PWM-Modul in PIC16F877A so dass ich diesen Code in mikroC schrieb, aber ich bekomme keine Ausgabe auf dem Oszilloskop erzeugen
Code:
 void main () {TRISC.f2 = 0; pwm1_init (500); pwm1_start (); PWM1_change_Duty (127); while (1) {}}
Ich bin mit 8MHz Oszillator also bitte jemand mir helfen, dies zu tun??
 
Hallo, ich habe auch dieses Problem konfrontiert früher. Ich weiß nicht, warum dies geschieht, aber wenn Sie verwenden 18F Serie PIC dieses Problem nicht auftreten. Hope this helps. Tahmid.
 
Hallo, ich habe nicht den früheren Post. Ich schätze, ich es verpasst. Überprüfen Sie dies für Tutorial: http://www.mikroe.com/en/books/picbasicbook/00.htm Für den Anschluss an LCD, unter dem Hilfe-Menü auf dem LCD-Teil aussehen. Details sind dort gegeben. Sagen Sie, wenn Sie eine Variable, die den Wert der Einschaltdauer speichert (255 für 100%, 0 für 0%, 128 für 50%) haben, ist dies in 8-Bit "Byte" oder "char"-Datenformat. Um dies zu LCD senden, müssen Sie diese Zeichenfolge zu konvertieren, um diese mit:
Code:
 dim txtDuty als Zeichenfolge [3] dim Duty-As Byte 'ED dim Duty16 hält als Wort Duty16 = (Duty * 100) >> 8 Duty = Duty16 ByteToStr (Duty, txtDuty) 'Konvertiert Byte in einen String und speichert in txtDuty LCD_Out (R, C, txtDuty)' R durch gewünschte Zeile und kein C Ersetzen durch gewünschte Spalte keine "On-LCD, ein Wert auf einer Skala von 100 wird gezeigt
Für die Initialisierung des LCD, hängt es von der Compiler-Version. Dies ist im Hilfe-Menü. Hope this helps. Tahmid.
 
Kann jemand mir helfen? Ich bekam einen Servomotor, 16F877A, 20MHz XTAL, PICC Compiler, ich habe einen Brenner für meine PIC und ich verwende C, wenn ein Programm schreiben. Ich bekam einen Topf 5k an Pin A0 und ich bin der Planung bis zur D-Port verwenden, um die Servosteuerung zu gehen links und rechts drehen, wenn ich den Pot. Das Problem ist, ich weiß nicht wie ich anfangen soll: P. ... Ich wollte unbedingt mehr über die MCU zu lernen und ich versuchte, blinkenden LEDs ein und mit Druckknöpfen vor hoffe ich, dass jemand kann mir mit kompletten Codes, Vielen Dank im Voraus helfen!
 
Hallo Tahmid .. hoffe, Sie bemerken diese Antwort, können Sie mich korrigieren, die Programmierung below.ican 't kompilieren helfen .. es ist von früher, dass ich zu variablem Tastverhältnis machen wollen .. hoffe, dass Sie helfen .. Vielen Dank im Voraus Programm 1 x var Byte TRISC.2 = 0 'CCP1 (PortC.2 = Output) PR2 = 110' Set PWM-Periode für ca. 45kHz CCPR1L = 55 'Set-PWM-Tastverhältnis von 50% =% 00001100 CCP1CON' Select PWM-Modus T2CON = % 00000100 'Timer2 = ON + 01.01 prescale Main: wenn PortA.0 = 0, dann Pause wait0 500, wenn PortA.0 = 1 dann WAIT1 Zur Hauptseite wait0: CCPR1L = 0' Reset-PWM-Tastverhältnis Ende WAIT1: CCPR1L = x + 6 'Erhöhung PWM-Tastverhältnis von 20% jeweils der Druckknopf Pressenpartie. [Size = 2] [color = # 999999] Hinzugefügt nach 7 Minuten: [/color] [/size] Ich meine, dass jedes Mal, wenn der Druckknopf drücken oder aktiv low,,, es wird das Tastverhältnis zurückgesetzt .. und wann ist der Druckknopf lösen das Tastverhältnis wird um 5 Prozent erhöhen bis zu 80% Einschaltdauer .. dann, wenn der Druckknopf drücken wieder nach 80%, wird das Tastverhältnis auf 50% zurück, und dieser Prozess wird weitergehen.
 

Welcome to EDABoard.com

Sponsor

Back
Top