LM75 Bascom Thermometer

Gast #2056982
Lesenswert?
• ▲
▼
Hallo,

ich arbeite mit dem Temperatursensor LM75 und dem Programm Bascom.
Habe bei der Erstellung des Thermometers jedoch einige Schwierigkeiten.
Ich möchte zum Beispiel Temperaturen, die ich messe speichern. Kenne 
mich jedoch nicht sher gut mit den Befehlen aus und bräuchte etwas 
Hilfe.
Mit welchem Befehl kann man Daten speichern?
Gruß Robin
#2057138
Lesenswert?
• ▲
▼
Robin schrieb:
> Auf einem Mikrocontroller. Möchte nur später, dass mir die kleinste
> Temperatur auf einem Display angezeigt wird.
Dann brauchste nich wirklich alle Temperaturen zu speichern.
Zwei Variablen genügen:

T_min     (kleinste Temperatur)
T_aktuell (gemessene Temperatur)

Bei der ersten Messung speicherst du die gemessene Temperatur in T_min.
Danach vergleichst du jede Messung mit T_min:

Wenn T_aktuell < T_min  dann T_min=T_aktuell

Dann kannst du, wann immer es dir beliebt T_min auf dem Diplay ausgeben 
und siehst die niedrigste Temperatur des Temperaturverlaufes seit dem 
Reset des Mikrocontrollers.

Auf dein Beispiel bezogen bedeutet das:
1
'Das erste Einlesen
2
I2cstart
3
I2cwbyte 145
4
I2crbyte T_aktuell , Nack
5
I2cstop 
6

7
T_min = T_aktuell
8
Locate 1 , 1
9
Lcd T_min
10
Locate 1 , 0
11
Do
12
I2cstart
13
I2cwbyte 145
14
I2crbyte Wert , Nack
15
I2cstop
16
If  T_min > T_aktuell Then 
17
  T_min = T_aktuell
18
End if
19
Locate 1 , 1
20
Lcd T_min
21
Locate 1 , 0
22
Loop
23

24
End


Gruß Skriptkiddy
Gast #2057140
Lesenswert?
• ▲
▼
ja und den habe ich noch, um anzuzeigen, ob eine Plus-oder 
Minustemperatur vorhanden ist:
 If Wert > 200 Then Lcd "-" Else Lcd "+"
Ansonsten habe ich ja damit schon die Programmierung, die mir die 
Temperatur auf dem Display anzeigt.
Gast #2057143
Lesenswert?
• ▲
▼
ach und in den Deklarationen habe ich noch das:
Config Lcd = 16 * 2
   Config Lcdpin = Pin , Db4 = Portb.3 , Db5 = Portb.2 , Db6 = Portb.1 , 
Db7 = Portb.0 , E = Portb.4 , Rs = Portb.6
   Config Lcdbus = 4
   Initlcd
   Cls
Config Scl = Portb.5
Config Sda = Portb.7

Dim Wert As Byte
Gast #2057153
Lesenswert?
• ▲
▼
Skript Kiddy schrieb:
> Robin schrieb:
>> Auf einem Mikrocontroller. Möchte nur später, dass mir die kleinste
>> Temperatur auf einem Display angezeigt wird.
> Dann brauchste nich wirklich alle Temperaturen zu speichern.
> Zwei Variablen genügen:
>
> T_min     (kleinste Temperatur)
> T_aktuell (gemessene Temperatur)
>
> Bei der ersten Messung speicherst du die gemessene Temperatur in T_min.
> Danach vergleichst du jede Messung mit T_min:
>
> Wenn T_aktuell < T_min  dann T_min=T_aktuell
>
> Dann kannst du, wann immer es dir beliebt T_min auf dem Diplay ausgeben
> und siehst die niedrigste Temperatur des Temperaturverlaufes seit dem
> Reset des Mikrocontrollers.


Super, ich denke, dass mir das schonmal weiterhilft, werde es später mal 
ausprobieren...dankeschön
#2057258
Lesenswert?
• ▲
▼
Ein Byte ist in Bascom eine 8-Bit vorzeichenlose Ganzzahl. Das heiß Sie 
geht von 0 bis 255. Da bildet Bascom garnichts auf einen negativen 
bereich ab.

Wenn du den Betrag des negativen Wertes haben möchtest, dann mache es 
so:
1
if wert > 127 then
2
    betrag = ( 255 - wert ) + 1 'Betrag der negativen Temperatur
3
end if
Gast #2057276
Lesenswert?
• ▲
▼
Skript Kiddy schrieb:

>
> Wenn du den Betrag des negativen Wertes haben möchtest, dann mache es
> so:
> if wert > 127 then
>     betrag = ( 255 - wert ) + 1 'Betrag der negativen Temperatur
> end if

und dann muss ich noch if wert > 127 then LCD"-" else lcd "+" einfügen?
weil ich will ja richtig angezeigt haben, dass Minustemperaturen 
herrschen

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.