From 1a284080e853faeccdfb5fa1382b266be9e5a5c0 Mon Sep 17 00:00:00 2001 From: Simon Schmidt Date: Fri, 25 Jun 2021 19:13:04 +0200 Subject: [PATCH] typo --- lib/treppe/treppe.cpp | 4 +- lib/treppe/treppe.cpp~HEAD | 256 ------------------------------------- lib/treppe/treppe.h~HEAD | 73 ----------- 3 files changed, 1 insertion(+), 332 deletions(-) delete mode 100644 lib/treppe/treppe.cpp~HEAD delete mode 100644 lib/treppe/treppe.h~HEAD diff --git a/lib/treppe/treppe.cpp b/lib/treppe/treppe.cpp index 6059e50..e4c15de 100644 --- a/lib/treppe/treppe.cpp +++ b/lib/treppe/treppe.cpp @@ -94,9 +94,7 @@ void Treppe::ledsequence(){ - - -void Treppe::elelel() +void Treppe::task_2() { if(state) { if(direction) { // aufwärts diff --git a/lib/treppe/treppe.cpp~HEAD b/lib/treppe/treppe.cpp~HEAD deleted file mode 100644 index c08afe5..0000000 --- a/lib/treppe/treppe.cpp~HEAD +++ /dev/null @@ -1,256 +0,0 @@ -#include "treppe.h" - -uint8_t Treppe::softstart_led(uint8_t led, uint16_t startval, uint16_t stopval){ - /* - softstart task - - - get's called at regular intervals (1ms at the moment) - - dimms single led (0 - 15, PCA9685 outputs) with linear intervals vom startval to stopval - - calculates pwm steps depending on startval, stopval and timeinterval - - -> results in constanst speed - - returns 1 if led dimming is running - - returns 0 if led dimming is finished - - */ - - static uint8_t lastled = 255; - static float current_pwm = 0; - static float stepsize = 0.5; - if(led != lastled){ - pwmController.setChannelPWM(led, (uint16_t)startval); - lastled = led; - current_pwm = startval; - stepsize = INT_TIME*abs(stopval - startval)/(float)time_per_stair; // only valid at 1ms function call interval - return 1; - } - - if(startval > stopval){ - current_pwm -= stepsize; - } - else { - current_pwm += stepsize; - } - Serial.println((uint16_t)current_pwm); - pwmController.setChannelPWM(led, (uint16_t)current_pwm); - if(current_pwm > stopval - stepsize && current_pwm < stopval + stepsize){ - if(stopval == 0) pwmController.setChannelPWM(led, 0); - return 0; - } - return 1; -} - -void Treppe::ledsequence(){ - static int8_t led = 0; - static uint16_t brightness = 0; - static uint16_t lastbrightness = 0; - static uint16_t status = 0; - uint16_t status_build = 0; - - status_build |= direction << 8; - status_build |= state; - if(status_build != status){ // check if any parameter changed - finish = 0; // set state unfinished -> start action - if(direction) led = 0; // reset led counter depending of direction - else led = stairs-1; - if(state){ - brightness = active_brightness; // set brightness value depending of on/off - lastbrightness = idle_brightness; - } - else{ - brightness = idle_brightness; - lastbrightness = active_brightness; - } - status = status_build; // set parameter memory - Serial.print("----Status Changed! onoff: "); - Serial.print(state); - Serial.print(" dir: "); - Serial.println(direction); - - } - if(!finish){ // finish == 0 -> action pending - if(!softstart_led(led,lastbrightness, brightness)){ - Serial.print("one LED finished: "); - Serial.print(led); - Serial.print(" last: "); - Serial.print(lastbrightness); - Serial.print(" curr: "); - Serial.println(brightness); - if(direction){ - led++; - if(led >= stairs) { - finish = 1; - //lastbrightness = brightness; - } - } - else{ - led--; - if(led < 0){ - //lastbrightness = brightness; - finish = 1; - } - } - } - } -} - - - - - -void Treppe::elelel() -{ - if(state) { - if(direction) { // aufwärts - if(tick >= ticks_treppe-1) { // ziel erreicht - Serial.println("[Treppe] oberster tick !"); - state = 0; - return; - } - tick++; // eins hoch - } - else { // abwärts - if(tick <= 0) { // ziel erreicht - Serial.println("[Treppe] unterster tick !"); - state = 0; - return; - } - tick--; // eins runter - } - - stufe = tick / ticks_pro_stufe; - float new_pwm = differenz_pwm_pro_tick * (tick - ticks_pro_stufe*stufe); - if(direction) - new_pwm += differenz_pwm_pro_tick; - new_pwm += idle_brightness; - - pwmController.setChannelPWM(stufe, (uint16_t) new_pwm); - Serial.printf("tick %04u, led %02d:%02u, pwm %4.1f\n", - tick, - stufe, - (tick - ticks_pro_stufe*stufe), - new_pwm - ); - } -} - -// if(stufe > stairs || stufe < 0 || tick < 0 || tick > ticks_treppe-1) { -// Serial.println("[Treppe] ERROR, Something went wrong !"); -// state = 0; -// return; -// } - -void Treppe::setup(){ - Serial.printf("differenz_pwm_pro_tick %f\n", differenz_pwm_pro_tick); - - pwmController.resetDevices(); - -<<<<<<< HEAD:lib/treppe/treppe.cpp - // Deactivate PCA9685_PhaseBalancer due to LED Flickering -======= - // Deactive PCA9685 Phase Balancer due to LED Flickering ->>>>>>> master:src/pwm.cpp - // https://github.com/NachtRaveVL/PCA9685-Arduino/issues/15 - // see also lib/PCA9685-Arduin/PCA9685.h:204 - pwmController.init(PCA9685_PhaseBalancer_None); - pwmController.setPWMFrequency(200); - pwmController.setAllChannelsPWM(idle_brightness); - - pinMode(SENSOR1, INPUT); - pinMode(SENSOR2, INPUT); - Serial.println("Hello from Treppe"); - Serial.print("Treppe: initial parameters: stairs="); - Serial.println(stairs); - - for(uint8_t i=0; i>>>>>> master:src/pwm.cpp -} - -uint16_t Treppe::setIdle(uint16_t _idle_brightness){ - idle_brightness = _idle_brightness; - Serial.println("Treppe: idle brightness changed!"); - return idle_brightness; -} -uint16_t Treppe::setActive(uint16_t _active_brightness){ - active_brightness = _active_brightness; - Serial.println("Treppe: active brightness changed!"); - return active_brightness; -} -uint16_t Treppe::setTime(uint16_t _time_per_stair){ - time_per_stair = _time_per_stair; - Serial.println("Treppe: time changed!"); - return time_per_stair; -} - -uint8_t Treppe::setDirection(uint8_t _direction){ -<<<<<<< HEAD:lib/treppe/treppe.cpp - direction = _direction; - Serial.printf("Treppe: Direction: %d!\n",direction); -======= - switch_direction = _direction; - Serial.println("Treppe: Direction changed!"); - if(finish) Serial.println("apply direction request immediately"); - else Serial.println("currently active, dir change afterwards"); ->>>>>>> master:src/pwm.cpp - // to do: implement state command variable to determine dimm-state - return switch_direction; -} - -uint8_t Treppe::setState(uint8_t _state){ - if(state == _state) return 1; - else{ -<<<<<<< HEAD:lib/treppe/treppe.cpp - state = _state; - Serial.printf("Treppe: State: %d!\n",state); -======= - switch_state = _state; - Serial.println("Treppe: State Request changed!"); - if(finish) Serial.println("apply state request immediately"); - else Serial.println("currently active, state changes after activity"); ->>>>>>> master:src/pwm.cpp - } - return 0; -} diff --git a/lib/treppe/treppe.h~HEAD b/lib/treppe/treppe.h~HEAD deleted file mode 100644 index c555c11..0000000 --- a/lib/treppe/treppe.h~HEAD +++ /dev/null @@ -1,73 +0,0 @@ -#pragma once - -#include "PCA9685.h" - -#define SENSOR1 15 -#define SENSOR2 12 - -#define INT_TIME 20 // interrupt intervall [ms] -class Treppe { -private: - uint8_t stairs; -<<<<<<< HEAD:lib/treppe/treppe.h - uint16_t time_per_stair = 300; // dimmtime per stair [ms] - uint16_t idle_brightness = 0; - uint16_t active_brightness = 500; -======= - uint16_t time_per_stair = 200; // dimmtime per stair [ms] - uint16_t idle_brightness = 0; - uint16_t active_brightness = 1048; ->>>>>>> master:include/pwm.h - - uint8_t direction = 0; - uint8_t switch_direction = 0; - uint8_t state = 0; - uint8_t switch_state = 0; - uint8_t finish = 1; - - uint32_t tick = 0; - uint32_t stufe = 0; - - uint32_t ticks_treppe = 0; - uint32_t ticks_pro_stufe = 0; - float differenz_pwm_pro_tick = 0.0; - - // initialize with i2c-Address 0, use Wire Library - PCA9685 pwmController; - uint8_t softstart_led(uint8_t led, uint16_t startval, uint16_t stopval); - void ledsequence(); - -public: - Treppe(uint8_t _stairs) : stairs(_stairs){ - ticks_pro_stufe = time_per_stair / 20; // [ms] - ticks_treppe = ticks_pro_stufe * stairs; - - differenz_pwm_pro_tick = (float) (active_brightness - idle_brightness) - / (float) ticks_pro_stufe; - } - - void task(); // call periodically - - void setup(); - void elelel(); - - // Parameter section - uint16_t setIdle(uint16_t _idle_brightness); - uint16_t setActive(uint16_t _active_brightness); - uint16_t setTime(uint16_t _time_per_stair); - - void setTick(uint32_t _tick) { - tick = _tick; - Serial.printf("Treppe: Tick: %u!\n", tick); - } - uint32_t getTicks() { - return ticks_treppe; - } - - // Runtime Parameter section - uint8_t setDirection(uint8_t _direction); - uint8_t setState(uint8_t _state); - - uint8_t getState() { return state;}; - uint8_t getDirection() {return direction;}; -}; \ No newline at end of file