File tree Expand file tree Collapse file tree 1 file changed +8
-6
lines changed
Expand file tree Collapse file tree 1 file changed +8
-6
lines changed Original file line number Diff line number Diff line change @@ -805,9 +805,9 @@ int i2c_slave_process_addr_match(i2c_slave_t *i2c, int rw) {
805805 return 0 ; // ACK
806806}
807807
808- int i2c_slave_process_rx_byte (i2c_slave_t * i2c , uint8_t val ) {
808+ int i2c_slave_process_rx_byte (i2c_slave_t * i2c ) {
809809 if (i2c_obj .cmd_buf_pos < sizeof (i2c_obj .cmd_buf )) {
810- i2c_obj .cmd_buf [i2c_obj .cmd_buf_pos ++ ] = val ;
810+ i2c_obj .cmd_buf [i2c_obj .cmd_buf_pos ++ ] = i2c_slave_read_byte ( i2c ) ;
811811 }
812812 return 0 ; // ACK
813813}
@@ -909,15 +909,17 @@ void i2c_slave_process_rx_end(i2c_slave_t *i2c) {
909909 i2c_obj .cmd_arg_sent = false;
910910}
911911
912- uint8_t i2c_slave_process_tx_byte (i2c_slave_t * i2c ) {
912+ void i2c_slave_process_tx_byte (i2c_slave_t * i2c ) {
913+ uint8_t value ;
913914 if (i2c_obj .cmd_send_arg ) {
914915 i2c_obj .cmd_arg_sent = true;
915- return i2c_obj .cmd_arg ;
916+ value = i2c_obj .cmd_arg ;
916917 } else if (i2c_obj .cmd_buf_pos < sizeof (i2c_obj .cmd_buf )) {
917- return i2c_obj .cmd_buf [i2c_obj .cmd_buf_pos ++ ];
918+ value = i2c_obj .cmd_buf [i2c_obj .cmd_buf_pos ++ ];
918919 } else {
919- return 0 ;
920+ value = 0 ;
920921 }
922+ i2c_slave_write_byte (i2c , value );
921923}
922924
923925void i2c_slave_process_tx_end (i2c_slave_t * i2c ) {
You can’t perform that action at this time.
0 commit comments