Das Open-Control-Projekt - Die Alternative zur C-Control-I


Das Forum zur C-Control-1
Welche C-Control-Varianten existieren?
Übersicht - Suchen - Neueste 50 Beiträge - Neuer Beitrag - Login - Registrieren
INFO - FAQ - CC2-Forum - CCPro-Forum 

 Re: mehrere DS18S20 auslesen Kategorie: C-Control I V1.2/2.0 (von alexpro - 15.08.2005 22:18)
 Als Antwort auf mehrere DS18S20 auslesen von alexpro - 10.08.2005 22:56
alexpro nutzt:  CC1-Station V2.0
Hallo,

habe es geschaft mehrere Senoren (DS18S20) mit Hilfe der Beispielprogramme auszulesen und auf dem LCD anzuzeigen. Jetzt geht es darum mit den Werten etwas anzufangen z.B. Rel schalten ab einer gewissen Temp. habe das auch schon geschaft jedoch nur mit einem Temp.Wert. Wie kann ich die Werte weiter verarbeiten.

Hier habe ich mal das Programm das soweit auch mal tut.

'--------------------------
'------ I/O PORTS ---------
'--------------------------
define LIGHT        port[16]
define SDA          as port[9]
define SCL          as port[10]
'--------------------------
'---- SYSTEM MEMORY -------
'--------------------------
define TEMP         as byte
define TEMP1        as byte
'define TEMPHI       as byte
'define TEMPLO       as byte
define EXTPORT      as byteport[4]
define REL1         as port[29]
define REL2         as port[30]
define REL3         as port[31]
define REL4         as port[32]
'-----------------------------------------------------
#INIT
LIGHT=off
LCD.INIT
LCD.OFF
SDA=on
SCL=on
EXTPORT=OFF
'----------------------------------------------------
import "d:\programme\basicpp\LIB\DS2482_GENERIC.BAS"
import "d:\programme\basicpp\LIB\DS1820_GENERIC.BAS"
'----------------------------------------------------
'-----------------------------------------------------
DS2482RESET()
DS2482WIRERESET()
'-------------------------------------------------------------
'-----            1 Sensor                 ---
'-------------------------------------------------------------
#LOOP
pause 5
DS2482SPUON()
MATCHROM(16,194,49,195,0,8,0,132)
CONVERT()
MATCHROM(16,194,49,195,0,8,0,132)
TEMP=DS1820GET_TEMP()
if temp < 50 then
    rel1=on
    else
    rel1=off
    rel2=on
end if
LCD.INIT switchonly
LCD.POS 1,1
LCD.PRINT "T1:" & TEMP/2 & "." & (TEMP and 1)*5 & " "
LCD.OFF
goto LOOP1
'-------------------------------------------------------------
'-----            2 Sensor                 ---
'-------------------------------------------------------------
#LOOP1
pause 5
DS2482SPUON()
MATCHROM(16,130,16,198,0,8,0,69)
CONVERT()
MATCHROM(16,130,16,198,0,8,0,69)
TEMP1=DS1820GET_TEMP()
LCD.INIT switchonly
LCD.POS 1,9
LCD.PRINT "T2:" & TEMP1/2 & "." & (TEMP1 and 1)*5 & " "
LCD.OFF
goto LOOP



 Antwort schreiben

Bisherige Antworten: