DS18B20 keine negativen Werte? BASCOM

dpaessler

Neues Mitglied
06. März 2010
33
0
0
Sprachen
hallo zusammen,

ich hab hier ein kleines projekt nachgebaut. es handelt sich um einen kleinen temperatursensor, der seine daten per bluetooth an meinen router schickt.

und zwar jenes: http://mikrocontroller.heldt.eu/index.php?page=attiny25-bt-temperatur-sensor

funktioniert soweit prima. ich hab ein kleines bash-script geschrieben, welches die werte an collectd/rrdtool übergibt und damit eine grafische auswertung im browser.

letzte nacht waren minus-temperaturen. gerade eben hab ich festgestellt, dass das modul zwar weiterhin werte sendet, aber ohne vorzeichen und somit werden -1,5°C als 1,5°C angezeigt.

ich seh aber im code nirgends eine stelle, an der das vorzeichen abgeschnitten wird. irgendwie steh ich grad auf dem schlauch :confused:

hier mal der code, vielleicht kann ja einer der BASCOM-Experten mal drüberschauen:

Code:
$regfile = "ATtiny25.dat"                                   'Der ATTiny25 wird genutzt

$crystal = 8000000                                          'Interner Takt wird genutzt



$hwstack = 32

$swstack = 8

$framesize = 24



' Pins für Software UART Schnittstelle festlegen, Schnittstelle wird von BASCOM durch Software realisiert

Open "comb.1:19200,8,n,1" For Output As #1

Open "comb.0:19200,8,n,1" For Input As #2



' Pin für 1wire Schnittstelle festlegen, Schnittstelle wird von BASCOM durch Software realisiert

Config 1wire = Portb.3



'Benötigte Variablen dimensionieren

Dim Ar(9) As Byte

Dim T As Integer

Dim Btm As String * 10



'BTM-222 so einrichten das Verbindungen von jedem PC erlaubt sind

Print #1 , "ATD0"



Wait 2



'BTM-222 soll keine Echos senden

Print #1 , "ATE0"



Wait 2



'BTM-222 soll Slave sein

Print #1 , "ATR1"



Wait 2



'Hauptschleife (wird solange ausgeführt wie eine Verbindung besteht)

Do

   'Angeschlossenen DS18B20 zum Messen veranlassen

   1wreset

   1wwrite &HCC

   1wwrite &H44

   'Scratchpad einlesen (9 Byte)

   1wreset

   1wwrite &HCC

   1wwrite &HBE

   Ar(1) = 1wread(9)



   Waitms 800



   If Ar(9) = Crc8(ar(1) , 8) Then                          'Wenn Checksumme korrekt Wert weiter senden

      'In Integer wandeln

      T = Makeint(ar(1) , Ar(2))



      ' Die Nachkommastelle entfernen es reichen ganzahlige Werte

      T = T / 2



      'Wert per Software UART senden

      Print #1 , T

   End If

Loop



End


vielen dank schonmal für die mühe.
und jetzt brauch ich erstmal 'n kaffee ;)

daniel
 
ich hab hier ein kleines projekt nachgebaut.


Hallo !

Versteht mich bitte nicht falsch, aber meine Meinung ist......

Wenn du schon ein fertiges Projekt verwendest und sogar den Programmcode 1:1 benutzt, dann solltest du bei Problemen auch den Autor um Rat bzw. Hilfe bitten. :cool:


Gruß,
Cassio
 
Hallo !

Versteht mich bitte nicht falsch, aber meine Meinung ist......

Wenn du schon ein fertiges Projekt verwendest und sogar den Programmcode 1:1 benutzt, dann solltest du bei Problemen auch den Autor um Rat bzw. Hilfe bitten. :cool:


Gruß,
Cassio

hallo cassio,

da ich mich nicht blind auf fremden code verlasse, versuche, bascom zu lernen, den code im grossen und ganzen schon verstehe und einfach nur einen hinweis gesucht hab, was hier falsch ist, verstehe ich deine reaktion nicht so ganz.
ich hab hier im forum viel gelernt, nützliche tipps bekommen und mich über die schnelle und kompetente hilfe gefreut.
aber deine antwort beantwortet auch diese frage:

http://www.avr-praxis.de/forum/showthread.php?t=340

ich bin durchaus gewillt, zu lernen. ich bin halt anfänger. nur, weil ich noch nicht in der lage bin, jeden code komplett zu verstehen, heisst das nicht, dass ich mich nicht bemühe. und wenn hier im forum nur hilfe für eigene projekte geboten wird, bin ich sowieso falsch.
trotzdem danke.
 
Hi Daniel,

