MultipleOw

FirewingUser.MultipleOw History

Hide minor edits - Show changes to output

Added lines 1-36:
This example program shows you how to create an array of OW device structures, which can be very useful if you have more than one OW device connected to the bus.
=firewing [=
' import modules...
Imports DS18B20          ' temperature sensor module
Imports OW                ' one wire, used for search

' OW rom structure...
structure OwRomId
  romID(8) as byte
  family as byte
end structure

' program constants and variables...
const MAX_ROM = 8                  ' max number of likely Ow devices
dim owDevices(MAX_ROM) as OwRomId  ' array of rom ids
dim deviceCount as byte = 0        ' number of devices

' device found event...
Sub OnDeviceFound(command As Byte, family As Byte, ByRef romID() As Byte, ByRef abort As Boolean) Handles OW.OnSearch
  owDevices(deviceCount).romID = romID    ' save rom ID
  owDevices(deviceCount).family = family  ' save family
  deviceCount += 1                        ' next
End Sub

' main program entry point...
Sub Main() 
  OW.Search()
  Console.Write("Devices found : ",CStr(deviceCount),13,10)
  for deviceIndex as byte = 0 to deviceCount - 1
      for index as byte = 0 to ubound(Ow.RomID)
        Console.Write("&H", Hex(owDevices(deviceIndex).RomId(index),2)," ")
      next
      console.write(13,10)
  next
End Sub
=]