Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- static void keypad_pcf8574_write(keypad_t *s, uint8_t data){
- s->iostate=data;
- uint8_t error;
- vTaskSuspendAll();
- error = HAL_I2C_Master_Transmit(s->hi2c, (uint16_t)s->addr, &s->iostate, 1, 100);
- xTaskResumeAll();
- (void)error;
- #if DEBUG
- dbg("write error code = %d\n\r",error);
- #endif
- // hardfix busy flag hardware problem,
- // STM32F10xxC/D/E Errata sheet - page 23
- if(error!=0){ // WARNING!!!
- HAL_I2C_DeInit(s->hi2c); // I2C RESET WHEN BUS FAULT, ITS WORKING ON F103
- MX_I2C1_Init();
- #if DEBUG
- dbg("restart i2c\n\r");
- #endif
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement