Bascom DS1820 ID Auslesen

Lutze53

Neues Mitglied
26. Sep. 2011
83
0
0
Sprachen
Hallöchen,

nachdem ich mein LCD endlich fertiggestellt habe und die ersten Tests erfolgreich liefen, wollte ich endlich weiter machen und die Temperatur auf mein LCD zauber :)
Aber wie das ja so immer ist wird man immer schnell ausgebremst :(

habe erstmal im Netz geschaut nach einen Code, weil ich erstmal nur schauen wollte ob der DS1820 auch funktioniert, nur leider komme ich hier einfach nicht weiter
ich bekomme ständig nur "000000000000000" auf dem Display angezeigt. Also iwie wird das Teil nicht gefunden und ich finde einfach den Fehler nicht.
Habe auch schon einen anderen genommen und neu verlötet, aber auch hier kein Erfolg :(

hier mal der Code den ich genommen habe:

Code:
$regfile = "m32def.dat"
$crystal = 8000000
$hwstack = 40
$swstack = 16
$framesize = 32


Config Lcdpin = Pin , Db4 = Portb.4 , Db5 = Portb.5 , Db6 = Portb.6 , Db7 = Portb.7 , E = Portb.0 , Rs = Portb.1
Config Lcd = 16 * 2
Config 1wire = Porta.1


Dim Dsid(8) As Byte
Dim I As Byte
Dim Nr As Byte

Nr = 1
Cls

' Ersten angeschlossenen DS1820 finden und Adresse auslesen
Dsid(1) = 1wsearchfirst()

Locate 1 , 1 : Lcd "DS1820 Nr " ; Nr : Nr = Nr + 1
Locate 2 , 1
For I = 1 To 8
 Lcd Hex(dsid(i))
Next

' 10 Sekunden warten
Wait 15

Do
 ' Nächsten DS1820 suchen
 Dsid(1) = 1wsearchnext()
 ' Wenn kein Fehler, dann ausgeben
 If Err = 0 Then
  Locate 1 , 1 : Lcd "DS1820 Nr " ; Nr : Nr = Nr + 1
  Locate 2 , 1
  For I = 1 To 8
   Lcd Hex(dsid(i))
  Next
  Wait 15
 End If
Loop Until Err = 1


Do
 Waitms 100
Loop

End
 
Hallo Lutze53!

Beim schnellen Drübersehen ist mir in Sachen 1-Wire nichts aufgefallen, was nicht funktionieren könnte. :hmmmm:
Eigentlich sollte es schon so funktionieren, wie du es mit 1wsearchfirst() und 1wsearchnext() angegeben hast.

Vielleicht solltest du einfach mal die Sensoren am BUS zählen lassen?
Code:
Dim 1wcount As Byte

1wcount = 1wirecount()
Locate x , y
Lcd 1wcount

Wenn dann schon die Meldung "0" kommt, liegt das Problem wohl eher Hardwareseitig. :wink:


Grüße,
Cassio
 
ah ok mit den Count hätte ich auch mal probieren können, aber er zeigt auf LCD 0 an also findet er ihn schonmal nicht, was mich eigentlich wundert. habe schon ein zweiten verlötet und anderen Port genommen aber scheinbar habe ich da iwie was falsch verdrahtet mh

habe hier mal ein Bild von der Leitung

ds1820.jpg
 
Ha vertrau eben nicht das Datasheet von Maxim habe jetzt mal den DS1820 genau anderst herum reingesteckt und siehe da die ID wird ausgelesen. das soll einer verstehen
 
Hallo,

Ha vertrau eben nicht das Datasheet von Maxim habe jetzt mal den DS1820 genau anderst herum reingesteckt und siehe da die ID wird ausgelesen. das soll einer verstehen

also das Datenblatt paßt schon. Ich hab auch nach dem Datenblatt gearbeitet und es läuft problemlos. Das was meißtens Probleme bereitet ist das 3D-Denken bei SOT-92 Gehäuse damit man die richtigen Pins erwischt.

DS18S20-Pinout.png

Das obere Bild zeigt das Gehäuse wenn man auf die abgeflachte Seite blickt. Das untere Bild zeigt das Gehäuse von unten. Also auf die Seite gesehen wo die Drähte rauskommen.

Es kommt auf jeden Fall ein 4,7k Ohm an Datenleitung. Bei der Phantomspeisung wird Pin 1+3 (GND und Vdd) verbunden. Bei eigener Versorgung kommt an Vdd +5V dran und an GND natürlich GND.

Gruß
Dino
 
ja klar ich trottel sollte nochmal englisch lernen :) dachte bottom wäre immer oben, das ist ja der Boden, man sollte weniger trinken bei den Feiertagen :)

so ok da ich das ja nun hinbekommen habe danke Euch :)

wollte ich erstmal die ID auf das Terminal anzeigen lassen, komischerweise kommen da nur 00.

