S
systemchaos
Guest
Io sono un principiante e sto lavorando sul codice di programmazione per il controllo AC servomotore tramite PWM.I'm using PIC16F877A perché ha 2 pin PCC che posso usare per generare PWM con 20MHz osc.Da allora ho un problema di pochi a fare il servo di girare in senso orario, in senso antiorario e la fermata di scrivere il codice del programma.Il problema più probabilmente sono di fronte è il modo di impostare il valore del timer.
Secondo il foglio PIC16F877A, si forniscono un'equazione che è
periodo di PWM = [PR2 1] * 4 * Tosc * [TMR2 valore prescale]In base all'equazione di ciò che è 'periodo di PWM', 'PR2' e 'TMR2 valore prescale'?
Ho trovato il codice di programmazione ac su Internet, dove l'uso di un'equazione
PWM periodo = (1/clock) * 4 * * t2div (periodo 1)
Credo che questa equazione potrebbe essere lo stesso come l'equazione fornita dal foglio.Dai suoi calcoli, egli usa 1 MHz OSC per trovare il periodo in cui il periodo deve essere un valore a 8 bit a causa del fatto che l'utilizzo di un PIC a 8-bit che divisore 0-255.Poi si usa periodo PWM = 10 ms, e t2div = 16 in quanto la t2div può avere tre valori possibili 1, 4, o 16).Finalmente ottenere il periodo = 155 (nella gamma di 0-255).
Dal momento che ho usato OSC = 20MHz e il periodo di PWM = 20 ms, ho il periodo = 6.249 che è troppo grande.Ora io non so cosa fare.Ho provato a cercare la soluzione attraverso internet, ma ancora non farlo.
<img src="http://www.edaboard.com/images/smiles/icon_cry.gif" alt="Piangi o Molto Triste" border="0" />Quindi, qual è la soluzione possibile che io debba fare questo fatto?Timer che dovrei usare, è TMR0, tmr1 o TMR 2?e come trovare il valore di PWM per fermare, CW e CCW servomotori?
Il problema successivo è quando sto usando impulso sorgente IDE (boostc).Come definire e impostare il pin PCC e il timer?Avrei dovuto usare C2C-plus?E come scrivere la programmazione in C?
Mi auguro che chiunque può guidare me e io sono veramente apprezzare che per quanto riguarda ..
systemchaos
Secondo il foglio PIC16F877A, si forniscono un'equazione che è
periodo di PWM = [PR2 1] * 4 * Tosc * [TMR2 valore prescale]In base all'equazione di ciò che è 'periodo di PWM', 'PR2' e 'TMR2 valore prescale'?
Ho trovato il codice di programmazione ac su Internet, dove l'uso di un'equazione
PWM periodo = (1/clock) * 4 * * t2div (periodo 1)
Credo che questa equazione potrebbe essere lo stesso come l'equazione fornita dal foglio.Dai suoi calcoli, egli usa 1 MHz OSC per trovare il periodo in cui il periodo deve essere un valore a 8 bit a causa del fatto che l'utilizzo di un PIC a 8-bit che divisore 0-255.Poi si usa periodo PWM = 10 ms, e t2div = 16 in quanto la t2div può avere tre valori possibili 1, 4, o 16).Finalmente ottenere il periodo = 155 (nella gamma di 0-255).
Dal momento che ho usato OSC = 20MHz e il periodo di PWM = 20 ms, ho il periodo = 6.249 che è troppo grande.Ora io non so cosa fare.Ho provato a cercare la soluzione attraverso internet, ma ancora non farlo.
<img src="http://www.edaboard.com/images/smiles/icon_cry.gif" alt="Piangi o Molto Triste" border="0" />Quindi, qual è la soluzione possibile che io debba fare questo fatto?Timer che dovrei usare, è TMR0, tmr1 o TMR 2?e come trovare il valore di PWM per fermare, CW e CCW servomotori?
Il problema successivo è quando sto usando impulso sorgente IDE (boostc).Come definire e impostare il pin PCC e il timer?Avrei dovuto usare C2C-plus?E come scrivere la programmazione in C?
Mi auguro che chiunque può guidare me e io sono veramente apprezzare che per quanto riguarda ..
systemchaos