Jazyk C (optional)



Pre programovanie mikrokontrolérov sa nám osvedčil programovací jazyk C. V ďalšom texte uvádzame spôsoby realizácie niektorých činností uC Atmega32. Časti kódu boli napísané a overené vo vývojovom prostredí AVR Studio 4.19 (html kód je generovaný pomocou http://tohtml.com/cpp/:

#include <avr/io.h>
#include <avr/interrupt.h>

#define F_CPU 16000000
#include <util/delay.h>

NASTAVENIE (SET) na 1

// nastav byte (register) ako celok na pozadovanu hodnotu
	PORTC = 0x0F;
	PORTC = 1<<PC1 | 1<<PC0;

// nastav uplne cely byte (register) - vsetky bity (bit7...bit0) na 1
	PORTC = 0xFF;

// nastav jeden bit (ostatne bity bez zmeny)
	PORTC |= 1<<PC7;

// nastav niekolko bitov (ostatne bity bez zmeny)
	PORTC |= 1<<PC6 | 1<<PC5 | 1<<PC4;

VYNULOVANIE (CLEAR) na 0

// vynuluj uplne cely byte (register) - vsetky bity (bit7...bit0) na 0
	PORTC = 0x00;

// vynuluj jeden bit (ostatne bity bez zmeny)
	PORTC &= ~(1<<PC7);

// vynuluj niekolko bitov (ostatne bity bez zmeny)
	PORTC &= ~(1<<PC6 | 1<<PC5 | 1<<PC4);

DOPLNOK (COMPLEMENT) z 0 na 1 a naopak z 1 na 0

// vymen uplne cely byte (register) - vsetky bity (bit7...bit0) z 0 na 1 a naopak
	PORTC = ~PORTC;

// vymen jeden bit (ostatne bity bez zmeny)
	PORTC ^= 1<<PC7;

// vymen niekolko bitov (ostatne bity bez zmeny)
	PORTC ^= 1<<PC6 | 1<<PC5 | 1<<PC4;

TESTOVANIE ci je/su bit/bity nastavene (SET) na 1

// testuj jeden bit samostatne ci je nastaveny na 1
	if (PINC & 1<<PC6) ...

// testuj jeden z viacerych bitov ci je nastaveny na 1
	if ((PINC & 1<<PC7) || (PINC & 1<<PC6) || (PINC & 1<<PC5)) ...

// testuj vsetky viacere bity ci su nastavene na 1
	if ((PINC & 1<<PC7) && (PINC & 1<<PC6) && (PINC & 1<<PC5)) ...

TESTOVANIE ci je/su bit/bity vynulovane (CLEAR) na 0

// testuj jeden bit samostatne ci je vynulovany na 0
	if (!(PINC & 1<<PC6)) ...

// testuj jeden z viacerych bitov ci je vynulovany na 0
	if (!(PINC & 1<<PC7) || !(PINC & 1<<PC6) || !(PINC & 1<<PC5)) ...

// testuj vsetky viacere bity ci su vynulovane na 0
	if (!(PINC & 1<<PC7) && !(PINC & 1<<PC6) && !(PINC & 1<<PC5)) ...



Archív programov

Súbory .c (zdrojové kódy programov v jazyku C) možno otvoriť nielen vo vývojovom prostredí AVR Studia, ale aj v textovom editore. Odporúčame textový editor PSPad.

PaedDr. Karol Pauchly, ZŠ s MŠ Chlebnice, október 2014