Exemple #1
0
        private int _Mcp2221Read(byte devAddr, byte regAddr, byte length, byte[] data)
        {
            byte[] reg = { regAddr };
            int    result;

            result = Mcp2221Api.Mcp2221I2cWriteApi(ipHandler, 1, devAddr, 1, reg);
            if (result < 0)
            {
                return(result);
            }

            result = Mcp2221Api.Mcp2221I2cReadApi(ipHandler, length, devAddr, 1, data);
            if (result < 0)
            {
                return(-3);
            }

            return(length);
        }
Exemple #2
0
        private int _AardvarkRead16(byte devAddr, byte[] regAddr, byte length, byte[] data)
        {
            byte[] reg = { regAddr[0], regAddr[1] };
            int    result;

            result = Mcp2221Api.Mcp2221I2cWriteApi(ipHandler, 2, devAddr, 1, reg);
            if (result < 0)
            {
                return(-1);
            }

            result = Mcp2221Api.Mcp2221I2cReadApi(ipHandler, length, devAddr, 1, data);
            if (result < 0)
            {
                return(-1);
            }

            return(length);
        }
Exemple #3
0
        public int ReadRawApi(byte devAddr, byte length, byte[] data)
        {
            int result;

            switch (as_atAdapterType)
            {
            case AdapterSelector.AdapterType.AS_AT_DUMMY:
                break;

            case AdapterSelector.AdapterType.AS_AT_AARDVARK:
                if (iHandler <= 0)
                {
                    if (ConnectApi() < 0)
                    {
                        MessageBox.Show("I2cMasterConnectApi() fail!!");
                    }
                    return(-1);
                }
                return(AardvarkApi.aa_i2c_read(iHandler, devAddr, AardvarkI2cFlags.AA_I2C_NO_FLAGS, length, data));

            case AdapterSelector.AdapterType.AS_AT_MCP2221:
                if (ipHandler == IntPtr.Zero)
                {
                    if (ConnectApi() < 0)
                    {
                        MessageBox.Show("I2cMasterConnectApi() fail!!");
                    }
                    return(-1);
                }
                result = Mcp2221Api.Mcp2221I2cReadApi(ipHandler, length, devAddr, 1, data);
                if (result < 0)
                {
                    return(-3);
                }

                return(length);

            default:
                break;
            }

            return(0);
        }