ID_Search.png
 
Hallo Lutze !

Nun ja, dass der Simulator immer "00" ausgibt ist ja auch in Ordnung.....
Schließlich wird ja auch kein 1Wire-Sensor am PORTA.1 simuliert sondern nur der Programmablauf!!!

Tja und der funktioniert doch. :wink:


Grüße,
Cassio
 
achso dachte das kann man da sich anzeigen lassen, wollte das für ein Bild haben
 
Hi,

Nun ja, dass der Simulator immer "00" ausgibt ist ja auch in Ordnung.....
Schließlich wird ja auch kein 1Wire-Sensor am PORTA.1 simuliert sondern nur der Programmablauf!!!
Au man ... :p :rolleyes: :flute:
Immer dieser sch.... Simulator. :banghead:
Software kann nicht wirklich die Hardware eines realen Aufbaus ersetzen.
Leute baut das Ding doch einfach mal auf, nehmt den Lötkolben in die Hand und dann mal weitersehen.
Schnitzel braten simuliert man doch auch nicht vorher im Computer.
Fehler suchen geht mit nem LCD oder ner seriellen Schnittstelle meiner Meinung nach wesentlich besser.

Gruß
Dino
 
Hallo Lutze!

Natürlich kannst du dir das anzeigen lassen!
Allerdings musst du dann eine Verbindung vom AVR zu einem Terminalprogramm haben...... und nicht das Programm im Simulator laufen lassen. :wink:

Du kannst natürlich das Terminalprogramm in BASCOM verwenden.....
ich persönlich rate dir aber zu HTerm (müsste es hier im Forum auch einen LINK zum Downlad geben)!

Grüße,
Cassio
 
ach armer dino03 :)

ja hterm kenn ich habe ich hier auch rumliegen, ok also mal schaun wie ich das anbinde :)

aso geht ja nicht habe nur dongle usb-r232 und den brauch ich zum brennen, hab noch den avr isp mk2 rumliegen aber der läuft unter bascom iwie nicht :(
 
hab noch den avr isp mk2 rumliegen aber der läuft unter bascom iwie nicht :(


Hallo Lutze!

Hast du Win7 64bit oder warum läuft der AVRISP mkII bei dir nicht?

Meistens liegt es daran, dass die LIBUSB nicht installiert ist.
Musst mal hier im Forum nach dem Begriff AVRISP suchen..... irgendwo gibt es einen Bericht von Dino03 und mir dazu.

Wenn du allerdings deinen AVR programmiert hast, dann kannst du den doch entfernen und den USB-RS232 Wandler für die serielle Übertragung nutzen. Fertig. :)

Grüße,
Cassio
 
aso geht ja nicht habe nur dongle usb-r232 und den brauch ich zum brennen, hab noch den avr isp mk2 rumliegen aber der läuft unter bascom iwie nicht :(
was hast du denn für nen System ? WinXP, Win7, ... 32Bit/64Bit ?

Für WinXP 32Bit hab ich diese Lib für USB installiert ...
Anhang anzeigen libusb-win32-filter-bin-0.1.12.1.zip
Die Projektseite ist hier ...
sourceforge.net - libusb-win32

Für 64Bit gibt es nach meiner Info auch eine Bibliothek.

Also zuerst AVR-Studio installieren wegen dem Jungo-Treiber (wohl schon erledigt)
Dann Bascom installieren (wohl auch schon erledigt)
Danach die USB-Lib installieren.
Einstellungen in Bascom ...
Bascom-AVRISPmk2-USBlib.png
Die COM-Einstellung (COM6) ist dabei nebensächlich.

Gruß
Dino
 
ja den Beitrag von euch beiden über isp/mk2 habe ich gelesen, aber ich habe win 7 64bit und da war ich mir nicht so sicher mit dem installieren, wegen Systemabschuss und eine lib für 64 bit habe ich nicht gefunden.


so das Programm gefällt mir langsam :)

habs jetzt mal mit Putty ausprobiert, geht echt gut

2011-12-26 22-52-10_COM4 - PuTTY.png
 
Hallo Lutze!

Hier mal der Inhalt der README.txt aus der LIBUSB-win32.....
libusb-win32-bin v1.2.4.0 (04/08/2011) - [Package Information]

ALL ARCHITECTURES:
x86\libusb0_x86.dll: x86 32-bit library. Must be renamed to libusb0.dll
On 64 bit, Installs to Windows\syswow64\libusb0.dll.
On 32 bit, Installs to Windows\system32\libusb0.dll.

x86\inf-wizard.exe: inf-wizard application with embedded libusb-win32
v1.2.4.0 binaries.

X86 ONLY ARCHITECTURES:
x86\libusb0.sys: x86 32-bit driver.
Installs to Windows\system32\drivers\libusb0.sys

AMD64-INTEL64 ONLY ARCHITECTURES:
amd64\libusb0.sys: x64 64-bit driver.
Installs to Windows\system32\drivers\libusb0.sys

amd64\libusb0.dll: x64 64-bit library.
Installs to Windows\system32\libusb0.dll

IA64 ONLY ARCHITECTURES:
ia64\libusb0.sys: IA64 64-bit driver.
Installs to Windows\system32\drivers\libusb0.sys

ia64\libusb0.dll: IA64 64-bit library.
Installs to Windows\system32\libusb0.dll

Eigentlich sollte es unter Win7 64bit auch funktionieren, aber damit habe ich persönlich keine Erfahrung.
Vielleicht hat ein anderer User damit Erfahrung und kann dir ggf. einen Tipp dazu geben.


Grüße,
Cassio
 
oki thx hat geklappt der mk2 läuft jetzt auch bei Bascom, aber bei AVR Studio nicht mehr da kommt ne Fehlermeldung mit Clock oder so
 
Hi,

nen neue USB-ID hast du aber für den AVRISPmk2 nicht angelegt oder ?
Ich hab bei mir beim EeePC nämlich damals das falsche Programm der USBlib verwendet. Mit dem konnte man ne neue .INF für den AVRISPmk2 anlegen. Damit war er dann für den Jungo-Driver tot und das AVR-Studio hat ihn nicht mehr gefunden. Ich hab ihn auch nicht mehr wiederbeleben können. Selbst mit Deinstallieren/Installieren von AVR-Studio. Es war so tief in Win verankert das es eigentlich auf ne Neuinstallation rausläuft. Wiederherstellungspunkt hab ich allerdings damals nicht probiert da der Lappi sowieso ne Neuinstallation benötigt.

Gruß
Dino
 
ja genau so ist das bei mir auch gelaufen, hab es erst zu spät gesehen hätte die Filterinstallation machen sollen das sollte das gehen, naja erstmal nicht so schlimm kann ja noch mit den r232 brennen, ist erstmal nicht so schlimm :)
 
ja genau so ist das bei mir auch gelaufen, hab es erst zu spät gesehen hätte die Filterinstallation machen sollen das sollte das gehen, naja erstmal nicht so schlimm kann ja noch mit den r232 brennen, ist erstmal nicht so schlimm :)
dann können wir uns wohl die Hand reichen ;-) zwei Leidensgenossen ...
 
so nach dem ich die Nacht nicht schlafen konnte, wegen diesem Problem habe ich heute nochmal versucht den Filtertreiber zu installieren :)
Und ich musste festellen, dass es leichter war als erwartet :).
Man wähle im Gerätemanger den AVR MK2 LIBUSB Hardware aus und geht auf Treiber aktualisieren, bei dem Fenster wählt man "Auf dem Computer nach Treibersoftware suchen" danach das untere Menü auswählen "Aus einer Liste von Gerätetreibern auf dem Computer auswählen", wenn man das System nicht verfriemmelt hat sollten da zwei Treiber erscheinen, der Jungo-Treiber und der LIBUSB-Treiber. Hier den Jungotreiber auswählen und installieren und schon ist er wieder unter Jungo zu finden.
Jetzt kann man auch den LIBUSB-Filter-Treiber installieren und den MK2 aus der Liste auswählen, wenn er am PC eingesteckt ist.
Wichtig hierbei bei Vista/Win7 die Installationsdatei mit dem Kompatibilitätsmodus XP/Servicepack 2 auswählen und danach mit Adminrechten installieren und schon geht der MK2 in AVR Studio und in Bascom :)
 

Über uns

  • Makerconnect ist ein Forum, welches wir ausschließlich für einen Gedankenaustausch und als Diskussionsplattform für Interessierte bereitstellen, welche sich privat, durch das Studium oder beruflich mit Mikrocontroller- und Kleinstrechnersystemen beschäftigen wollen oder müssen ;-)
  • Dirk
  • Du bist noch kein Mitglied in unserer freundlichen Community? Werde Teil von uns und registriere dich in unserem Forum.
  •  Registriere dich

User Menu

 Kaffeezeit

  • Wir arbeiten hart daran sicherzustellen, dass unser Forum permanent online und schnell erreichbar ist, unsere Forensoftware auf dem aktuellsten Stand ist und der Server regelmäßig gewartet wird. Auch die Themen Datensicherheit und Datenschutz sind uns wichtig und hier sind wir auch ständig aktiv. Alles in allem, sorgen wir uns darum, dass alles Drumherum stimmt :-)

    Dir gefällt das Forum und unsere Arbeit und du möchtest uns unterstützen? Unterstütze uns durch deine Premium-Mitgliedschaft!
    Wir freuen uns auch über eine Spende für unsere Kaffeekasse :-)
    Vielen Dank! :ciao:


     Spende uns! (Paypal)