Interface ClockContainer

All Superinterfaces:
OneWireSensor
All Known Subinterfaces:
MissionContainer
All Known Implementing Classes:
OneWireContainer04, OneWireContainer21, OneWireContainer24, OneWireContainer26, OneWireContainer27, OneWireContainer41

public interface ClockContainer extends OneWireSensor

Interface class for 1-Wire® devices that contain Real-Time clocks. This class should be implemented for each Clock type 1-Wire device.

Features

  • Supports clock alarm enabling and setting on devices with clock alarms
  • Supports enabling and disabling the clock on devices that can disable their oscillators

Usage

ClockContainer extends com.dalsemi.onewire.container.OneWireSensor, so the general usage model applies to any ClockContainer:

  1. readDevice()
  2. perform operations on the ClockContainer
  3. writeDevice(byte[])

Consider this interaction with a ClockContainer that reads from the Real-Time clock, then tries to set it to the system's current clock setting before disabling the oscillator:

 
     //clockcontainer is a com.dalsemi.onewire.container.ClockContainer
     byte[] state = clockcontainer.readDevice();
     long current_time = clockcontainer.getClock(state);
     System.out.println("Current time is :"+(new Date(current_time)));

     long system_time = System.currentTimeMillis();
     clockcontainer.setClock(system_time,state);
     clockcontainer.writeDevice(state);

     //now try to disable to clock oscillator
     if (clockcontainer.canDisableClock())
     {
          state = clockcontainer.readDevice();
          clockcontainer.setClockRunEnable(false,state);
          clockcontainer.writeDevice(state);
     }

 
 
See Also:
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    Checks to see if the clock can be disabled.
    long
    getClock(byte[] state)
    Extracts the Real-Time clock value in milliseconds.
    long
    getClockAlarm(byte[] state)
    Extracts the clock alarm value for the Real-Time clock.
    long
    Gets the clock resolution in milliseconds.
    boolean
    Checks to see if the clock has an alarm feature.
    boolean
    isClockAlarmEnabled(byte[] state)
    Checks if the clock alarm is enabled.
    boolean
    isClockAlarming(byte[] state)
    Checks if the clock alarm flag has been set.
    boolean
    isClockRunning(byte[] state)
    Checks if the device's oscillator is enabled.
    void
    setClock(long time, byte[] state)
    Sets the Real-Time clock.
    void
    setClockAlarm(long time, byte[] state)
    Sets the clock alarm.
    void
    setClockAlarmEnable(boolean alarmEnable, byte[] state)
    Enables or disables the clock alarm.
    void
    setClockRunEnable(boolean runEnable, byte[] state)
    Enables or disables the oscillator, turning the clock 'on' and 'off'.

    Methods inherited from interface com.dalsemi.onewire.container.OneWireSensor

    readDevice, writeDevice