Database-Based-Driver: Difference between revisions

From *** My Personal Wiki ***
Jump to navigation Jump to search
No edit summary
No edit summary
Line 2: Line 2:




Public Sub Write_Set_Value(Address As Byte, SetTemperature As Integer)
  Public Sub Write_Set_Value(Address As Byte, SetTemperature As Integer)
   Dim X() As Long
   Dim X() As Long
   Dim ArraySize As Integer
   Dim ArraySize As Integer
Line 24: Line 24:
    
    
   WriteTwoBytes Address, 0, 0, TemperatureHighByte, TemperatureLowByte
   WriteTwoBytes Address, 0, 0, TemperatureHighByte, TemperatureLowByte
End Sub
  End Sub
Write  
Write  




* X(1) = Address: X(2) = 16: X(3) = RegisterHigh: X(4) = RegisterLow: X(5) = 0: X(6) = 2: X(7) = 4: X(8) = DataHigh: X(9) = DataLow: X(10) = 0: X(11) = 0
* X(1) = Address: X(2) = 16: X(3) = RegisterHigh: X(4) = RegisterLow: X(5) = 0: X(6) = 2: X(7) = 4: X(8) = DataHigh: X(9) = DataLow: X(10) = 0: X(11) = 0

Revision as of 13:17, 17 June 2010

  • User SQL to make flexible driver that can be loaded


 Public Sub Write_Set_Value(Address As Byte, SetTemperature As Integer)
  Dim X() As Long
  Dim ArraySize As Integer
  Dim TemperatureHighByte As Integer
  Dim TemperatureLowByte As Integer
  Dim TemperatureRegister As Integer
  Dim AlreadySetTemperature As Integer
  If DebugFlagNot = True Then On Error Resume Next

  TemperatureRegister = SetTemperature                             '--Controller already set to this temperature > exit
  AlreadySetTemperature = Read_Set_Value(Address)
  If SetTemperature = AlreadySetTemperature Then Exit Sub
  If TemperatureRegister < 0 Then
     TemperatureRegister = 2 ^ 15 + TemperatureRegister
     TemperatureHighByte = HiByte(CLng(TemperatureRegister)) + 128
     TemperatureLowByte = LoByte(CLng(TemperatureRegister))
  Else
     TemperatureHighByte = HiByte(CLng(TemperatureRegister))
     TemperatureLowByte = LoByte(CLng(TemperatureRegister))
  End If
 
  WriteTwoBytes Address, 0, 0, TemperatureHighByte, TemperatureLowByte
 End Sub

Write


  • X(1) = Address: X(2) = 16: X(3) = RegisterHigh: X(4) = RegisterLow: X(5) = 0: X(6) = 2: X(7) = 4: X(8) = DataHigh: X(9) = DataLow: X(10) = 0: X(11) = 0