Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.
Obě strany předchozí revize Předchozí verze Následující verze | Předchozí verze | ||
2015:microbrewery [2016/01/15 21:55] Lukáš Janík |
2015:microbrewery [2016/01/15 22:03] (aktuální) Lukáš Janík [Timer] |
||
---|---|---|---|
Řádek 163: | Řádek 163: | ||
void display_printxy(const char *text, uint8_t x, uint8_t y); | void display_printxy(const char *text, uint8_t x, uint8_t y); | ||
</code> | </code> | ||
+ | |||
+ | ==== Menu ==== | ||
+ | |||
+ | Menu strings are saved in string array. On display redraw, string adressed by global "menu index" variable is shown. First button controls rolling over menu nodes (menu index), remaining two buttons control change of variable of interest (temperature, stir, program flow). | ||
==== RTC ==== | ==== RTC ==== | ||
Řádek 180: | Řádek 184: | ||
</code> | </code> | ||
- | ==== Timer ==== | + | ===== Timer ===== |
Single 16b timer clocked at 125kHz and 3 CC units are used as interval timers. | Single 16b timer clocked at 125kHz and 3 CC units are used as interval timers. | ||
* CC0 (20ms) handles phase outputs (LFPWM). | * CC0 (20ms) handles phase outputs (LFPWM). | ||
- | * CC1 (100ms) handles redraw of the display (1s), calculation of the PID (3s) and increments brewing program counter. | + | * CC1 (100ms) handles redraw of the display (1s), calculation of the PID and ADC triggering (3s) and increments brewing program counter. |
* CC2 (1,6ms) serves for buttons debounce | * CC2 (1,6ms) serves for buttons debounce | ||