Исправлены синтаксические ошибки и добавлен новый микроконтроллер
This commit is contained in:
@@ -7,6 +7,10 @@
|
|||||||
#include "stm32g0xx_hal.h"
|
#include "stm32g0xx_hal.h"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef STM32G0B1xx
|
||||||
|
#include "stm32g0xx_hal.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifdef STM32F030xx
|
#ifdef STM32F030xx
|
||||||
#include "stm32f0xx_hal.h"
|
#include "stm32f0xx_hal.h"
|
||||||
#endif
|
#endif
|
||||||
@@ -16,7 +20,7 @@ typedef struct DS_Button
|
|||||||
{
|
{
|
||||||
GPIO_TypeDef* Port;
|
GPIO_TypeDef* Port;
|
||||||
uint16_t Pin;
|
uint16_t Pin;
|
||||||
bool Presed, Released, PresedLong, PresedLongLong;
|
bool Pressed, Released, PressedLong, PressedLongLong;
|
||||||
uint32_t PrevTick, PressStartTick, PressStartTickLong;
|
uint32_t PrevTick, PressStartTick, PressStartTickLong;
|
||||||
uint8_t Storage;
|
uint8_t Storage;
|
||||||
|
|
||||||
@@ -38,6 +42,6 @@ bool DS_ButtonPressedLongLong(DS_Button* Button);
|
|||||||
|
|
||||||
bool DS_ButtonRisingEdge(DS_Button* Button);
|
bool DS_ButtonRisingEdge(DS_Button* Button);
|
||||||
|
|
||||||
bool DS_ButtonFalingEdge(DS_Button* Button);
|
bool DS_ButtonFallingEdge(DS_Button* Button);
|
||||||
|
|
||||||
#endif //DS_BUTTON_H
|
#endif //DS_BUTTON_H
|
||||||
@@ -4,9 +4,9 @@ void DS_ButtonInit(DS_Button* Button, GPIO_TypeDef *Port, uint16_t Pin)
|
|||||||
{
|
{
|
||||||
Button->Port = Port;
|
Button->Port = Port;
|
||||||
Button->Pin = Pin;
|
Button->Pin = Pin;
|
||||||
Button->Presed = false;
|
Button->Pressed = false;
|
||||||
Button->PresedLong = false;
|
Button->PressedLong = false;
|
||||||
Button->PresedLongLong = false;
|
Button->PressedLongLong = false;
|
||||||
Button->Released = false;
|
Button->Released = false;
|
||||||
Button->PrevTick = 0;
|
Button->PrevTick = 0;
|
||||||
Button->PressStartTick = 0;
|
Button->PressStartTick = 0;
|
||||||
@@ -38,12 +38,12 @@ void DS_ButtonUpdate(DS_Button *Button)
|
|||||||
if (Button->PressStartTick == 0)
|
if (Button->PressStartTick == 0)
|
||||||
Button->PressStartTick = CurrentTick;
|
Button->PressStartTick = CurrentTick;
|
||||||
else if ((CurrentTick-Button->PressStartTick)>1000)
|
else if ((CurrentTick-Button->PressStartTick)>1000)
|
||||||
Button->PresedLong = true;
|
Button->PressedLong = true;
|
||||||
|
|
||||||
if (Button->PressStartTickLong == 0)
|
if (Button->PressStartTickLong == 0)
|
||||||
Button->PressStartTickLong = CurrentTick;
|
Button->PressStartTickLong = CurrentTick;
|
||||||
else if ((CurrentTick-Button->PressStartTickLong)>5000)
|
else if ((CurrentTick-Button->PressStartTickLong)>5000)
|
||||||
Button->PresedLongLong = true;
|
Button->PressedLongLong = true;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -57,10 +57,10 @@ void DS_ButtonUpdate(DS_Button *Button)
|
|||||||
Button->Storage -=1;
|
Button->Storage -=1;
|
||||||
|
|
||||||
Button->PressStartTick = 0;
|
Button->PressStartTick = 0;
|
||||||
Button->PresedLong = false;
|
Button->PressedLong = false;
|
||||||
|
|
||||||
Button->PressStartTickLong = 0;
|
Button->PressStartTickLong = 0;
|
||||||
Button->PresedLongLong = false;
|
Button->PressedLongLong = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
switch (Button->Storage)
|
switch (Button->Storage)
|
||||||
@@ -70,16 +70,16 @@ void DS_ButtonUpdate(DS_Button *Button)
|
|||||||
{
|
{
|
||||||
Button->FallingEdge = true;
|
Button->FallingEdge = true;
|
||||||
}
|
}
|
||||||
Button->Presed = false;
|
Button->Pressed = false;
|
||||||
Button->Released = true;
|
Button->Released = true;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 10:
|
case 10:
|
||||||
if (Button->Presed == false)
|
if (Button->Pressed == false)
|
||||||
{
|
{
|
||||||
Button->RisingEdge = true;
|
Button->RisingEdge = true;
|
||||||
}
|
}
|
||||||
Button->Presed = true;
|
Button->Pressed = true;
|
||||||
Button->Released = false;
|
Button->Released = false;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@@ -91,7 +91,7 @@ void DS_ButtonUpdate(DS_Button *Button)
|
|||||||
|
|
||||||
bool DS_ButtonPressed(DS_Button *Button)
|
bool DS_ButtonPressed(DS_Button *Button)
|
||||||
{
|
{
|
||||||
if (Button->Presed)
|
if (Button->Pressed)
|
||||||
{
|
{
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
@@ -109,9 +109,9 @@ bool DS_ButtonReleased(DS_Button *Button)
|
|||||||
|
|
||||||
bool DS_ButtonPressedLong(DS_Button *Button)
|
bool DS_ButtonPressedLong(DS_Button *Button)
|
||||||
{
|
{
|
||||||
if (Button->PresedLong)
|
if (Button->PressedLong)
|
||||||
{
|
{
|
||||||
Button->PresedLong = false;
|
Button->PressedLong = false;
|
||||||
Button->PressStartTick = Button->PressStartTick + 500;
|
Button->PressStartTick = Button->PressStartTick + 500;
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
@@ -120,10 +120,10 @@ bool DS_ButtonPressedLong(DS_Button *Button)
|
|||||||
|
|
||||||
bool DS_ButtonPressedLongLong(DS_Button *Button)
|
bool DS_ButtonPressedLongLong(DS_Button *Button)
|
||||||
{
|
{
|
||||||
if (Button->PresedLongLong)
|
if (Button->PressedLongLong)
|
||||||
{
|
{
|
||||||
Button->PressStartTick = 0;
|
Button->PressStartTick = 0;
|
||||||
Button->PresedLongLong = false;
|
Button->PressedLongLong = false;
|
||||||
Button->PressStartTickLong = Button->PressStartTickLong+500;
|
Button->PressStartTickLong = Button->PressStartTickLong+500;
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
@@ -140,7 +140,7 @@ bool DS_ButtonRisingEdge(DS_Button *Button)
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool DS_ButtonFalingEdge(DS_Button *Button)
|
bool DS_ButtonFallingEdge(DS_Button *Button)
|
||||||
{
|
{
|
||||||
if (Button->FallingEdge)
|
if (Button->FallingEdge)
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user