using System; using System.Text; using System.Linq; using System.Drawing; using System.Diagnostics; using System.Windows.Forms; using System.Threading; using System.Threading.Tasks; using System.Collections.Generic; using Tango.PMR.Stubs; using Tango.Stubs; //---------------------- const Int32 I2C_ID = 3; //MCU_I2C3 const Int32 TCA9548A_address = 0xE2; // Main Mux Int32 I2C_Slave_Add ; // //eeprom address - 32kByte int Head_Mux_Channel_ID = 4; //Head MUX channel //---------------------- uint[] write_Buf = new uint[5]; int enable_channel(int Channel_ID) { uint Const_temp = 0x01; StubI2CWriteBytesRequest stubI2CWriteBytesRequest = new StubI2CWriteBytesRequest(); stubI2CWriteBytesRequest.I2CId = I2C_ID; stubI2CWriteBytesRequest.SlaveAddress = TCA9548A_address; Const_temp = Const_temp << Channel_ID; stubI2CWriteBytesRequest.BytesTWrite.Add(Const_temp); var response = stubManager.Run(stubI2CWriteBytesRequest); return 1; } int adc_write(uint I2C_Slave_Add, uint No_Bytes) { uint i = 0; StubI2CWriteBytesRequest stubI2CWriteBytesRequest = new StubI2CWriteBytesRequest(); stubI2CWriteBytesRequest.I2CId = I2C_ID; stubI2CWriteBytesRequest.SlaveAddress = I2C_Slave_Add; UInt32 uInt32 = new UInt32(); //-------------------------------------------------------------- for(i=0;i(stubI2CWriteBytesRequest); return 1; } int adc_set_for_read_ch(uint I2C_Slave_Add) { StubI2CWriteBytesRequest stubI2CWriteBytesRequest = new StubI2CWriteBytesRequest(); stubI2CWriteBytesRequest.I2CId = I2C_ID; stubI2CWriteBytesRequest.SlaveAddress = I2C_Slave_Add; UInt32 uInt32 = new UInt32(); stubI2CWriteBytesRequest.BytesTWrite.Add(0);//Byte 0 to write stubI2CWriteBytesRequest.BytesTWrite.Add(0);//Byte 0 to write var response = stubManager.Run(stubI2CWriteBytesRequest); return 1; } int adc_read_ch(uint I2C_Slave_Add, uint No_Bytes) { adc_set_for_read_ch(I2C_Slave_Add ); StubI2CReadBytesRequest stubI2CReadBytesRequest = new StubI2CReadBytesRequest(); stubI2CReadBytesRequest.I2CId = I2C_ID; stubI2CReadBytesRequest.SlaveAddress = I2C_Slave_Add + 1; stubI2CReadBytesRequest.NumberOfBytesToRead = No_Bytes; // Number of bytes to read var response1 = stubManager.Run(stubI2CReadBytesRequest); uint temph=0; for(int i=0; i