pwm

kimyon013

Üye
Katılım
8 Tem 2012
Mesajlar
11
Puanları
1
Yaş
33
#include <htc.h>
void main(void) // Ana fonksiyon alanı
{
char i=100;
ADCON1=0x06; // PORTA dijital oluyor
TRISA=0x0F; // RA0 ve RA1 giris
TRISC=0x00; // PORTC çıkıs olarak ayarlanıyor
PORTA=0x00; // PORTA sıfırlanıyor
PORTC=0x00; // PORTC sıfırlanıyor
CCPR1L=0x3E; // Duty registere 250 yükleniyor
CCP1X=1; // Duty cycle 1ms periyodunda
CCP1Y=0;
T2CKPS1=1; // Prescaler 1:16 oluyor
T2CKPS0=1;
TOUTPS3=0; // Postscale 1:1 oluyor
TOUTPS2=0;
TOUTPS1=0;
TOUTPS0=0;
CCP1M0=1; // CCP1 PWM modunda
CCP1M1=1;
CCP1M2=1;
CCP1M3=1;
TMR2ON=1; // Timer 2 çalıstırılıyor
for(;
{
if(RA0) // Azalt butonuna basılmıs mı
{
while(RA0); // Butondan elin çekilmesi bekleniyor
i-=5; // PR2 birimi 5 azaltılıyor
if(i<65) // Değisken 65'ten küçükse
i=65; // Tekrar 65'e esit olsun
}
if(RA1) // Artır butonuna basılmıs mı
{
while(RA1); // Butondan elin çekilmesi bekleniyor
i+=5;
if(i>250) // Değisken 250'den bütükse
i=250; // Tekrar 250'ye esit olsun
}
if(RA2){
i=100;
}
PR2=i; // Değisken PR2'ye esitleniyor
}
}

bu kodları hex e çevirip proteusta çalıştırdığımda RA2 girişi çalışmıyor RA1 e RA0 çalışıyor ve i değerini arttırıyor sorun nerde bulamadım yardımcı olur musunz? 16f877a için kodlar
 
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için onları kabul etmelisiniz. Daha fazla bilgi edin…