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

[mega8][bascom]Dziwaczny błąd-ADC_MUX entry not found in Dat

Ture11 10 Cze 2009 23:02 2591 2
REKLAMA
  • #1 6640931
    Ture11
    Poziom 39  
    Witam.
    Napisałem program który ma za zadanie mierzenie napięcia, obrotów i temperatury (nie będę ukrywał - komputerek do motoru). Z takim problemem spotkałem się pierwszy raz - ADC_MUX entry not found in dat file (błąd 0). Błąd ten nie występował w wersji bascoma 1.11.7.4, natomiast w 1.11.9.1 owszem. Czemu się takowy pojawił? Ma to związek z dodaniem pomiaru napięcia na ADC.

    
    
    
    $crystal = 1000000
    Dim Wynik As Long
    $regfile "m8def.dat"
    'Deflcdchar 1 , 14 , 17 , 17 , 14 , 32 , 32 , 32 , 32
    'Deflcdchar 2 , 4 , 4 , 6 , 4 , 4 , 4 , 14 , 14
    'Deflcdchar 3 , 31 , 31 , 6 , 10 , 12 , 14 , 31 , 31
    'Deflcdchar 4 , 31 , 27 , 18 , 11 , 10 , 19 , 26 , 31
    'Deflcdchar 5 , 31 , 31 , 27 , 23 , 32 , 23 , 27 , 31
    'Deflcdchar 6 , 31 , 31 , 27 , 29 , 32 , 29 , 27 , 31
    'Deflcdchar 7 , 32 , 32 , 4 , 14 , 10 , 10 , 10 , 14
    
    
    
    
    Config Timer1 = Counter , Edge = Rising
    Config 1wire = Portb.0
    Config Adc = Single , Prescaler = Auto , Reference = Avcc
    Dim Odczyt(2) As Byte , Licznik As Byte , T As Integer , T1 As Single , Napis As String * 5
    
    Cls
    Dim Wart_ac As Word
    Dim V As Single
    Dim Wart_nap As String * 3
    Start Adc
    Cursor Off
    Do
      1wreset
      1wwrite &HCC
      1wwrite &H44
    
      Timer1 = 0
       Start Timer1
       Wait 1
      Stop Timer1
    Wynik = Timer1 * 60
    Wart_ac = Getadc(4)
    
    V = Wart_ac * 0.014259
    Wart_nap = Fusing(v , "#.&")
    
    Cls : Locate 1 , 1 : Lcd "P: " ; Wynik : Locate 1 , 8 : Lcd " rpm"
      1wreset
      1wwrite &HCC
      1wwrite &HBE
      Odczyt(1) = 1wread(2)
      T = Odczyt(2)
      Shift T , Left , 8
      T = T + Odczyt(1)
    
      T1 = T * 0.0625
    
    Napis = Fusing(t1 , "#.#")
      Locate 2 , 1 : Cursor Off : Lcd Chr(2) ; ": " ; Napis ; Chr(1) ; "C"
      Locate 2 , 11 : Lcd Chr(7) ; Wart_nap ; "V"
    
     '
    Loop : End
    

    Tak na marginesie, to proszę się nie przejmować bałaganem, o dziwo jakoś chodziło(by gdyby nie ten błąd).
    Potrzebuje skompilować program w nowszej wersjii, ponieważ w starej było 2x mniejszy dozwolony rozmiar programu dla demo.

    Za pomoc byłbym naprawdę bardzo wdzięczny, za wskazanie innych błędów także.
  • REKLAMA
  • #3 6642573
    Ture11
    Poziom 39  
    Dziękuje, bardzo mi pomogłeś, programik się skompilował.
REKLAMA