na, ist vielleicht falsch rübergekommen und falsch bist Du hier bestimmt nicht.
Es werden Einige User Hardware nachbauen und den fremden Code verwenden. Ist doch soweit ok, früher oder später änderst Du den Code sowieso.

Leider kann ich Dir da nicht helfen, mein 1820 schlummert immer noch in der Schublade. Hab' grad ganz andere Sachen zu tun und melde mich auch gleich wieder ab.


Grüsse,

Michael
 
Hallo Daniel!

Es ist genauso wie Grandpa es schon geschrieben hat.....

Scheinbar ist meine Aussage bei dir falsch angekommen!
Es geht dabei nicht um dich und dass du durch den Nachbau anderer Projekte etwas lernen möchtest....

Es geht eher darum, dass Herr Held diese Artikel auch offiziell verkauft!
Ergo wird er auch mit Fragen und Problemen rechnen..... die ihn per Mail oder Telefon erreichen.

Sorry, aber ich zerbrech mir nicht den Kopf für andere Leute, die dann ggf. auch noch Geld damit verdienen möchten (und wenn es auch nur 1Cent pro Bausatz ist)! ;)


Wie also oben schon erwähnt....
Frag den Autor des Programms! :cool:
Vielleicht hilft er dir ja auch bei deiner veränderten Variante..... wegen der Übertragung.


Wenn du keinen Erfolg haben solltest, dann melde dich hier ruhig nochmal!

Gruß,
Cassio
 
Hallo Daniel,
ich habe das Bascom Programm gerade mal im Simulator laufen lassen und dabei die Ausgabewerte vom Sensor simuliert (einfach Werte für Ar(1) und Ar(2) eingegeben).
Dabei werden negative Werte ebenso richtig wie positive ausgegeben.
Da das BT Modul die Daten wohl stumpf an die Auswertung im PC gibt, denke ich, dass das Problem bei dem Windows Programm liegt.
Wie Cassio schon sagte: Wende dich an den Autor.

HBA
 
Sorry, aber ich zerbrech mir nicht den Kopf für andere Leute, die dann ggf. auch noch Geld damit verdienen möchten (und wenn es auch nur 1Cent pro Bausatz ist)!

das verstehe ich durchaus. allerdings hab ich lediglich die unbestückte platine gekauft. und die (doppelseitig mit durchkontaktierungen) hätte ich weder selbst herstellen, noch preiswert fertigen lassen können.


Da das BT Modul die Daten wohl stumpf an die Auswertung im PC gibt, denke ich, dass das Problem bei dem Windows Programm liegt.
Wie Cassio schon sagte: Wende dich an den Autor.

da ich das windows-programm nicht benutze, sondern die daten an meinen wlan-router sende, auf dem linux läuft, liegt's auch nicht daran.

aber ich hab die lösung bereits gefunden :)
das problem waren einfach meine beiden referenz-geräte, beides "billige" wetterstationen mit aussensensor.
die lösung: obwohl beide negative werte gezeigt haben, war es in wirklichkeit gar nicht unter null :rolleyes:
ich hab den bluetooth-sensor dann einfach mal 'ne halbe stunde ins tiefkühlfach gelegt und siehe da: negative werte :D

trotzdem danke für eure antworten und schönen sonntag noch.

daniel
 
die lösung: obwohl beide negative werte gezeigt haben, war es in wirklichkeit gar nicht unter null :rolleyes:


Hallo Daniel!

Na, dann war die ganze Aufregung ja vergebens. ;)
Das zeigt mal wieder, dass man nicht allen Anzeigen glauben darf...... auch wenn dies bei digitalen Anzeigen oft vergessen wird.


Ich war bei deinem Nachbau aber gar nicht davon ausgegangen, dass du überhaupt etwas gekauft hattest..... nicht mal die Platine.
Er stellt ja auch alles auf der Seite bereit, um das Projekt nachbauen zu können.
Obendrein bietet er es aber auch als Kaufversion an...... und dass ist dann bei mir meistens der Punkt, an dem ich an den Autor verweise. :cool:



Bleibt nur zu hoffen, dass trotz der Fähigkeit negative Temperaturen zu übertragen es dem Frühling entgegen geht und wir bald zweistellige Plustemperaturen auf den Anzeigen sehen. ;)

Schönen Sonntag,
Cassio
 
Hi Daniel,

