return 1; computer engineering and electronics
  • Home
  • Projects
  • About
  • Archive
Introduction to threads with C++11

Featured Article

Introduction to threads with C++11

Installing Eagle 6 on Fedora 17

Featured Article

Installing Eagle 6 on Fedora 17

Popular Articles

  1. No data yet..

Anjuta as an AVR development environment

Project: Anjuta as an AVR development environment

During the Google Summer of Code 2011 I started working on a project to transform Anjuta, the GNOME IDE, in a nice AVR development platform.

I want to accomplish this by integrating several Linux AVR tools into Anjuta, including the compiler (avr-gcc), the debugger (avr-gdb) and several gdb backends like averice, simulavr and simavr.

Project status: Temporarily on hold
Filled under: electronics gnome avr c programming

Share on twitter Share on google+

  • Project description
  • Code
  • Comments

Microcontrollers are very popular electronic components these days, just look how popular the Arduino platform is. Developing for microcontrollers is easy and fun, it's not hard to produce some flashy circuit. But the main target of this project is not the Arduino, it's for bare AVR microcontrollers.

AVR microcontrollers are one of the most popular types, and they're used by companies and also a lot of hobbyists. Developing on Linux is also quite easy as there's a GCC version for AVR's and the GNU Debugger also has AVR support. But, as with many things on Linux, they all are seperate command line programs and there isn't any good GUI program which integrates all these tools to provide an experience like AVR studio.

And that's where this project comes in, creating a plugin for Anjuta, a great GNOME IDE, to integrate the compiler, the debugger and some others tools to make AVR development a bit easier.

Tasks

  • Integrating the compiler, create a configure.ac file and the base Makefile.am files used for the GNU autoconf and automake tools. Probably a bit overkill for AVR projects, but it's a nice template which is not IDE dependent.

    I also want to make some changes to the Anjuta 'Configure' dialog, to allow the user to enter the target device and the CPU frequency. Currently, there's no way to do this from an Anjuta plugin, so this requires changes to the Anjuta core.

  • Create a project wizard, set up the file directory structure for the project, copy the required configure.ac and Makefile.am files, and the user is ready to go.

  • Integrate the debugger, start avr-gdb instead of the normal GDB, and use remote debugging to a (local)host with AVaRICE (JTAG bridge) or one of the simulators running. When running local, the preferred GDB backend should be started automatically.

Code

The latest code can be found on the Google Code Page: http://code.google.com/p/anjuta-avr. When you click on the 'Source' tab, you see a dropdown which allows you to select one of the repositories.

  • default, contains the Anjuta plugin source code.
  • anjuta-modifications, a fork of the anjuta core with my modifications.