aanper 5 лет назад
Родитель
Сommit
3ce36856ff
3 измененных файлов с 2 добавлено и 167 удалено
  1. 0 59
      app/gpio.c
  2. 0 106
      app/gpio.h
  3. 2 2
      target_prod/flipperzero_l476.ioc

+ 0 - 59
app/gpio.c

@@ -1,59 +0,0 @@
-/*
-Flipper devices inc.
-
-GPIO and HAL implementations
-*/
-
-#include "main.h"
-#include "gpio.h"
-
-void app_gpio_init(GpioPin gpio, GpioMode mode) {
-    if(gpio.pin != 0) {
-        GPIO_InitTypeDef GPIO_InitStruct;
-
-        GPIO_InitStruct.Pin = gpio.pin;
-        GPIO_InitStruct.Pull = GPIO_NOPULL;
-
-        switch(mode) {
-            case GpioModeInput:
-                GPIO_InitStruct.Mode = GPIO_MODE_INPUT;
-            break;
-
-            case GpioModeOutput: 
-                GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
-                GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_MEDIUM;
-            break;
-
-            case GpioModeOpenDrain:
-                GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_OD;
-                GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_MEDIUM;
-            break;
-        }
-
-        HAL_GPIO_Init(gpio.port, &GPIO_InitStruct);
-    }
-}
-
-// TODO delay from timer
-void delay_us(uint32_t time) {
-  time *= 11.8;
-
-  while(time--) {}
-}
-
-void pwm_set(float value, float freq, TIM_HandleTypeDef* tim, uint32_t channel) {
-    tim->Init.CounterMode = TIM_COUNTERMODE_UP;
-    tim->Init.Period = (uint32_t)((SystemCoreClock/tim->Init.Prescaler)/freq);
-    tim->Init.ClockDivision = TIM_CLOCKDIVISION_DIV1;
-    tim->Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE;
-    HAL_TIM_PWM_Init(tim);
-
-    TIM_OC_InitTypeDef sConfigOC;
-  
-    sConfigOC.OCMode = TIM_OCMODE_PWM1;
-    sConfigOC.Pulse = (uint16_t)(291 * value);
-    sConfigOC.OCPolarity = TIM_OCPOLARITY_HIGH;
-    sConfigOC.OCFastMode = TIM_OCFAST_DISABLE;
-    HAL_TIM_PWM_ConfigChannel(tim, &sConfigOC, channel);
-    HAL_TIM_PWM_Start(tim, channel);
-}

+ 0 - 106
app/gpio.h

@@ -1,106 +0,0 @@
-/*
-Flipper devices inc.
-
-GPIO and HAL implementations
-*/
-
-#pragma once
-
-#include <stdbool.h>
-#include "main.h"
-
-typedef enum {
-    GpioModeInput,
-    GpioModeOutput,
-    GpioModeOpenDrain
-} GpioMode;
-
-typedef struct {
-    GPIO_TypeDef* port;
-    uint32_t pin;
-} GpioPin;
-
-typedef struct {
-    GpioPin gpio;
-    GpioPin pull;
-} IoLine;
-
-extern TIM_HandleTypeDef htim8;
-
-
-void app_gpio_init(GpioPin gpio, GpioMode mode);
-
-inline void app_gpio_write(GpioPin gpio, bool state) {
-    if(gpio.pin != 0) {
-        if(state) {
-            gpio.port->BSRR = (uint32_t)gpio.pin;
-        } else {
-            gpio.port->BRR = (uint32_t)gpio.pin;
-        }
-    }
-}
-
-inline bool app_gpio_read(GpioPin gpio) {
-    if(gpio.pin != 0) {
-        return (gpio.port->IDR & gpio.pin) != 0x00u;
-    }
-
-    return false;
-}
-
-void delay_us(uint32_t time);
-
-void pwm_set(float value, float freq, TIM_HandleTypeDef* tim, uint32_t channel);
-
-inline void app_tim_ic_init(bool both) {
-    HAL_TIM_OC_Stop(&htim8, TIM_CHANNEL_2);
-
-    TIM_IC_InitTypeDef sConfigIC = {0};
-    sConfigIC.ICPolarity = both ? TIM_INPUTCHANNELPOLARITY_BOTHEDGE : TIM_INPUTCHANNELPOLARITY_FALLING;
-    sConfigIC.ICSelection = TIM_ICSELECTION_DIRECTTI;
-    sConfigIC.ICPrescaler = TIM_ICPSC_DIV1;
-    sConfigIC.ICFilter = 0;
-    HAL_TIM_IC_ConfigChannel(&htim8, &sConfigIC, TIM_CHANNEL_2);
-
-    HAL_TIM_IC_Start_IT(&htim8, TIM_CHANNEL_2);
-}
-
-inline void app_tim_pulse(uint32_t width) {
-    htim8.State = HAL_TIM_STATE_BUSY;
-
-    __HAL_TIM_DISABLE(&htim8);
-
-    __HAL_TIM_SET_COUNTER(&htim8, 0);
-
-    TIM_OC_InitTypeDef sConfigOC;
-    sConfigOC.OCMode = TIM_OCMODE_INACTIVE;
-    sConfigOC.Pulse = (uint16_t)(width);
-    sConfigOC.OCPolarity = TIM_OCPOLARITY_HIGH;
-    sConfigOC.OCFastMode = TIM_OCFAST_DISABLE;
-    // HAL_TIM_OC_ConfigChannel(&htim8, &sConfigOC, TIM_CHANNEL_2);
-
-    htim8.Lock = HAL_LOCKED;
-
-    /* Configure the TIM Channel 2 in Output Compare */
-    TIM_OC2_SetConfig(htim8.Instance, &sConfigOC);
-
-    htim8.Lock = HAL_UNLOCKED;
-
-    // TIM_CCxChannelCmd(htim8.Instance, TIM_CHANNEL_2, TIM_CCx_ENABLE);
-
-    /* Reset the CCxE Bit */
-    htim8.Instance->CCER &= ~(TIM_CCER_CC1E << (TIM_CHANNEL_2 & 0x1FU));
-
-    /* Set or reset the CCxE Bit */
-    htim8.Instance->CCER |= (uint32_t)(TIM_CCx_ENABLE << (TIM_CHANNEL_2 & 0x1FU));
-
-    __HAL_TIM_MOE_ENABLE(&htim8);
-    __HAL_TIM_ENABLE(&htim8);
-
-    htim8.State = HAL_TIM_STATE_READY;
-}
-
-inline void app_tim_stop() {
-    HAL_TIM_OC_Stop(&htim8, TIM_CHANNEL_2);
-    HAL_TIM_IC_Stop(&htim8, TIM_CHANNEL_2);
-}

+ 2 - 2
target_prod/target_prod.ioc → target_prod/flipperzero_l476.ioc

@@ -339,8 +339,8 @@ ProjectManager.MainLocation=Src
 ProjectManager.NoMain=false
 ProjectManager.PreviousToolchain=
 ProjectManager.ProjectBuild=false
-ProjectManager.ProjectFileName=target_prod.ioc
-ProjectManager.ProjectName=target_prod
+ProjectManager.ProjectFileName=flipperzero_l476.ioc
+ProjectManager.ProjectName=flipperzero_l476
 ProjectManager.StackSize=0x400
 ProjectManager.TargetToolchain=Makefile
 ProjectManager.ToolChainLocation=