Commit ae705689 authored by Gallacchi Mattia's avatar Gallacchi Mattia
Browse files

Add tests

parent 5b5fd230
Loading
Loading
Loading
Loading
+4 −6
Original line number Diff line number Diff line
@@ -103,7 +103,7 @@ namespace MCP2221A {
    {
        int ret = 0;

        for (int addr = 0x00; addr < I2C_MAX_ADDR; addr++) {
        for (int addr = 0x08; addr < I2C_MAX_ADDR; addr++) {

            set_slave_address(addr);

@@ -176,11 +176,9 @@ namespace MCP2221A {
        set_slave_address(slave_addr);

        if (length < I2C_SMBUS_WORD_DATA) {
            uint16_t res = i2c_smbus_read_word_data(fd_, reg_addr);
            uint8_t h = (uint8_t) (res >> 8);
            uint8_t l = (uint8_t)res;
            data[0] = (uint8_t)(res >> 8);
            data[1] = (uint8_t)(res & 0xFF);
            int res = i2c_smbus_read_word_data(fd_, reg_addr);
            data[0] = res >> 8;
            data[1] = res & 0xFF;
            return;
        }

+4 −3
Original line number Diff line number Diff line
@@ -11,13 +11,14 @@ int main()
    // for (auto& slave: slaves)
    //     cout << hex << "0x" << slave << dec << endl;

    unsigned char data [] = {0x01, 0x02, 0x03};
    uint8_t tx_data [] = {0x00, 0x56, 0x78};
    uint8_t rx_data [2];
    i2c.send(0x17, tx_data, 3);
    i2c.read_register(0x17, 0x00, rx_data, 2);
    i2c.receive(0x17, rx_data, 2);
    // i2c.receive(0x17, rx_data, 2);

    for (int i = 0; i < 2; i++) {
        cout << hex << "0x" << rx_data[i] << dec << endl;
        cout << hex << "0x" << (int)rx_data[i] << dec << endl;
    }

    return 0;