Friday, January 04, 2008

I'm a happy camper!

Sometimes it's the little things that make life better. Today I managed to properly setup my ISP and C development environment for my AT Mega 128 development board (under Linux of course). I ran a very simple blink the LED program. I properly set the fuses so the Mega128 was running off it's internal 1MHz RC (later I'll test the 16MHz XTAL), set the port for output and I toggled the bits on and off in a never ending loop. This wasn't some major success such as writing a difficult algorithm or stomping on a stack bug but rather a confidence builder that my development environment and my basic understanding of the processor are correct. I'll have to go through this for my MSP430 and AVR32 setup also. In the mean time I'll test out my JTAG interface (I did the initial test with the ISP) and then proceed to do some debugging and manual toggling of the IO bits.

This isn't the first micro-controller development environment I've worked with. I setup an 80251 development enviroment using SDCC. That worked out very well. I also have a ton of other controllers (ARM and MIPS) but they used Linux as the underlying OS. The smaller controllers, like the PIC 14 bit family (using CCS's mid-range compiler), MSP430 and AVR (using GCC), have no OS and need a bit more care and feeding. I enjoy working within these tight environments (like only 256 bytes, note the lack of a K or M!). You're in charge and you're responsible for the havoc wreaked by your mistakes. ;-)

Today I also received my AVR32 board running AVR32 Linux. This looks like it will be perfect for another project I'm working on. All home automation related of course. :-).


At 1/15/2008 10:40 AM, Blogger Jason said...

I would like to know if you are running the AVR Studio for programming your ATmega128 board or using GNU tools? The reason I ask is that I saw the AVR32 GNU tool chain Atmel offers but I didn't see one for the ATmega128 ones. Or are they supported by SDCC?


At 1/15/2008 11:06 AM, Blogger Neil Cherry said...

I'm not using AVR Studio, it's all gcc (one of the many gcc processor specific compiler suites). Specifically I'm running the avr-gcc for the AVR, msp430-gcc for the TI MSP430 family, arm-uclibc-gcc for the ARM processor and xscale-linux-gcc for XScale under Linux. I also have arm-elf-gcc for some other project I can't remember and arm-linux-gcc for the ARM D-Link DSM320 project. Each is a unique gcc environment.

BTW, I haven't installed the AVR32 gnu tool chain yet but I expect something like avr32-gcc will be found in it's tool chain.


Post a Comment

<< Home