This is an old revision of the document!
Seotud mooduliga: [HW] Mootorite moodul
See teegi osa sisaldab Kodulabori koodrite kasutamise funktsioone.
Seadistab valitud koodri ja selle sisendviigud. Parameetrid:
Nullib valitud koodri ja käivitab loendamise. Parameetrid:
Koodri loendatud pulside arvu küsimine. Parameetrid:
// // Kodulabori koodri kasutamise näide. // LCD-le kuvatakse koodri klikkide arv.. // #include <stdio.h> #include <homelab/module/lcd_gfx.h> #include <homelab/delay.h> #include <homelab/module/encoders.h> #include <homelab/module/buzzer.h> #include <homelab/pin.h> // Nupu viik pin button2 = PIN(C, 1); // // Põhiprogramm // int main(void) { unsigned short pulses = 0; char text[16]; // Seab nupu töökorda pin_setup_input_with_pullup(button2); // Seadista kooder encoder_init(0); // Nulli ja käivita loendamine. encoder_reset_pulses(0); // LCD ekraani algseadistamine lcd_gfx_init(); // Ekraani puhastamine lcd_gfx_clear(); // Taustavalgustuse tööle lüitamine lcd_gfx_backlight(true); // Programmi nime kuvamine lcd_gfx_goto_char_xy(3, 1); lcd_gfx_write_string("Kooder"); // Lõputu tsükkel while (true) { pulses = encoder_get_pulses(0); // Stringi moodustamine. sprintf(text, "Pulsse: %d",pulses); lcd_gfx_goto_char_xy(0, 3); lcd_gfx_write_string(text); // Nupp S2 alla vajutatud if(!pin_get_debounced_value(button2)) { // Nulli ja käivita loendamine. encoder_reset_pulses(0); // Tee piiksatus buzzer_sound (60, 100); // Kustuta eelmine number lcd_gfx_write_string(" "); } // Tarkvaraline paus 10 millisekundit sw_delay_ms(10); } }