-
        

Ergebnis 1 bis 7 von 7

Thema: Grundlagen 1wire Bus

  1. #1
    Benutzer Stammmitglied
    Registriert seit
    03.03.2006
    Ort
    München
    Beiträge
    32

    Grundlagen 1wire Bus

    Anzeige

    Hallo
    Ich hab lange rumgetan um den 1wireBus zu benutzen und bin dann durch SourceCodeKlau weitergekommen.
    Meine Frage ist - der Unterschied zwischen z.B 1wread(9) und 1wread().
    Wird bei 1wread alles ausgelesen und bei 1wread nur 9 bit?
    Ich bhab die Syntax nicht verstanden. Wer weiss darüber was???
    Danke
    Günther

  2. #2
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    16.02.2006
    Beiträge
    1.112
    Nicht ganz.
    1wread liest 1 BYTE, 1wread(9) also 9 BYTE.

    Gruß Rolf

  3. #3
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    01.03.2006
    Beiträge
    138
    An was bist du denn gerade dran an einem ds1820 oder so.
    ich habe vor ein paar wochen angefangen so einen auszulesen.

    mfg

  4. #4
    Benutzer Stammmitglied
    Registriert seit
    03.03.2006
    Ort
    München
    Beiträge
    32
    @Rolf
    Danke. Eigentlich logisch
    @AVRboy
    Ich hab mir mit dem 8535 eine DCF77 Uhr gebaut und will da hinein auch meine Heizungsregelung bringen.
    Jetzt hab ich beim Auslesen der DS1822 manchmal falsche Temperaturwerte.Die Hilfe vom Bascom sagt :
    The devices are equipped with a CRC-generator - the LSByte of the sending is always a checksum.
    Diese CRC will ich noch nutzen, kann sie aber nicht finden (

  5. #5
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    16.02.2006
    Beiträge
    1.112
    Hallo,
    CRC steht im letzten (9.) Byte.
    Hier im Forum sind auch schon diverse Code für den ds1820 geposted, such mal nach crc im Bascom-Forum.
    Bei Maxim findest du im Datenblatt des Sensors auch eine Spezifikation.

    Gruß Rolf

  6. #6
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    01.03.2006
    Beiträge
    138
    hi,

    wenn du deinem ds1822 das commando 33h wie im datenblatt schickst (geht nur wenn nur ein 1wire am bus ist) schickst sendet er dir als erstes seine seinen familycode (8bit lang) dann seine serialnumber (48 bit lang) und zuletzt die crc (8Bit lang) das kann man ungefähr so auslesen

    1wreset

    1wwrite Read_rom

    Family_code = 1wread()
    For I = 1 To 6
    Serial_number(i) = 1wread()
    Next
    Crc = 1wread()
    If Family_code <> Ds1820 Then

    .....................

    vielleicht hilfts ja.

    mfg

  7. #7
    Benutzer Stammmitglied
    Registriert seit
    03.03.2006
    Ort
    München
    Beiträge
    32
    @AVRboy
    Danke für die Hilfe
    Ich werd´s sobald ich dazu komme versuchen.
    Gruß
    Günther

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •