logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Jak zredukować szumy ADC w Atmega8 w Bascomie dla ADC1 i ADC2?

wojtekr 16 Kwi 2007 20:54 2599 3
REKLAMA
  • #1 3793251
    wojtekr
    Poziom 15  
    Posty: 183
    Pomógł: 1
    Ocena: 1
    Witam, nie bardzo moge znaleźc jak można w bascomie zrobić

    IDLE noise reduction mode for ADC

    używam ADC1 i ADC2

    dzięki za pomoc
  • REKLAMA
  • #2 3795423
    Baca
    Poziom 14  
    Posty: 65
    Pomógł: 2
    Ocena: 2
    nie wiem jak to jest w bascomie ale generalnie musisz wlaczyc przerwanie od adc oczywscie wlaczyc przerwania globalne i ustawic odpowiednio rejestr TIMSK pozniej skonfigurowac odpowiednio adc jak dziala np free runing mode i przelaczyc procesr w tryb sleep jak adc bedzie mial wynik ustawi flage przetwania co "obudzi" procek musisz juz tylko odcztac rejestr z wynikiem adc
  • REKLAMA
  • #3 3796640
    wojtekr
    Poziom 15  
    Posty: 183
    Pomógł: 1
    Ocena: 1
    Niestety sprawa rozbija się o składnie bascom'a ale dzieki
  • #4 3796716
    zumek
    Poziom 39  
    Posty: 3352
    Pomógł: 695
    Ocena: 52
    wojtekr napisał:
    Niestety sprawa rozbija się o składnie bascom'a ale dzieki

    A co , w Bascomie nie można zapisać danych bezpośrednio do rejestru :?:
    Po konfiguracji ADC i przerwań usypiamy proca w trybie ADC Noise Reduction
    
    Mcucr = Mcucr And &H0F   ' na wszelki wypadek ;) zerujemy 4 najstarsze bity
    Mcucr = Mcucr Or &H90     'ustawiamy bit SE i SM0
    sleep       'instrukcja assemblera
    

    W przerwaniu od ADC odczytujesz rejestry ADC "przestawiasz" MUX i ponownie lulu ;)
    Proponuję ustawić ADC na pojedynczy pomiar , który zostanie uruchomiony w momencie uśpienia delikwenta :D
    Piotrek
REKLAMA