platform.c 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. /*
  2. * platform.c
  3. *
  4. * Created on: Nov 7, 2021
  5. * Author: Jonatan
  6. */
  7. #include "platform.h"
  8. #include "pinout/pinout.h"
  9. #include "stm32f3xx_hal.h"
  10. static void MX_GPIO_Init(void);
  11. void platform_init(void)
  12. {
  13. MX_GPIO_Init();
  14. HAL_GPIO_WritePin(LD10_GPIO_Port, LD10_Pin, GPIO_PIN_SET);
  15. HAL_GPIO_WritePin(LD3_GPIO_Port, LD3_Pin, GPIO_PIN_SET);
  16. HAL_GPIO_WritePin(LD7_GPIO_Port, LD7_Pin, GPIO_PIN_SET);
  17. HAL_GPIO_WritePin(LD6_GPIO_Port, LD6_Pin, GPIO_PIN_SET);
  18. }
  19. /**
  20. * @brief GPIO Initialization Function
  21. * @param None
  22. * @retval None
  23. */
  24. static void MX_GPIO_Init(void)
  25. {
  26. GPIO_InitTypeDef GPIO_InitStruct = {0};
  27. /* GPIO Ports Clock Enable */
  28. __HAL_RCC_GPIOE_CLK_ENABLE();
  29. __HAL_RCC_GPIOC_CLK_ENABLE();
  30. __HAL_RCC_GPIOF_CLK_ENABLE();
  31. __HAL_RCC_GPIOA_CLK_ENABLE();
  32. __HAL_RCC_GPIOB_CLK_ENABLE();
  33. /*Configure GPIO pin Output Level */
  34. HAL_GPIO_WritePin(GPIOE, CS_I2C_SPI_Pin|LD4_Pin|LD3_Pin|LD5_Pin
  35. |LD7_Pin|LD9_Pin|LD10_Pin|LD8_Pin
  36. |LD6_Pin, GPIO_PIN_RESET);
  37. /*Configure GPIO pins : DRDY_Pin MEMS_INT3_Pin MEMS_INT4_Pin MEMS_INT1_Pin
  38. MEMS_INT2_Pin */
  39. GPIO_InitStruct.Pin = DRDY_Pin|MEMS_INT3_Pin|MEMS_INT4_Pin|MEMS_INT1_Pin
  40. |MEMS_INT2_Pin;
  41. GPIO_InitStruct.Mode = GPIO_MODE_EVT_RISING;
  42. GPIO_InitStruct.Pull = GPIO_NOPULL;
  43. HAL_GPIO_Init(GPIOE, &GPIO_InitStruct);
  44. /*Configure GPIO pins : CS_I2C_SPI_Pin LD4_Pin LD3_Pin LD5_Pin
  45. LD7_Pin LD9_Pin LD10_Pin LD8_Pin
  46. LD6_Pin */
  47. GPIO_InitStruct.Pin = CS_I2C_SPI_Pin|LD4_Pin|LD3_Pin|LD5_Pin
  48. |LD7_Pin|LD9_Pin|LD10_Pin|LD8_Pin
  49. |LD6_Pin;
  50. GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
  51. GPIO_InitStruct.Pull = GPIO_NOPULL;
  52. GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
  53. HAL_GPIO_Init(GPIOE, &GPIO_InitStruct);
  54. /*Configure GPIO pin : B1_Pin */
  55. GPIO_InitStruct.Pin = B1_Pin;
  56. GPIO_InitStruct.Mode = GPIO_MODE_INPUT;
  57. GPIO_InitStruct.Pull = GPIO_NOPULL;
  58. HAL_GPIO_Init(B1_GPIO_Port, &GPIO_InitStruct);
  59. /*Configure GPIO pins : PA11 PA12 */
  60. GPIO_InitStruct.Pin = GPIO_PIN_11|GPIO_PIN_12;
  61. GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
  62. GPIO_InitStruct.Pull = GPIO_NOPULL;
  63. GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH;
  64. GPIO_InitStruct.Alternate = GPIO_AF14_USB;
  65. HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
  66. }