Mercurial > public > ostc4
view Small_CPU/Inc/spi.h @ 238:a9d798e8c11f div-fixes-5
cleanup, bugfix: do not mask I2C_SystemStatus with local variable
This commit is partly cleanup, and partly possible bugfix. Masking
the global I2C_SystemStatus with a local variable is (very) bad practice,
but more importantly, dangerous, as other code uses this I2C_SystemStatus
to base decisions on. So, this is definitely non-trivial, as it can
possibly change the flow of control. This said, its tested and seems to
have no negative effects (but also no positive, as I sort of hoped for),
so that is why I mark it cleanup as well. Constructs like this shall
be heavily documented in the code, when there is a reason to do things
like this.
Further, remove a 2nd rather useless construct. There is no reason
to & 0x03 the output of I2C_SystemStatus. This is the only location
in the entire code base where this is done, so, its not only useless
but also inconsistent and confusing the true intentions here.
Finally, littered to code with todo's that I will take care of in
next commits.
Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
author | Jan Mulder <jlmulder@xs4all.nl> |
---|---|
date | Mon, 08 Apr 2019 10:16:17 +0200 |
parents | 8117802894a4 |
children | b3685fbada3b |
line wrap: on
line source
/** ****************************************************************************** * @file spi.h * @author heinrichs weikamp gmbh * @version V0.0.1 * @date 16-Sept-2014 * @brief Header file for spi control ****************************************************************************** * @attention * * <h2><center>© COPYRIGHT(c) 2014 heinrichs weikamp</center></h2> * ****************************************************************************** */ /* Define to prevent recursive inclusion -------------------------------------*/ #ifndef SPI_H #define SPI_H #ifdef __cplusplus extern "C" { #endif /* Includes ------------------------------------------------------------------*/ #include "stm32f4xx_hal.h" extern SPI_HandleTypeDef hspi1; void MX_SPI1_Init(void); //void SPI_Start_single_TxRx_with_Master_and_Stop_ChipSelectControl(void); void SPI_Start_single_TxRx_with_Master(void); void SPI_synchronize_with_Master(void); void SPI_Evaluate_RX_Data(void); /*process the data received during last 100ms cycle */ void MX_SPI_DeInit(void); /* button adjust */ void MX_SPI3_Init(void); void MX_SPI3_DeInit(void); uint8_t SPI3_ButtonAdjust(uint8_t *arrayInput, uint8_t *arrayOutput); void MX_SPI_DeInit(void); #ifdef __cplusplus } #endif #endif /* SPI_H */ /** * @} */ /** * @} */ /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/