I am simulating a master-slave scenario. The master is the PIC18F4620, the slave is the I2C debugger.
I am sending a slave address of 0x04. R/W = 0 to perform a write operation on the slave.
This is my frame format.
//Slave address is 0x04.
mcal_i2c_send_slave_address(0x04,0,&ack_status);
//Send data = 0x77
mcal_i2c_master_send_data(0x77,&ack_status);
//send repeated start
mcal_i2c_send_repeated_start_condition();
//send data = 0x00 , then send stop condition.
mcal_i2c_master_send_data(0x00,&ack_status);
mcal_i2c_send_stop_condition();
The transmitter which is the PIC18F is transmitting the frame correctly. The problem is that the I2C debugger won`t send ACK, it only sends NOT ACK.
Does anybody know why I am receiving NACK from the I2C debugger?