atm90e32 0.1.0

A platform-agnostic driver for the ATM90E32 energy metering device.
Documentation
#[allow(dead_code)]
#[derive(Debug, Clone, Copy)]
pub enum Register {
    MeterEn = 0x00,
    ChannelMapI = 0x01,
    ChannelMapU = 0x02,
    SagPeakDetCfg = 0x05,
    OVth = 0x06,
    ZXConfig = 0x07,
    SagTh = 0x08,
    PhaseLossTh = 0x09,
    InWarnTh = 0x0A,
    OIth = 0x0B,
    FreqLoTh = 0x0C,
    FreqHiTh = 0x0D,
    PMPwrCtrl = 0x0E,
    IRQ0MergeCfg = 0x0F,
    DetectCtrl = 0x10,
    DetectTh1 = 0x11,
    DetectTh2 = 0x12,
    DetectTh3 = 0x13,
    IDCoffsetA = 0x14,
    IDCoffsetB = 0x15,
    IDCoffsetC = 0x16,
    UDCoffsetA = 0x17,
    UDCoffsetB = 0x18,
    UDCoffsetC = 0x19,
    UGainTAB = 0x1A,
    UGainTC = 0x1B,
    PhiFreqComp = 0x1C,
    LOGIrms0 = 0x20,
    LOGIrms1 = 0x21,
    F0 = 0x22,
    T0 = 0x23,
    PhiAIrms01 = 0x24,
    PhiAIrms2 = 0x25,
    GainAIrms01 = 0x26,
    GainAIrms2 = 0x27,
    PhiBIrms01 = 0x28,
    PhiBIrms2 = 0x29,
    GainBIrms01 = 0x2A,
    GainBIrms2 = 0x2B,
    PhiCIrms01 = 0x2C,
    PhiCIrms2 = 0x2D,
    GainCIrms01 = 0x2E,
    GainCIrms2 = 0x2F,
    PLconstH = 0x31,
    PLconstL = 0x32,
    MMode0 = 0x33,
    MMode1 = 0x34,
    PStartTh = 0x35,
    QStartTh = 0x36,
    SStartTh = 0x37,
    PPhaseTh = 0x38,
    QPhaseTh = 0x39,
    SPhaseTh = 0x3A,
    PoffsetA = 0x41,
    QoffsetA = 0x42,
    PoffsetB = 0x43,
    QoffsetB = 0x44,
    PoffsetC = 0x45,
    QoffsetC = 0x46,
    PQGainA = 0x47,
    PhiA = 0x48,
    PQGainB = 0x49,
    PhiB = 0x4A,
    PQGainC = 0x4B,
    PhiC = 0x4C,
    PoffsetAF = 0x51,
    PoffsetBF = 0x52,
    PoffsetCF = 0x53,
    PGainAF = 0x54,
    PGainBF = 0x55,
    PGainCF = 0x56,
    UgainA = 0x61,
    IgainA = 0x62,
    UoffsetA = 0x63,
    IoffsetA = 0x64,
    UgainB = 0x65,
    IgainB = 0x66,
    UoffsetB = 0x67,
    IoffsetB = 0x68,
    UgainC = 0x69,
    IgainC = 0x6A,
    UoffsetC = 0x6B,
    IoffsetC = 0x6C,
    SoftReset = 0x70,
    EMMState0 = 0x71,
    EMMState1 = 0x72,
    EMMIntState0 = 0x73,
    EMMIntState1 = 0x74,
    EMMIntEn0 = 0x75,
    EMMIntEn1 = 0x76,
    LastSPIData = 0x78,
    CRCErrStatus = 0x79,
    CRCDigest = 0x7A,
    CfgRegAccEn = 0x7F,
    APenergyT = 0x80,
    APenergyA = 0x81,
    APenergyB = 0x82,
    APenergyC = 0x83,
    ANenergyT = 0x84,
    ANenergyA = 0x85,
    ANenergyB = 0x86,
    ANenergyC = 0x87,
    RPenergyT = 0x88,
    RPenergyA = 0x89,
    RPenergyB = 0x8A,
    RPenergyC = 0x8B,
    RNenergyT = 0x8C,
    RNenergyA = 0x8D,
    RNenergyB = 0x8E,
    RNenergyC = 0x8F,
    SAenergyT = 0x90,
    SenergyA = 0x91,
    SenergyB = 0x92,
    SenergyC = 0x93,
    APenergyTF = 0xA0,
    APenergyAF = 0xA1,
    APenergyBF = 0xA2,
    APenergyCF = 0xA3,
    ANenergyTF = 0xA4,
    ANenergyAF = 0xA5,
    ANenergyBF = 0xA6,
    ANenergyCF = 0xA7,
    APenergyTH = 0xA8,
    APenergyAH = 0xA9,
    APenergyBH = 0xAA,
    APenergyCH = 0xAB,
    ANenergyTH = 0xAC,
    ANenergyAH = 0xAD,
    ANenergyBH = 0xAE,
    ANenergyCH = 0xAF,
    PmeanT = 0xB0,
    PmeanA = 0xB1,
    PmeanB = 0xB2,
    PmeanC = 0xB3,
    QmeanT = 0xB4,
    QmeanA = 0xB5,
    QmeanB = 0xB6,
    QmeanC = 0xB7,
    SmeanT = 0xB8,
    SmeanA = 0xB9,
    SmeanB = 0xBA,
    SmeanC = 0xBB,
    PFmeanT = 0xBC,
    PFmeanA = 0xBD,
    PFmeanB = 0xBE,
    PFmeanC = 0xBF,
    PmeanTLSB = 0xC0,
    PmeanALSB = 0xC1,
    PmeanBLSB = 0xC2,
    PmeanCLSB = 0xC3,
    QmeanTLSB = 0xC4,
    QmeanALSB = 0xC5,
    QmeanBLSB = 0xC6,
    QmeanCLSB = 0xC7,
    SAmeanTLSB = 0xC8,
    SmeanALSB = 0xC9,
    SmeanBLSB = 0xCA,
    SmeanCLSB = 0xCB,
    PmeanTF = 0xD0,
    PmeanAF = 0xD1,
    PmeanBF = 0xD2,
    PmeanCF = 0xD3,
    PmeanTH = 0xD4,
    PmeanAH = 0xD5,
    PmeanBH = 0xD6,
    PmeanCH = 0xD7,
    UrmsA = 0xD9,
    UrmsB = 0xDA,
    UrmsC = 0xDB,
    IrmsN = 0xDC,
    IrmsA = 0xDD,
    IrmsB = 0xDE,
    IrmsC = 0xDF,
    PmeanTFLSB = 0xE0,
    PmeanAFLSB = 0xE1,
    PmeanBFLSB = 0xE2,
    PmeanCFLSB = 0xE3,
    PmeanTHLSB = 0xE4,
    PmeanAHLSB = 0xE5,
    PmeanBHLSB = 0xE6,
    PmeanCHLSB = 0xE7,
    UrmsALSB = 0xE9,
    UrmsBLSB = 0xEA,
    UrmsCLSB = 0xEB,
    IrmsALSB = 0xED,
    IrmsBLSB = 0xEE,
    IrmsCLSB = 0xEF,
    UPeakA = 0xF1,
    UPeakB = 0xF2,
    UPeakC = 0xF3,
    IPeakA = 0xF5,
    IPeakB = 0xF6,
    IPeakC = 0xF7,
    Freq = 0xF8,
    PAngleA = 0xF9,
    PAngleB = 0xFA,
    PAngleC = 0xFB,
    Temp = 0xFC,
    UangleA = 0xFD,
    UangleB = 0xFE,
    UangleC = 0xFF,
}