Elektroda.pl
Elektroda.pl
X

Search our partners

Find the latest content on electronic components. Datasheets.com
Elektroda.pl
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

[Bascom] Sprzętowe generowanie częstotliwości. Jaka metoda?

parafka 17 Feb 2019 20:05 333 3
  • #1
    parafka
    Level 20  
    W jednym z moich prostych układów wykorzystuję wew. zegar RC i dla spokoju ducha chciałbym tak na starcie skalibrować zegar na znamionowe 8Mhz.
    Wiem, że stabilność RC jest żadna ale warto przynajmniej zacząć z właściwym zegarem

    Dodatkowym programem chciałbym wygenerować częstotliwość aby miernikiem zmierzyć rzeczywistą wartość, którą doprowadzę do znamionowej za pomocą OSCCAL i tą poprawkę dodam później do właściwego programu.

    Która z metod otrzymania F=15,625kHz jest lepsza:
    Code:
    Config Timer1 = Pwm , Prescale = 1 , Pwm = 8 , Compare B Pwm = Clear Down, Compare A Pwm=Clear up
    
    PWM1a=120

    czy
    Code:
    Config Timer0=Timer, Prescale=1
    
    On Timer0 Migaj
    Start Timer0
    Enable Timer0
    Enable Interrupts

    Do
    Loop
    End

    Migaj:
    Toggle LED
    Return


    Mierzona częstotliwość wyjścia PWM jest ok 80Hz większa -Metoda PWM lepsza?
  • #4
    ZbeeGin
    Level 39  
    parafka wrote:
    Która z metod otrzymania F=15,625kHz jest lepsza:

    Tak naprawdę to żadna z powyższych. Jak już chcesz sprzętowo generować przebieg to wykorzystaj licznik w trybie CTC a nie PWM.

    Code:
    Config Timer1 = Timer , Prescale = 1 | 8 | 64 | 256 | 1024 , Compare A = Toggle , Compare B No_Ouput = Disconnect , Clear Timer = 1


    Oraz dobierz odpowiednią wartość w zmiennej Compare1A w zależności od ustawień preskalera, by uzyskać docelową częstotliwość.