21.02.2015 Views

Manipulator przeznaczony do celów dydaktycznych - Laboratorium ...

Manipulator przeznaczony do celów dydaktycznych - Laboratorium ...

Manipulator przeznaczony do celów dydaktycznych - Laboratorium ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

31<br />

Rozdział 4<br />

Oprogramowanie sterownika<br />

Sterownik robota jest zbu<strong>do</strong>wany w oparciu o mikrokontroler MC68332. Oprogramowanie<br />

dla tego mikrokontrolera można napisać w języku asembler C oraz C++. W tym przypadku<br />

oprogramowanie zostało napisane w języku C z użyciem makr w asemblerze. Oprogramowanie<br />

sterownika robota ZS5R zostało przygotowane w śro<strong>do</strong>wisku HI-CROSS<br />

firmy HIWARE. Zasadniczymi częściami programu sterownika są funkcja główna main()<br />

oraz procedura obsługi przerwania cyklicznego interrupt void int_PIT().<br />

4.1 Funkcja główna main()<br />

Na początku funkcji main() wywoływane są procedury inicjujące podstawowe bloki mikrokontrolera<br />

SIM, TPU, QSM oraz inicjowana jest początkowa wartość prądu regulatorów.<br />

sim_init(); /* inicjalizacja modulu SIM */<br />

qsm_init(); /* inicjalizacja modulu QSM */<br />

tpu_init(); /* inicjalizacja modulu TPU */<br />

Cur_init();<br />

/* ustawienie prądów zerowych regulatorów*/<br />

Funkcja sim_int() między innymi konfiguruje port E i ustawia wektor i poziom przerwania<br />

cyklicznego PIT<br />

/*Konfiguracja przerwania cyklicznego*/<br />

*((void (**) ())(4*PI_VECT)) = int_PIT; /* ustawienie wektora */<br />

PICR = (PI_LEVEL

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!