sâmbătă, 27 august 2011

Structura unui program scris pentru un microcontroler

Structura unui program scris pentru un microcontroler este puţin diferită de structura programelor scrise pentru un calculator de uz general.Primele linii dintr-un program vor reprezenta bibliotecile pe care le utilizăm în cadrul aplicaţiei.Următoarea secţiune va fi reprezentată de declararea variabilelor globale şi de declararea/definirea funcţiilor program.Apoi urmează funcţia main, funcţia principală din program, cea care este prima executată la rularea programului.În această funcţie mai întâi se declară variabilele locale, dacă este nevoie ,apoi se fac setările diferitelor funcţii ale microcontrolerului.În ultima parte a funcţiei main se va crea o buclă infinită lucru care în mod normal nu ar fi dorit în programele scrise pentru calculatoarele personale.În această buclă are loc întreaga parte de prelucrare a datelor, restul fiind partea de setare.Atenţie mare, funcţiile microcontrolerului nu însemnă acelaş lucru cu funcţiile programului.De exempu pentru chipul ATMega8 programul ar trebui să urmeze modelul:

//partea de includere a bibliotecilor utilizate

#include ‹mega8.h›
//declararea/definirea functiilor si variabilelor globale
void main(void)
{
//declarea variabilelor locale
//realizarea setarilor microcotrolerului prin registrii de setare
while(1)
{
//partea de prelucrare a datelor
}
}

Când microcontrolerul este pornit mai întâi se va realiza setările funcţiilor chip-ului prin regiştrii de setare apoi el va cicla codul din bucla while până când apare un eveniment neaşteptat cum ar fi oprirea sursei de alimentare sau apariţia unei întreruperi.
Avatajul folosirii wizardului din CodeVision AVR este că el generează cod pentru structura de mai sus ,setările micorcontrolerului putând fi făcute vizual.De asemenea wizardul oferă şi explicaţii referitoare la setările pe care le-a realizat.

0 comentarii:

Trimiteți un comentariu

Twitter Delicious Facebook Digg Stumbleupon Favorites More