Computer Engineering
6 ECTS; 2º Ano, 2º Semestre, 28,0 T + 42,0 PL + 5,0 OT + 5,0 O

- Manuel Fernando Martins de Barros

Not applicable.

The main objective is to provide the student with a basic understanding of the design, development and implementation of microcontroller-based systems. This includes the study of the architecture, programming, I/O interfacing, communications and task scheduling focusing on real-time applications.

1) Introduction to microcontrollers
2) MCS51, PIC and AVR microcontrollers family.
3) Programming and development tools
4) Digital and analog I/O interfaces
5) Routines and Interrupt system
6) Timers
7) Serial communication (UART, SPI) and remote communications (Ethernet, bluetooth, wifi)
8) Address decoding
9) Miniproject focusing on real-time applications

Evaluation Methodology
Written exam (40%), labs (30%) and mini project (30%).

- Http://www.arduino.cc/, A. (0). Arduino - Getting Start, Learning and examples. Acedido em 8 de junho de 2012 em http://www.arduino.cc/
- Http://www.mikroe.com/, M. (0). PIC Microcontrollers - Programming in C. Acedido em 8 de junho de 2012 em http://www.mikroe.com/eng/product_downloads/download/
- Intel, I. (0). MCS-51 Family of Single chip Microcomputers, User´s Manual. Acedido em 8 de junho de 2012 em http://www.industrologic.com/MCS51FamilyUsersGuide.pdf
- Smith, A. (0). Introduction to Arduino. Acedido em 22 de fevereiro de 2016 em http://www.introtoarduino.com/

Method of interaction
Lectures, tutorials and laboratory classes. Final project.

Software used in class
Ride7 Development Software (www.raisonance.com/ride7.html)
Arduino IDE (arduino.cc)
Eclipse IDE (eclipse.org)
Atom (atom.io)
Microsoft Visual Studio (www.visualstudio.com)
Atmel Studio (www.atmel.com/microsite/atmel-studio)