Compare commits

..

No commits in common. "e47cae30a8bbdea8d9a377c0154a7d82b0d556d6" and "c23b9f2bc6f752b0291e71af5d27cea18e092506" have entirely different histories.

6 changed files with 25 additions and 73 deletions

View File

@ -19,35 +19,28 @@
<div class="param_block"> <div class="param_block">
Idle Brightness Maximum: <output id="out_idl_pwm" class="val_range">50</output> % Idle Brightness: <output id="out_idl_pwm" class="val_range">50</output> %
<label id="note">[100% == Active Brightness]</label>
<div class="slider"> <div class="slider">
<input type="range" class="regler" id="range_idl_pwm" min="0" max="100" value="50"> <input type="range" class="regler" id="range_idl_pwm" min="0" max="100" value="50">
</div> </div>
<label id="note">idle brightness gets controlled via LDR measurments</label>
</div> </div>
<div class="param_block"> <div class="param_block">
Time per stair [ms]: <output id="out_tim_sta" class="val_range">300</output> ms Time per stair: <output id="out_tim_sta" class="val_range">50</output> %
<div class="slider"> <div class="slider">
<input type="range" class="regler" id="range_tim_sta" min="0" max="5000" value="300"> <input type="range" class="regler" id="range_tim_sta" min="0" max="100" value="50">
</div> </div>
</div> </div>
<div class="param_block"> <div class="param_block">
Time LDR [ms]: <output id="out_tim_ldr" class="val_range">500</output> ms On Time: <output id="out_tim_on" class="val_range">50</output> %
<div class="slider"> <div class="slider">
<input type="range" class="regler" id="range_tim_ldr" min="0" max="5000" value="500"> <input type="range" class="regler" id="range_tim_on" min="0" max="100" value="50">
</div> </div>
</div> </div>
<div class="param_block">
LDR Schwelle [%]: <output id="out_ldr_shw" class="val_range">50</output> %
<div class="slider">
<input type="range" class="regler" id="range_ldr_shw" min="0" max="100" value="50">
</div>
</div>
<div class="terminal"> <div class="terminal">

View File