das problem waren einfach meine beiden referenz-geräte, beides "billige" wetterstationen mit aussensensor.
die lösung: obwohl beide negative werte gezeigt haben, war es in wirklichkeit gar nicht unter null :rolleyes:
ich hab den bluetooth-sensor dann einfach mal 'ne halbe stunde ins tiefkühlfach gelegt und siehe da: negative werte :D
ich hab hier auch mehrere Wetterstationen stehen. Die hab ich mir damals aus
nem OBI-Ramschangebot geholt weil jede nur einen Außen-Sensor hatte. Ich
wollte aber mehrere Hausseiten mit Außentemperatur messen (Sonnen/Süd-Seite,
Westseite, Ostseite) und von den Basisstationen zeigt eine auch ne Innentemperatur
an die total nach dem Mond geht. Ich glaube auch so um die 4-6°C daneben.
Die Luftfeuchtigkeit der 3 Geräte ist auch einwenig unterschiedlich.

Die 4te die ich mir jetzt mal gegönnt habe (mit Außensensor für Windrichtung
und geschwindigkeit, Außenluftfeuchte, ...) ist relativ genau. Mit der kann
man was anfangen oder sie wenigstens halbwegs als Referenz verwenden.

... Zu dem Programmcode ... Es ist schon recht schwierig sich in fremde
Programme reinzudenken und Fehler zu finden. Wenn es sich jedoch noch
zusätzlich um ein fremdes Programm handelt mit dem jemand Geld verdient
dann sinkt die Motivation sich damit zu befassen doch recht schnell. Dann
kommt schnell mal der Hinweis das man den damit "quälen" soll der das
verzapft hat ;) Das ist dann eigentlich nie (oder sehr selten) direkt gegen
den Fragenden gerichtet sondern eher ein Anfall von "keine Lust" ;) sich
damit Arbeit an den Hals zu holen.

Gruß
Dino
 
... Zu dem Programmcode ... Es ist schon recht schwierig sich in fremde
Programme reinzudenken und Fehler zu finden. Wenn es sich jedoch noch
zusätzlich um ein fremdes Programm handelt mit dem jemand Geld verdient
dann sinkt die Motivation sich damit zu befassen doch recht schnell. Dann
kommt schnell mal der Hinweis das man den damit "quälen" soll der das
verzapft hat ;) Das ist dann eigentlich nie (oder sehr selten) direkt gegen
den Fragenden gerichtet sondern eher ein Anfall von "keine Lust" ;) sich
damit Arbeit an den Hals zu holen.

wie gesagt, ich versteh das prinzipiell. aber fakt ist, dass er eben nicht an diesem "programm" verdient. deswegen hatte ich auch explizit die auf die projekt-seite verlinkt und nicht auf den shop.

ich will den herrn auch nicht verteidigen. aber er bietet sowohl den schaltplan als auch den quellcode kostenlos als download an.
und dass man zusätzlich die möglichkeit hat, sowohl die platine einzeln als auch einen fertigen bausatz zu kaufen, finde ich ziemlich gut. ich würde mir das, ehrlich gesagt, öfter wünschen. es gib so viele tolle projekte, die es lohnt, nachzubauen. man muss ja nicht immer das rad neu erfinden.
das "basteln" an sich bleibt, man erspart sich aber zum beispiel das rumpanschen beim selberätzen.
und dass der herr etwas dran verdient, finde ich dann auch legitim. schliesslich bietet er "waren" an.
hier im avr-praxis shop wird ja an den verkauften teilen auch verdient und die dienen ja letztendlich auch nur dazu, projekte zu verwirklichen, die man möglicherweise hier im forum findet. wo ist da der unterschied? :)

und damit schluss, das soll ja hier nicht in eine grundsatzdiskussion ausarten ;)
 
Hi,

und damit schluss, das soll ja hier nicht in eine grundsatzdiskussion ausarten ;)
genau ... und Ende und aus ... ;)

Aber sag mal ... was hast du denn da für nen Router genommen mit dem du
das Ding über Bluetooth gekoppelt hast ? Würde mich schon interessieren.
Vor allem weil ich so im Moment keinen Router mit Bluetooth kenne. Nur mit
WLAN, UMTS und so ...

Gruß
Dino
 
Hi,


genau ... und Ende und aus ... ;)

Aber sag mal ... was hast du denn da für nen Router genommen mit dem du
das Ding über Bluetooth gekoppelt hast ? Würde mich schon interessieren.
Vor allem weil ich so im Moment keinen Router mit Bluetooth kenne. Nur mit
WLAN, UMTS und so ...

Gruß
Dino

der router hat nativ kein bluetooth. aber er hat usb und daran hängt ein usb-switch, an dem wiederum neben einer festplatte, einer webcam (und bald einem usb-servo, mit dem ich die cam drehen kann), einfach ein bluetooth-dongle hängt. auf dem router läuft openwrt :D
ach ja...eigentlich sind es zwei router, die beide per wlan verbunden sind, also ein grösseres wlan-netz bilden. also noch genug reserven für weitere spielereien :)
 

Ü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)