split code into more files
This commit is contained in:
83
abzug.c
Normal file
83
abzug.c
Normal file
@@ -0,0 +1,83 @@
|
||||
#include <avr/io.h>
|
||||
#include "avrIOhelper/io-helper.h"
|
||||
|
||||
uint16_t abzug_speed = 100;
|
||||
|
||||
void timer3_init()
|
||||
{
|
||||
TCCR3A |= (1<<COM3B1);
|
||||
TCCR3B |= _BV(WGM33);
|
||||
|
||||
ICR3 = 100;
|
||||
OCR3B = 50;
|
||||
|
||||
DDRE |= 1 << 4;
|
||||
}
|
||||
|
||||
|
||||
void send_abzug_speed(void);
|
||||
void do_rolle(){
|
||||
|
||||
if (read_Input(BTN_ABZUG_EIN, RISING)) {
|
||||
TCCR3B |= _BV(CS31);
|
||||
set_Output(LED_ABZUG, ON);
|
||||
#if PLC_MQTT_ENABLED
|
||||
send_abzug_speed();
|
||||
#endif
|
||||
}
|
||||
|
||||
if (read_Input(BTN_ABZUG_AUS, RISING)) {
|
||||
TCCR3B &= ~(_BV(CS31));
|
||||
set_Output(LED_ABZUG, OFF);
|
||||
#if PLC_MQTT_ENABLED
|
||||
send_abzug_speed();
|
||||
#endif
|
||||
}
|
||||
|
||||
if (read_Input(BTN_ABZUG_PLUS, RISING)) {
|
||||
if(abzug_speed <= 900)
|
||||
abzug_speed += 100;
|
||||
else
|
||||
abzug_speed = 1000;
|
||||
#if PLC_MQTT_ENABLED
|
||||
send_abzug_speed();
|
||||
#endif
|
||||
}
|
||||
|
||||
if (read_Input(BTN_ABZUG_MINUS, RISING)) {
|
||||
if(abzug_speed >= 110)
|
||||
abzug_speed -= 100;
|
||||
else
|
||||
abzug_speed = 10;
|
||||
#if PLC_MQTT_ENABLED
|
||||
send_abzug_speed();
|
||||
#endif
|
||||
}
|
||||
|
||||
if (read_Input(BTN_ABZUG_PLUS_FEIN, RISING)) {
|
||||
if(abzug_speed <= 990)
|
||||
abzug_speed += 10;
|
||||
else
|
||||
abzug_speed = 1000;
|
||||
#if PLC_MQTT_ENABLED
|
||||
send_abzug_speed();
|
||||
#endif
|
||||
}
|
||||
|
||||
if (read_Input(BTN_ABZUG_MINUS_FEIN, RISING)) {
|
||||
if(abzug_speed >= 20)
|
||||
abzug_speed -= 10;
|
||||
else
|
||||
abzug_speed = 10;
|
||||
#if PLC_MQTT_ENABLED
|
||||
send_abzug_speed();
|
||||
#endif
|
||||
}
|
||||
|
||||
// 16000000/8
|
||||
|
||||
ICR3 = ((1.0/abzug_speed)*3.14*42.0*(1.0/5.0))*2.0*500.0*(1/1.03);
|
||||
OCR3B = ICR3/2;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user