1-Wire® library for mbed. Complete 1-Wire library that supports our silicon masters along with a bit-bang master on the MAX32600MBED platform with one common interface for mbed. Slave support has also been included and more slaves will be added as time permits.

Dependents:   MAXREFDES131_Qt_Demo MAX32630FTHR_iButton_uSD_Logger MAX32630FTHR_DS18B20_uSD_Logger MAXREFDES130_131_Demo ... more

Superseded by MaximInterface.

Revision:
24:8942d8478d68
Parent:
23:e8e403d61359
Child:
26:a361e3f42ba5
diff -r e8e403d61359 -r 8942d8478d68 OneWire_Masters/OneWireMaster.h
--- a/OneWire_Masters/OneWireMaster.h	Mon Mar 21 23:18:45 2016 +0000
+++ b/OneWire_Masters/OneWireMaster.h	Tue Mar 22 14:24:53 2016 -0500
@@ -41,18 +41,7 @@
 
 class OneWireMaster
 {
-    public:
-    
-    enum OW_ROM_CMD
-    {
-        READ_ROM = 0x33,
-        MATCH_ROM = 0x55,
-        SEARCH_ROM = 0xF0,
-        SKIP_ROM = 0xCC,
-        RESUME = 0xA5,
-        OVERDRIVE_SKIP = 0x3C,
-        OVERDRIVE_MATCH = 0x69
-    };
+public:
     
     enum OW_SPEED
     {
@@ -291,8 +280,7 @@
     virtual CmdResult OWReadBitPower(uint8_t applyPowerResponse) = 0;
     
     
-    virtual CmdResult OWReadBytePower(uint8_t & recvbyte) = 0; 
-    //{ return OperationFailure; }
+    virtual CmdResult OWReadBytePower(uint8_t & recvbyte) = 0;
 
     
     //Part of OneWireInterface that should only be implemented once
@@ -311,7 +299,7 @@
     *
     * @return CmdResult - zero on success, non-zero on failure
     **************************************************************/
-    virtual CmdResult OWWriteBit(uint8_t sendbit);
+    CmdResult OWWriteBit(uint8_t sendbit);
     
     
     /**********************************************************//**
@@ -326,7 +314,7 @@
     *
     * @return CmdResult - zero on success, non-zero on failure
     **************************************************************/
-    virtual CmdResult OWReadBit(uint8_t & recvbit);
+    CmdResult OWReadBit(uint8_t & recvbit);
     
     
     /**********************************************************//**
@@ -378,7 +366,7 @@
     *
     * @return CmdResult - zero on success, non-zero on failure
     **************************************************************/
-    virtual CmdResult OWFirst(RomId & romId);
+    CmdResult OWFirst(RomId & romId);
     
     
     /**********************************************************//**
@@ -392,7 +380,7 @@
     *
     * @return CmdResult - zero on success, non-zero on failure
     **************************************************************/
-    virtual CmdResult OWNext(RomId & romId);
+    CmdResult OWNext(RomId & romId);
     
     
     /**********************************************************//**
@@ -407,7 +395,7 @@
     *
     * @return CmdResult - zero on success, non-zero on failure
     **************************************************************/
-    virtual CmdResult OWVerify(const RomId & romId);
+    CmdResult OWVerify(const RomId & romId);
     
     
     /**********************************************************//**
@@ -423,7 +411,7 @@
     *
     * @return 
     **************************************************************/
-    virtual void OWTargetSetup(RomId & romId);
+    void OWTargetSetup(RomId & romId);
     
     
     /**********************************************************//**
@@ -438,7 +426,7 @@
     *
     * @return 
     **************************************************************/
-    virtual void OWFamilySkipSetup(void);
+    void OWFamilySkipSetup(void);
     
     
     /**********************************************************//**
@@ -454,7 +442,7 @@
     *
     * @return CmdResult - zero on success, non-zero on failure
     **************************************************************/
-    virtual CmdResult OWReadROM(RomId & romId);
+    CmdResult OWReadROM(RomId & romId);
     
     
     /**********************************************************//**
@@ -468,7 +456,7 @@
     *
     * @return CmdResult - zero on success, non-zero on failure
     **************************************************************/
-    virtual CmdResult OWSkipROM(void);
+    CmdResult OWSkipROM(void);
     
     
     /**********************************************************//**
@@ -483,7 +471,7 @@
     *
     * @return CmdResult - zero on success, non-zero on failure
     **************************************************************/
-    virtual CmdResult OWMatchROM(const RomId & romId);
+    CmdResult OWMatchROM(const RomId & romId);
     
     
     /**********************************************************//**
@@ -498,7 +486,7 @@
     *
     * @return CmdResult - zero on success, non-zero on failure
     **************************************************************/
-    virtual CmdResult OWOverdriveSkipROM(void);
+    CmdResult OWOverdriveSkipROM(void);
     
     
     /**********************************************************//**
@@ -513,7 +501,7 @@
     *
     * @return CmdResult - zero on success, non-zero on failure
     **************************************************************/
-    virtual CmdResult OWOverdriveMatchROM(const RomId & romId);
+    CmdResult OWOverdriveMatchROM(const RomId & romId);
     
     
     /**********************************************************//**
@@ -531,16 +519,27 @@
     *
     * @return CmdResult - zero on success, non-zero on failure
     **************************************************************/
-    virtual CmdResult OWResume(void);
+    CmdResult OWResume(void);
     
-    protected:
+protected:
+
+    enum OW_ROM_CMD
+    {
+        READ_ROM = 0x33,
+        MATCH_ROM = 0x55,
+        SEARCH_ROM = 0xF0,
+        SKIP_ROM = 0xCC,
+        RESUME = 0xA5,
+        OVERDRIVE_SKIP_ROM = 0x3C,
+        OVERDRIVE_MATCH_ROM = 0x69
+    };
     
     // Search state
     uint8_t _last_discrepancy;
     uint8_t _last_family_discrepancy;
     bool _last_device_flag;
 
-    private:
+private:
     
     static const uint16_t _oddparity[16];
 };