Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Odczyt tabletek dallasa - jak się ustrzec przed błędem?

11 Lis 2003 01:05 1104 4
  • Poziom 14  
    Mam taki podprogram:

    Code:

    Sub Odczyt

       1wreset
       Waitms 50
       1wreset

       If Err = 0 Then
          Waitms 50
          1wreset
          If Err = 1 Then
             Return
          End If
          1wwrite &H33

          For I = 1 To 8
             Klucz(i) = 1wread():
          Next I
          Odczyt_poprawny = 1

       End If



    End Sub


    Czasem błednie zostaje odczytana taka pastylka. Nie wiem czemu ale kod wydaje mi sie poprawny. Być moze szybkie przykładanie tabletki do czytnika nie zapewnia dobrego styku... macie moze jakies sposoby na zabazpieczenie się przed błędem? Aha czasem nie wiedzieć czemu program wariuje gdy pare razy naraz odczytam tabletke. Wtedy uP sam sie resetuje albo idzie do cześci programu w którym sam bez ingerencji użytkownika nie mógł się znaleźć. Dodam że zaraz po odczycie jest sprawdzane czy taki klucz znajduje sie w wewnętrznej pamieci flash (90S8535)
  • Poziom 28  
    sprawdz czy podales wartosc zegara jak nalezy
    czasy odgrywaja wazna role

    zawsze dobrze odczytac pare razy, i wprzypadku jakiejs niezgodnosci powtarzac operacje
  • Poziom 14  
    czasy ok... kwarc 8MHz

    jeszcze podprogram odczytujący z flasha

    Code:

    Sub Odczyt_klucza

       For X = 1 To 50

       Adr_klucza = 10 * X

       For I = 1 To 8
          Readeeprom Temp_klucz(i) , Adr_klucza

          If Temp_klucz(i) = Klucz(i) Then
           Klucz_poprawny = 1
          Else
           Klucz_poprawny = 0
           Exit For
          End If

          Incr Adr_klucza
       Next I


       If Klucz_poprawny = 1 Then
        Return
       End If

       Next X


    End Sub
  • Poziom 30  
    Najlepiej bylo by dorobic obliczanie sumy kontrolnej 7 bajtow. 8 bajt z pastylki zawiera wlasnie taka sume wiec trzeba by ja porownac do obliczonej. Zerknij do PDF'a tam jest wszystko opisane. A w bascom avr chyba procedura crc8 albo cos - juz niepamietam. Kiedys zbudowalem sobie immobiliser z tymi pastylkami i niechcacy zablokowalem uklad(lockbit). Dwa dni pozniej padl mi dysk w kompie i pewnie wiecie juz co dalej.
  • Poziom 14  
    Wielkie dzięki!!! crc8 działa 8)