260 likes | 445 Views
Programming Embedded Systems. By:. Hands on Experience with AVR32. Stefan Persson Mazhar Hussain Muhammad Amir Yousaf. stefan.persson@miun.se mazhar.hussain @miun.se amir.yousaf@miun.se. Tutorial Overview. Introduction to Development Board
E N D
ProgrammingEmbedded Systems By: Hands onExperience with AVR32 Stefan Persson Mazhar Hussain Muhammad Amir Yousaf stefan.persson@miun.se mazhar.hussain @miun.se amir.yousaf@miun.se amir.yousaf@miun.semazhar.hussain@miun.se
TutorialOverview amir.yousaf@miun.se mazhar.hussain@miun.se • Introduction to Development Board • µ-Controller • Sensors • Display • Peripherals • AVR Studio Getting Started • Workspace creation • Project creation • Project building • Target creation and Loading Program • Course Objective • Live Demonstration
µ-ControllerSensors Display Peripherals Introduction to Development Board amir.yousaf@miun.se mazhar.hussain@miun.se • EVK1100 • Evaluation kit and development system for the AVR32UC3A family • EVK1100 is a fully functional embedded computer system. • Circuit board has a flexible power system that accepts 8-20V DC input and can be operable via USB port. • The EVK1100 embeds an Atmel Data flash (8MBytes) and a SDRAM (32MBytes). • Several communication interfaces are available on the EVK1100: RS232, USB and ETHERNET.
µ-ControllerSensors Display Peripherals Block Diagram EVK1100 amir.yousaf@miun.se mazhar.hussain@miun.se • A JTAG connector is provided to interface JTAGICE mkII (Programmer and debugger) . • EVK1100 provides three clock inputs for controller • Main clock Oscillatior i.e 12MHz • A spare clock Oscillator i.e 12MHz • RTC clock at 32.768 KHz
µ-Controller Sensors Display Peripherals Published BY ATMEL amir.yousaf@miun.se mazhar.hussain@miun.se
µ-Controller Sensors Display Peripherals amir.yousaf@miun.se mazhar.hussain@miun.se • Lowest power Consumption (2xAA battery=19years) • Support High data throughput. • High Speed Communication Interfaces • USB up to 480 Mbit/s • Ethernet up to 100 Mbit/s • SPI up to 33 Mbit/s • SSC up to 33 Mbit/s (I2S) • USART up to 33 Mbit/s • UART up to 4 Mbit/s • I/O pin toggle up to 33 MHz
µ-Controller Sensors Display Peripherals amir.yousaf@miun.se mazhar.hussain@miun.se • Support Provided : • Optimized drivers for all peripherals to speed up development. • Floating point and DSP arithmetic • USB and TCP/IP stacks • Optimized audio, picture and video codec's, display drivers, TCP/IP services, web server, FAT12/16/32 file system, plus a complete freeRTOS Real Time OS
µ-Controller Sensors Display Peripherals Published BY ATMEL amir.yousaf@miun.se mazhar.hussain@miun.se
µ-Controller Sensors Display Peripherals amir.yousaf@miun.se mazhar.hussain@miun.se
µ-Controller Sensors Display Peripherals • 4x20 LCD to Design Human to Machine Interface for Soft. Development amir.yousaf@miun.se mazhar.hussain@miun.se
On Board Peripherals: • µ-Controller Sensors Display Peripherals amir.yousaf@miun.se mazhar.hussain@miun.se • USB (2.0 mini A-B receptacle) • Ethernet (External Ethernet Phy 10/100 and RJ45 connector) • Atmel DataFlash (8 MBytes) • SDRAM (32 MBytes) • USARTs (Dual) • LEDs on board (Six) • Push Buttons (Three excluding Reset Push button) • Joystick • SD/MMC slot • SPI (Two SPI interface one is dedicated for LCD one free) • TWI (Two wire Interface)
Expansion Connectors: • µ-Controller Sensors Display Peripherals >>SSC, PWM output 0 to 6,Timer A and timer B,TWI,ADC inputs line 0 to 7, SPI 0 to 1,USART 0 to 3,MAC,GPIO amir.yousaf@miun.se mazhar.hussain@miun.se
TutorialOverview amir.yousaf@miun.se mazhar.hussain@miun.se • Introduction to Development Board • µ-Controller • Sensors • Display • Peripherals • AVR Studio Getting Started • Workspace creation • Project creation • Project building • Target Creation and Loading Program • Course Objectives • Live Demonstration
AVR Studio Getting Started • Workspace creation • Project creation • Project building • Target Creation & Loading program • Start -> Program -> Atmel AVR Tools -> AVR32 Studio amir.yousaf@miun.se mazhar.hussain@miun.se
Workspace creation • Project creation • Project building • Target Creation & Loading program • Running your own Project • Click File >> New >> Project >>AVR32 C Project From Template amir.yousaf@miun.se mazhar.hussain@miun.se • Running an Example Project • Click File >> New >> Project >>AVR32 Example Project
Building a Project • Select the project from the project plan (on left side of the window) and right click • Click ‘Build Project’ • Workspace creation • Project creation • Project building • Target Creation & Loading program • Build complete for project ’myproject’ • ’Debug’ directory will be added in the workspace • myproject.elf will be created in the Debug directory and is ready to be loaded in the controller amir.yousaf@miun.se mazhar.hussain@miun.se
Workspace creation • Project creation • Project building • Target Creation & Loading program amir.yousaf@miun.se mazhar.hussain@miun.se • For Programming EVK1100 there are three listed methods available, (Note: we can use two among them) • In system Programming (ISP) • Programming Via JTAG port • Self Programming via One chip BOOT program • Tool for using programming is JTAG or USB cable (for ISP) • JTAG ICE mkII
Workspace creation • Project creation • Project building • Target Creation & Loading program amir.yousaf@miun.se mazhar.hussain@miun.se • For Programming EVK1100 weneed to add a Target • Scan the target as shown in Picture
Workspace creation • Project creation • Project building • Target Creation & Loading program amir.yousaf@miun.se mazhar.hussain@miun.se • Configure the target device i.e JTAGICE mkII for downloading your program
Loading Code in the Micro-controller • Loading through USB DFU • Loading through JTAG • Workspace creation • Project creation • Project building • Target Creation & Loading program On EVK1100 Press the joystick downwards and hold it. Now press the re-start button to put the device in programming mode • On AVR Studio • Right-click on target for USB-programming and click program. • Browse the target file and press ‘ok’ in newly appeared window to start loading the program amir.yousaf@miun.se mazhar.hussain@miun.se
Loading Code in the Micro-controller • Loading through JTAG • Workspace creation • Project creation • Project building • Target Creation & Loading program • Right click on JTAGICE mkII and click on ‘Program’. • Browse the target .elf file and press ok to start loading amir.yousaf@miun.se mazhar.hussain@miun.se
TutorialOverview amir.yousaf@miun.se mazhar.hussain@miun.se • Introduction to Development Board • µ-Controller • Sensors • Display • Peripherals • AVR Studio Getting Started • Workspace creation • Project creation • Project building • Target creation and Loading Programs • Course Objective • Live Demonstration
Application • SENTIO32: • A latest platform that is very compact with (IEEE802.15.4 compatible (Zigbee)) and processor (AVR32) on the same board. • It is a Development Board, can be used for variety of wireless sensor applications amir.yousaf@miun.se mazhar.hussain@miun.se • Our WSN Platform (Sentio) • Number of different platforms targeting different application areas • SENTIO a stackable platform developed in 2004 (IEEE802.15.4 compatible(Zigbee), having three layers i.e communication layer, processing layer (Atmel Mega 128L 8-bit uC), and analog/digital interfaces to sensor layer. Sufficient for short range communication. • SENTIO-HP high-precision wireless instrument that can be used for characterizing processes • SENTIO-BT for urban sensing applications. • SENTIO-e2 for environmental monitoring, communicating at 433MHz at ranges up to 1 km. Global communication via GSM/GPRS or to a PC via USB
TutorialOverview amir.yousaf@miun.se mazhar.hussain@miun.se • Introduction to Development Board • µ-Controller • Sensors • Display • Peripherals • AVR Studio Getting Started • Workspace creation • Project creation • Target creation • Project building and Downloading • Course Objective • Live Demonstration
Demonstration amir.yousaf@miun.se mazhar.hussain@miun.se