marți, 1 octombrie 2013

Curs aplicaţii cu Microprocesoare


Cursul Aplicaţii cu Microcontrollere reprezintă un material didactic destinat amatorilor de aplicaţii cu Microcontrollere, cât şi ca materie suplimentară la cursurile universitare în acest domeniu.

Ca referinţă a fost selectat un microcontroller din seria AVR de la compania producator Atmel, iar aplicaţiile vor fi proiectate în mare parte pentru Microcontrollerul ATmega16, care are majoritatea modulelor necesare pentru rezolvarea problemelor din cadrul acestui curs. Deci cursul va conţine descrieri a unor teme şi soluţii ale unor probleme tipice. Am selectat seria AVR în special pentru arhitectura relativ simplă faţă de concurenţii săi principali. Totodată, o pondere mare spre selecţia lui a fost accesibilitatea lui pe piaţă şi preţul acceptabil. Materialele vor fi prezentate în aşa mod ca să fie aplicabile şi pentru alte arhitecturi, diferite de AVR.

Cursul va fi împărţit în două compartimente:
  1. Arhitectura Nucleului Microcontrollerului. Programare ASM - în acest compartiment se analizează în detaliu structura nucleului microcontrollerului, modul de funcţionare şi modul de lucru cu componentele acestuia prin programare la nivel jos în limbajul ASM.
  2. Programare Microcontrollere în limbajul C. Module periferice.  - unde se va face o iniţiere în programarea Microcontrollerilor în Limbajul C, se va accentua specificul programării Microcontrollerilor în acest limbaj, luat ca unul de nivel înalt. Aplicaţiile vor fi orientate în special spre lucrul cu periferiile Microcontrollerului şi realizarea de aplicaţii cu acestea.
În cadrul acestui curs ve-ţi găsi de asemenea şi exemple de probleme rezolvate care pot servi drept referiţă pentru proiecte mai complexe, la elaborarea lor s-a pretins spre a a le realiza într-un mod mai simplu pentru o inţelegere mai uşoară a soluţiei.

Ca un cuprins de referinţă este prezentat mai jos, care în timp va fi ajustat şi completat.

1. Arhitectura Nucleului Microcontrollerului. Programare ASM
  1. Arhitectura Microcontrolerului. Organizarea memoriei
  2. Module periferice Modulul periferic GPIO - Port Generic de Intrare/Ieşire.
  3. Sistemul de comenzi al microcontrollerului AVR
  4. Iniţire în programare ASM. Stiva. Subrutina, Subrutina cu parametri.
  5. Realizarea construcţiilor algoritmice de bază: condiţii, selecţie multiplă, cicluri.
  6. Constante. Logica booleana. Masca.
  7. Acces direct la memoria SRAM, Variabile, Operaţii cu Variabilele 
  8. Acces indirect la memoria SRAM, Tablouri, Prelucrarea tablourilor.
  9. Întreruperi, Programe cu întreruperi. Întreruperea RESET.
  10. Întreruperea externă.
  11. Watchdog Timer
2. Programare Microcontrollere in limbajul C. Module periferice
  1. Iniţiere în Limbajul C. Structuri de date, functii
  2. Instructiuni ale limbajului C Programe cu întreruperi, acces la periferii
  3. Modulul periferic TIMER0, Contor de timp-evenimente
  4. Modulul periferic TIMER1, mod OC, IC, PWM
  5. Interfeţe analogice. Module periferice AC şi ADC
  6. Interfeţe seriale. Modulele periferice SPI şi UART
  7. Programare eficient în C pentru MCU, Interactiune C-ASM
Ca referinţe a acestui curs sunt luate: Notele de curs a cursurilor universitare "Microprocesoare" şi "Microsisteme", informaţii de pe  bloguri similare. Însă cea mai bogată sursă de inspiraţie totuşi ramîne documentaţia tehnică (Datasheet) şi Appnote-uri de la compania producător Atmel.


Aştept prezenţa voastră prin comentariile pe care le puteţi adăuga.

Lectura placuta...