Make sure you change your code toI used the swordfish DS18S20 library...
Code: Select all
Include "DS18B20.bas"
Moderators: David Barker, Jerry Messina
Make sure you change your code toI used the swordfish DS18S20 library...
Code: Select all
Include "DS18B20.bas"
Not at the moment.CharlieM wrote:Do you have some other hardware you can test this on?
Code: Select all
Device = 18F452
Clock = 40
Config OSC = HSPLL
#option GLCD_MODEL = S1D13700
#option GLCD_MODE = 8080 // GLCD interface mode - 6800 or 8080
#option GLCD_DATA = PORTD // data port
#option GLCD_RD = PORTE.2 // RD pin - 8080 mode
#option GLCD_WR = PORTE.1 // WR pin - 8080 mode
#option GLCD_A0 = PORTE.0 // A0 pin
#option GLCD_CS = PORTC.4 // chip select
#option GLCD_RES = PORTC.5 // reset pin
#option ow_pin = PORTB.0
Include "GLCD.bas"
Include "DS18B20.BAS"
Include "convert.bas"
Include "Utils.bas"
Include "FixedFont.bas"
Dim pos1 As Byte
Const Sensor_A(8) As Byte = ($28, $5F, $A9, $CD, $01, $00, $00, $DB)
Const Sensor_B(8) As Byte = ($28, $DC, $9C, $CD, $01, $00, $00, $3E)
Sub DisplaySensor(ByRefConst pID() As Byte)
Dim TempA As ShortInt
Dim TempB As Word
RomID = pID
Convert
GetTemp(TempA, TempB)
WriteAt(20, pos1, DecToStr(TempA),".",DecToStr(TempB,1),"C")
End Sub
// program start...
High(PORTC.2)
High(PORTB.4)
GLCD.SetFont(Fixed)
Cls(1)
While true
pos1 = 100
DisplaySensor(Sensor_A)
pos1 = 120
DisplaySensor(Sensor_B)
DelayMS(1000)
Wend
Code: Select all
Device = 18F452
Clock = 40
Config OSC = HSPLL
#option GLCD_MODEL = S1D13700
#option GLCD_MODE = 8080 // GLCD interface mode - 6800 or 8080
#option GLCD_DATA = PORTD // data port
#option GLCD_EN = PORTE.2 // EN pin - 6800 mode
#option GLCD_RD = PORTE.2 // RD pin - 8080 mode
#option GLCD_RW = PORTB.1 // RW pin - 6800 mode
#option GLCD_WR = PORTE.1 // WR pin - 8080 mode
#option GLCD_A0 = PORTE.0 // A0 pin
#option GLCD_CS = PORTC.4 // chip select
#option GLCD_RES = PORTC.5 // reset pin
#option ow_pin = PORTB.0
// import modules...
Include "tahoma.bas"
Include "GLCD.bas"
Include "DS18s20.bas"
Include "convert.bas"
Dim pos1 As Byte
Const Sensor_A(8) As Byte = ($10, $E7, $E7, $9E, $01, $08, $00, $F5)
Const Sensor_B(8) As Byte = ($10, $88, $9A, $9E, $01, $08, $00, $93)
Sub DisplaySensor(ByRefConst pID() As Byte)
Dim TempA As ShortInt
Dim TempB As Byte
RomID = pID
Convert
GetTemp(TempA, TempB)
WriteAt(20, pos1, DecToStr(TempA),".",DecToStr(TempB,1),"C")
End Sub
// program start...
High(PORTC.2)
High(PORTB.4)
GLCD.SetFont(tahoma)
Cls(1)
While true
pos1 = 100
DisplaySensor(Sensor_A)
pos1 = 120
DisplaySensor(Sensor_B)
Wend
Code: Select all
DS18B20.Convert()
High(PORTC.1)
DelayMS(750)
Low(PORTC.1)
DS18B20.GetTemp(TempA, TempB)