Haberler:

Forum kuralları güncellendi LÜTFEN  okuyunuz:  https://bit.ly/2IjR3ME

Ana Menü

PIC16F877A min. PWM frekansı

Başlatan oongit, 05 Kasım 2010, 22:26:24

oongit

Merhaba...

PIC16F877A ve 20 MHz. kristal kullanılarak, neden 100 Hz.'lik (%50 Duty) kare dalga üretilemiyor? CCS C ile PIC Programlama kitabında okumuştum... Minimum 240 Hz. civarında bir PWM frekansı üretilebiliyormuş. Bunun sebebi nedir acaba? Yani neden 100 Hz.'lik bir kare dalga üretilemiyor?

Teşekkürler...

OG

Datasheet de pwm hesabına bakarsanız görülecektir.

Xtal frequency Lowest useable Pwm frequency
4MHz 145Hz
8MHz 489Hz
10MHz 611Hz
12MHz 733Hz
16MHz 977Hz
20MHz 1221Hz
24MHz 1465Hz
33MHz 2015Hz
FORUMU İLGİLENDİREN KONULARA ÖM İLE CEVAP VERİLMEZ.

oongit

Verdiğiniz değerler, üretilebilecek minimum PWM değerleri midir?

X-Fi

timer1 clcok frekansını dışardan verirseniz istediğiniz hıda üretebilirsiniz. 18F de olduğu gibi 16F de bu özelliği destekliyordu sanırım.
http://www.coskunergan.dev/    (Yürümekle varılmaz, lakin varanlar yürüyenlerdir.)

oongit

4 MHz.'lik kristal OSC1 ve OSC2 pinlerine bağlandığına göre; T1 Clock frekansının zaten dışarıdan verilmiş olduğu anlamına gelmiyor mu?

OG

Gelmiyor, harici bir osilatör ile üretip Clkin PIN13 den giriş yapılır.
FORUMU İLGİLENDİREN KONULARA ÖM İLE CEVAP VERİLMEZ.

justice_for_all

arkadasim 20 MHzde minimum 1.22 kHz uretebiliyosun..

PWM Period = [(PR2) + 1] • 4 • TOSC • (TMR2 Prescale Value)

burdaki formulden hesaplayabilirsin..

PR2 max 255

TMR2 Prescale ise max 16 verebilirsin...

Deneyip de başaramayanları değil, yalnızca denemeye bile kalkışmayanları yargıla.   Gökhan Arslanbay

muhittin_kaplan


X-Fi

T1OSI(RC1) ,T1OSO(RC2) pinleri aynı zamanda timer 1 clcok girişidir ayrı bir kristal veya rc devre ile düşük frekanslı clock uygulayarak istediğiniz yapılabilir.
http://www.coskunergan.dev/    (Yürümekle varılmaz, lakin varanlar yürüyenlerdir.)

oongit

Yardımcı olmaya çalıştığınız için teşekkür ederim arkadaşlar...

CLKIN girişinde mecburen kristal takılı olacağı için, o pine dışarıdan ekstra bir osilatör eklemek olmaz sanırım... Hem dışarıdan devre ekledikten sonra, PWM kodu yazmaktansa 555'li bir devre ile bunu halledebilirim...

Tekrar teşekkürler arkadaşlar...  :(

X-Fi

OG hocam dalgın bu aralar söylemek istediğini yanlış anlattı sanırım orası zaten cpu clock girişidir. :)

saygılar.
http://www.coskunergan.dev/    (Yürümekle varılmaz, lakin varanlar yürüyenlerdir.)

muhittin_kaplan

bu extra osc 15 ve 16 pinlere bağlanıyor sanırım.

justice_for_all

eger hiz onemli diilsen bence 4 Mhz kristal takip tum sorunlarini halledersin arkadasim....

Deneyip de başaramayanları değil, yalnızca denemeye bile kalkışmayanları yargıla.   Gökhan Arslanbay

oongit

100Hz. %50 Duty Cycle PWM sinyali için, OSC1/OSC2 ya da CCP1/CCP2 olsun; bu pinlere dışarıdan bir clock sinyali uygulamak bana mantıksız geldi açıkçası... Yoksa biz bu MCU'ları neden kullanıyoruz ki? 555'li bir devre kurar onunla üretmeye çalışırım olur biter... Ne yapalım? Bu sinyali MCU kullanarak üretebilmek nasip değilmiş demek ki...  :(

Tekrar teşekkür ederim arkadaşlar...

oongit

Ya da 1kHz. PWM üretip, bunu bir frekans bölücü ile 10'a bölsem? Acaba olur mu?  ::)