|
|
|
Tools
All the tools listed on this page are installed into the Atmel emulator PC in room TS139.
CompilersAvailable compilers are IAR Embedded Workbench for Atmel AVR or GNU AVR-gcc.IAR Embedded Workbench for Atmel AVR includes an IDE environment for writing the code and compiling it. It is easy to use with user frienldy graphical user interface. It does not support C++, only C. Manufacturers web site is www.iar.com. If you do not have previous knowledge about compilers, this is the preferred compiler for embedded systems project. See manuals: - Embedded Workbench user's guide - XLINK linker's manual - Compiler reference guide - General C library definitions - AVR assembler manual - AVR EEPROM howto - Some template files to get started GNU AVR-gcc is a free compiler for Atmel AVR-series controllers. It is available for both Windows and Linux OS:s. AVR-gcc is text based compiler which uses makefiles, but you can use it with the "Programmers Notepad" very easily. If you want to make code at home, you can use this compiler. Download or read more about it here. For starting the code development, download our short instructions and some templates here. GNU-compiler can also be integrated to the Atmel AVR Studio 3.5x IDE-environment (Note: This is a different version than used with the emulator), but we recommend that you use the "Programmers notepad" that comes with the latest WinAVR-package. Bugs in AVR-gcc: - There are some problems with handling initialized arrays, for example char myarray[5]="Test"; You must put initialized arrays into Flash (program) memory instead of SRAM. This means, that you should use program space macros: #include \ ... char myarray[5] PROGMEM = "Test"; When accessing myarray from program space, replace strcpy with strcpy_P, memcpy with memcpy_P and so on. EmulatorATICE 50 is an emulator for Atmel AVR-microcontrollers. It supports several different controllers. The ones that you can choose for embedded system project are listed here.The ATICE50 is used with the Atmel AVR Studio 4.x. It is freely available at Atmel web site so you can study it at home if you wish. The manuals for the ICE50 emulator and the Atmel Studio are available as Atmel Studio 4.x help files (open Atmel studio and click help menu). There is no printed version. ![]() The ICE50 supports the following features: - Emulates All Digital and Analog Peripherals - Target Voltage Range 2.2V - 5.5V - Full Target Frequency Range for All Supported Devices - Watches - Trace Buffer - Unlimited Number of Breakpoints - Symbolic Debugging Support - Full Visibility of and Access to Register File, SP, PC and Memories - Access to all I/O Registers - I/O configurable to Run or Halt in Stopped Mode - Supported File Formats - UBROF8 - COFF - Cycle Counter The ATICE50 contains the following items: ICE50 main unit / pod / two FPC (flexible printed circuit) cables & Probe Personality adapters for: - ATmega8 - ATmega16 - ATmega162 - ATmega32 - ATmega128 - ATtiny26 - ATtiny28 9-pin RS232C cable USB cable Power Supply European Power Supply Cable JTAG-emulatorJTAG-ICE is an in-circuit-emulator that uses the standard JTAG-interface. It is used with a normal microcontroller by attaching it to a few of its pins. It supports several different microcontrollers, such as ATmega32.See its datasheets: - Flyer - User's guide Flash ProgrammerPonyProg2000 is a software used for downloading the code to a real microcontroller. It is freely available to anyone here. A brief introduction how to flash a microcontroller is found here.There is no particular physical programmer tool that would be used for programming the microcontroller. Since the MCUs used in embedded systems project are all In System Programmable, we use that feature. The programming is done by attaching the serial port of a computer almost directly to the MCU. Only the voltage levels must be adjusted. See "flashing"-page for more details. |