This is an old revision of the document!


Table of Contents

Kooder

Koostamisel

Seotud mooduliga: [HW] Mootorite moodul

See teegi osa sisaldab Kodulabori koodrite kasutamise funktsioone.

Funktsioonid

  • void encoder_init(unsigned char index)

Seadistab valitud koodri ja selle sisendviigud. Parameetrid:

  • index - Koodri number. Väärtus 0 kuni 1.
  • void encoder_reset_pulses(unsigned char index)

Nullib valitud koodri ja käivitab loendamise. Parameetrid:

  • index - Koodri number. Väärtus 0 kuni 1.
  • unsigned short encoder_get_pulses(unsigned char index)

Koodri loendatud pulside arvu küsimine. Parameetrid:

  • index - Koodri number. Väärtus 0 kuni 1.
  • Tagastab pulsside arvu.

 

Näide

//
// 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("    ");
		} 
 
		// Riistvaraline paus 10 millisekundit
		sw_delay_ms(10);
	}
}
et/software/homelab/library/module/encoder.1329685421.txt.gz · Last modified: (external edit)
CC Attribution-Share Alike 4.0 International
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0