@ -48,8 +48,8 @@ function rangeToOutput(range, output) {
rangeToOutput("range_act_pwm", "out_act_pwm"); rangeToOutput("range_act_pwm", "out_act_pwm");
rangeToOutput("range_idl_pwm", "out_idl_pwm"); rangeToOutput("range_idl_pwm", "out_idl_pwm");
rangeToOutput("range_tim_sta", "out_tim_sta"); rangeToOutput("range_tim_sta", "out_tim_sta");
rangeToOutput("range_tim_ldr", "out_tim_ldr"); rangeToOutput("range_tim_on", "out_tim_on");
rangeToOutput("range_ldr_shw", "out_ldr_shw");
let xhr = new XMLHttpRequest(); let xhr = new XMLHttpRequest();

View File

@ -30,7 +30,7 @@ body {
font-weight: bold; font-weight: bold;
} }
.regler { .regler{
/* -webkit-appearance: none; */ /* -webkit-appearance: none; */
height: 50px; height: 50px;
width: 100%; width: 100%;
@ -38,12 +38,6 @@ body {
outline: black; outline: black;
background-color: rgb(176, 188, 228); background-color: rgb(176, 188, 228);
} }
#note {
font-size: medium;
font-style: italic;
}
/* .regler::-webkit-slider-thumb{ /* .regler::-webkit-slider-thumb{
-webkit-appearance: none; -webkit-appearance: none;
appearance: none; appearance: none;
@ -118,6 +112,8 @@ input:checked + .slider:before {
margin: 2px; margin: 2px;
} }
input[type="number"] { input[type="number"] {
width: 100px; width: 100px;
} }

View File

@ -50,13 +50,9 @@ void HTTPServer::start_apps() {
treppe->set_idle_pwm_max(arg(i).toInt(), VORGABE_PROZENT); treppe->set_idle_pwm_max(arg(i).toInt(), VORGABE_PROZENT);
} }
else if (argName(i).equals("range_tim_sta")) { else if (argName(i).equals("range_tim_sta")) {
treppe->set_time_per_stair(arg(i).toInt());
} }
else if (argName(i).equals("range_tim_ldr")) { else if (argName(i).equals("range_tim_on")) {
treppe->set_time_ldr(arg(i).toInt());
}
else if (argName(i).equals("range_ldr_shw")) {
treppe->set_ldr_schwelle(arg(i).toInt(), VORGABE_PROZENT);
} }
} }

View File

@ -281,9 +281,8 @@ void Treppe::setup() {
pwmController.setPWMFrequency(100); pwmController.setPWMFrequency(100);
// pwmController.setAllChannelsPWM(idle_pwm); // pwmController.setAllChannelsPWM(idle_pwm);
// WARNING: before getting Parameters of Flash, make sure plausible parameters // WARNING: before getting Parameters of Flash, make sure plausible parameters are written in flash!
// are written in flash! EEPROM.get(EEP_START_ADDR, parameters); // get Parameters of flash
EEPROM.get(EEP_START_ADDR, parameters); // get Parameters of flash
pinMode(13, OUTPUT); pinMode(13, OUTPUT);
pinMode(0, OUTPUT); pinMode(0, OUTPUT);
@ -298,10 +297,9 @@ void Treppe::setup() {
Serial.printf("Treppe: stufen=%d\n", stufen); Serial.printf("Treppe: stufen=%d\n", stufen);
} }
void Treppe::saveParam() { void Treppe::saveParam(){
EEPROM.put(EEP_START_ADDR, EEPROM.put(EEP_START_ADDR, parameters); // copy Parameters so "EEPROM"-section in RAM
parameters); // copy Parameters so "EEPROM"-section in RAM EEPROM.commit(); // write "EEPROM"-section to flash
EEPROM.commit(); // write "EEPROM"-section to flash
} }
void Treppe::set_idle_pwm_max(const uint16_t value, void Treppe::set_idle_pwm_max(const uint16_t value,
@ -316,7 +314,6 @@ void Treppe::set_idle_pwm_max(const uint16_t value,
parameters.idle_pwm_max = parameters.active_pwm; parameters.idle_pwm_max = parameters.active_pwm;
} }
saveParam(); saveParam();
Serial.printf("Treppe: parameters.idle_pwm_max=%d\n", Serial.printf("Treppe: parameters.idle_pwm_max=%d\n",
parameters.idle_pwm_max); parameters.idle_pwm_max);
} }
@ -334,37 +331,11 @@ void Treppe::set_active_pwm(const uint16_t value,
parameters.idle_pwm_max = 4095; parameters.idle_pwm_max = 4095;
} }
saveParam(); saveParam();
Serial.printf("Treppe: parameters.active_pwm=%d\n", parameters.active_pwm); Serial.printf("Treppe: parameters.active_pwm=%d\n", parameters.active_pwm);
} }
void Treppe::set_time_ldr(const uint16_t value) { void Treppe::set_time_per_stair(uint16_t _time_per_stair) {
parameters.time_ldr = value; parameters.time_per_stair = _time_per_stair;
if (parameters.time_ldr > TIME_MS_MAX)
parameters.time_ldr = TIME_MS_MAX;
saveParam();
Serial.printf("Treppe: time_ldr=%d\n", parameters.time_ldr);
}
void Treppe::set_time_per_stair(const uint16_t value) {
parameters.time_per_stair = value;
if (parameters.time_per_stair > TIME_MS_MAX)
parameters.time_per_stair = TIME_MS_MAX;
saveParam();
Serial.printf("Treppe: time_per_stair=%d\n", parameters.time_per_stair); Serial.printf("Treppe: time_per_stair=%d\n", parameters.time_per_stair);
}
void Treppe::set_ldr_schwelle(const uint16_t value,
const vorgabe_typ_t vorgabe_typ) {
if (vorgabe_typ == VORGABE_PROZENT) {
// ?!
parameters.ldr_schwelle = 10 * value / 100;
} else if (vorgabe_typ == VORGABE_12BIT) {
// parameters.ldr_schwelle = value;
}
saveParam(); saveParam();
Serial.printf("Treppe: ldr_schwelle=%d\n", parameters.ldr_schwelle);
} }

View File

@ -12,8 +12,7 @@
#define SENSOR_UNTEN 12 #define SENSOR_UNTEN 12
#define OE 14 #define OE 14
#define INT_TIME 20 // interrupt intervall [ms] #define INT_TIME 20 // interrupt intervall [ms]
#define TIME_MS_MAX 5000 // maximum time for animation [ms]
enum vorgabe_typ_t { VORGABE_PROZENT = 0, VORGABE_12BIT = 1 }; enum vorgabe_typ_t { VORGABE_PROZENT = 0, VORGABE_12BIT = 1 };
@ -101,10 +100,7 @@ public:
void saveParam(); void saveParam();
void set_idle_pwm_max(const uint16_t value, const vorgabe_typ_t vorgabe_typ); void set_idle_pwm_max(const uint16_t value, const vorgabe_typ_t vorgabe_typ);
void set_active_pwm(const uint16_t value, const vorgabe_typ_t vorgabe_typ); void set_active_pwm(const uint16_t value, const vorgabe_typ_t vorgabe_typ);
void set_time_per_stair(uint16_t _time_per_stair);
void set_time_ldr(const uint16_t value);
void set_time_per_stair(const uint16_t value);
void set_ldr_schwelle(const uint16_t value, const vorgabe_typ_t vorgabe_typ);
}; };
#endif // __TREPPE_H #endif // __TREPPE_H