 fef16a8e7a
			
		
	
	
		fef16a8e7a
		
			
		
	
	
	
	
		
			
			* Outdated apps: add api-light-usage * Gpio: update SD card CS pin settings * API-power: added fns to disable/enable external 3v3 dc-dc * API-gpio: separated SD card detect routines * Resources: removed sd cs pin * SD card: low level init now resets card power supply * App SD-filesystem: use new card detect fns * SD card: fix low level init headers * SD card: more realilable low level init, power reset, exit from command read cycle conditionally * App SD-filesystem: led notifiers, init cycling * SD card: backport to F4 * SD card: handle eject in init sequence * SD card: api to set level on detect gpio * SPI: api to set state on bus pins * SD card: set low state on bus pins while power reset Co-authored-by: coreglitch <mail@s3f.ru>
		
			
				
	
	
		
			63 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			63 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| #pragma once
 | |
| 
 | |
| #include "main.h"
 | |
| #include <furi.h>
 | |
| 
 | |
| #include <stm32wbxx.h>
 | |
| #include <stm32wbxx_ll_gpio.h>
 | |
| 
 | |
| #ifdef __cplusplus
 | |
| extern "C" {
 | |
| #endif
 | |
| 
 | |
| #define POWER_I2C_SCL_Pin LL_GPIO_PIN_9
 | |
| #define POWER_I2C_SCL_GPIO_Port GPIOA
 | |
| #define POWER_I2C_SDA_Pin LL_GPIO_PIN_10
 | |
| #define POWER_I2C_SDA_GPIO_Port GPIOA
 | |
| 
 | |
| #define POWER_I2C I2C1
 | |
| /* Timing register value is computed with the STM32CubeMX Tool,
 | |
|   * Fast Mode @100kHz with I2CCLK = 64 MHz,
 | |
|   * rise time = 0ns, fall time = 0ns
 | |
|   */
 | |
| #define POWER_I2C_TIMINGS 0x10707DBC
 | |
| 
 | |
| /* Input Related Constants */
 | |
| #define INPUT_DEBOUNCE_TICKS 20
 | |
| 
 | |
| /* Input Keys */
 | |
| typedef enum {
 | |
|     InputKeyUp,
 | |
|     InputKeyDown,
 | |
|     InputKeyRight,
 | |
|     InputKeyLeft,
 | |
|     InputKeyOk,
 | |
|     InputKeyBack,
 | |
| } InputKey;
 | |
| 
 | |
| /* Light */
 | |
| typedef enum {
 | |
|     LightRed,
 | |
|     LightGreen,
 | |
|     LightBlue,
 | |
|     LightBacklight,
 | |
| } Light;
 | |
| 
 | |
| typedef struct {
 | |
|     const GPIO_TypeDef* port;
 | |
|     const uint16_t pin;
 | |
|     const InputKey key;
 | |
|     const bool inverted;
 | |
| } InputPin;
 | |
| 
 | |
| extern const InputPin input_pins[];
 | |
| extern const size_t input_pins_count;
 | |
| 
 | |
| extern const GpioPin vibro_gpio;
 | |
| extern const GpioPin ibutton_gpio;
 | |
| extern const GpioPin cc1101_g0_gpio;
 | |
| 
 | |
| #ifdef __cplusplus
 | |
| }
 | |
| #endif
 |