Cleanup encoder code

This commit is contained in:
Hakan Bastedt
2024-01-11 10:42:29 +01:00
parent cd8388ea58
commit a4488da9fa
6 changed files with 389 additions and 479 deletions

View File

@@ -36,11 +36,11 @@ void MyEncoder::indexPulse(void)
pleaseZeroTheCounter = 0;
}
}
void MyEncoder::init(enum EncTimer timer, TIM_TypeDef *_tim_base)
void MyEncoder::init(TIM_TypeDef *_tim_base)
{
tim_base = _tim_base;
EncoderInit.tim_base = _tim_base;
// Set starting count value
EncoderInit.SetCount(timer, 0);
EncoderInit.SetCount(0);
// EncoderInit.SetCount(Tim3, 0);
// EncoderInit.SetCount(Tim4, 0);
// EncoderInit.SetCount(Tim8, 0);

View File

@@ -5,45 +5,21 @@
Created on: Nov 20, 2020
Author: GoktugH.
*/
// TIM2, TIM3, TIM4, TIM8
Encoder::Encoder()
{
int unit;
}
void Encoder::eattach(int enco)
// void Encoder::SetCount(enum EncTimer enc, int64_t Counter)
void Encoder::SetCount(int64_t Counter)
{
tim_base->CNT = Counter;
}
void Encoder::attachh(int encoNumber)
// uint16_t Encoder::GetCount(enum EncTimer enc)
uint16_t Encoder::GetCount()
{
eattach(encoNumber);
}
void Encoder::SetCount(enum EncTimer enc, int64_t Counter)
{
if (enc == Tim2)
TIM2->CNT = Counter;
else if (enc == Tim3)
TIM3->CNT = Counter;
else if (enc == Tim4)
TIM4->CNT = Counter;
else if (enc == Tim8)
TIM8->CNT = Counter;
}
uint16_t Encoder::GetCount(enum EncTimer enc)
{
if (enc == Tim2)
c = (TIM2->CNT);
else if (enc == Tim3)
c = (TIM3->CNT);
else if (enc == Tim4)
c = (TIM4->CNT);
else if (enc == Tim8)
c = (TIM8->CNT);
return c;
return tim_base->CNT;
}
void GpioConfigPortA(GPIO_TypeDef *GPIOx)

View File

@@ -83,7 +83,7 @@ void setup(void)
rcc_config();
Step1.setScale(500);
Encoder1.init(Tim2, TIM2);
Encoder1.init(TIM2);
ecat_slv_init(&config);
}