Página 1 de 1

modulo PWM PIC 16F877

MensagemEnviado: 18 Jan 2010 21:45
por ddspereira
Boa noite.
sou iniciante em programação Pic estou com duvida como usar PWM do PIC se a linha de codio
Código: Selecionar todos
// microcontroller : P16F877A
// PWM module is set on RC2 Pin No 17.

unsigned short i=0;

void main() {
PORTC = 0; // Set PORTC to $FF
TRISC = 0; // PORTC is output
while(1){
PWM1_Init(5000); // Initialize PWM module
PWM1_Start();
 PWM1_Set_Duty(i);


delay_ms(10);

}
}


O codigo tá funcionando, so que não consigo ajustar o Cicle Duty
no exemplo do compilador fala que varia de 0 a 255, quando eu cologo 0
e rodo o codigo no Proteus tinha que fica em 0, e quando coloco 255 não fica todo aberto o ciclo, tem algum outro macete que devo fazer??

Obrigado!

Diogo Pereira

MensagemEnviado: 19 Jan 2010 07:54
por fabim
Código: Selecionar todos
unsigned short i;

void main() {
PORTC = 0; // Set PORTC to $FF
TRISC = 0; // PORTC is output
PWM1_Init(5000); // 5KHZ
PWM1_Start(); //LIGA PWM

while(1){

 for(1=0;i<255;I++){
 PWM1_Set_Duty(i);
 delay_ms(50);
 }
 
 for(1=255;i>0;I--){
 PWM1_Set_Duty(i);
 delay_ms(50);
 }


}
}


TOEMMMMMMMMMM TIUMMMMMMMMM TOEMMMMMMMMMMM rsrsrs

MensagemEnviado: 19 Jan 2010 08:46
por ddspereira
em fabim me ajuda ae onde tá o erro!!

MensagemEnviado: 19 Jan 2010 08:50
por fabim
ddspereira escreveu:em fabim me ajuda ae onde tá o erro!!


você testou esse aí que eu coloquei ?

Intão..

MensagemEnviado: 19 Jan 2010 12:22
por ddspereira
Fabim fiz o teste e não funcionou, estou simulando via proteus

MensagemEnviado: 19 Jan 2010 12:35
por ze
não funcionou porque o I++ do fabIn tá maiusculo
que tal
while(1)
{
while(i)
{
PWM1_Set_Duty(++i);
delay_ms(50);
}

while(i)
{
PWM1_Set_Duty(--i);
delay_ms(50);
}
}

MensagemEnviado: 19 Jan 2010 12:39
por fabim
só o I que esta maiusculo ?

MensagemEnviado: 19 Jan 2010 12:39
por ddspereira
eu corrigi, ali 1=0 ou i=0???

MensagemEnviado: 19 Jan 2010 12:40
por fabim
ddspereira escreveu:eu corrigi, ali 1=0 ou i=0???


o que você acha ?

Fabim

MensagemEnviado: 19 Jan 2010 12:46
por ddspereira
eu acho que é i=0, corrigi conforme vcs falaram, compila tudo certo, mais quado vou simular no proteus não dá certo, não acontece nada

MensagemEnviado: 19 Jan 2010 13:20
por ze
pu** que pariu viu....!
ahhhhhh lembrei.... 2º um amigo tem mosca nesta bosta.
http://www.forumnow.com.br/vip/mensagen ... 60&nrpag=1

confere aê...

abç