From 32ee1da8e8ee0585cb5f39e69f9b1e5ae85aa7f2 Mon Sep 17 00:00:00 2001 From: Eggert Jung Date: Wed, 6 Apr 2022 00:18:55 +0200 Subject: [PATCH] limit spooling speed --- spule.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/spule.c b/spule.c index 233b954..50d3a27 100644 --- a/spule.c +++ b/spule.c @@ -33,7 +33,6 @@ void timer5_init() OCR5C = 500; DDRL |= 1 << 5; - } void do_spule(){ @@ -58,6 +57,10 @@ void do_spule(){ else{ /* speed regulation - keep taenzer at 10% */ int32_t tmp = (100 - (int32_t)taenzer_state.pos/1000)*10; + + if(tmp < -75000/abzug_speed/2) + tmp = -75000/abzug_speed/2; + ICR5=75000/abzug_speed + tmp; OCR5C = ICR5/2;