Programming Arduino uC

Hi all.
I am a PIC uC user, but one friend of mine gave me as a gift an Arduino Duemillanove. I really enjoyed that little board., but you know.. old habbits die hard. Is there any way to program the atmel uC like a regular uC i mean by using ports, timers, interrupts accesing the sfr registers?
If it is do you know any good tutorial?
Thanks in advance

There's nothing stopping you hitting the hardware directly if you want. The manufacturer publishes data sheets for the microcontroller and you could review the Arduino runtime library to see examples of using it. But if you're going to do that it rather defeats the point of using an Arduino, since the whole point of the Arduino project is to hide that complexity away from you and give you a nice easy programming interface.

The compiler used by the Arduino IDE seems to produce very good assembler code. I doubt if it would be worth while doing it manually except for short bits of code in very special circumstances. As far as I know the Arduino system allows full access to the Atmel hardware (ports, timers, interrupts etc.) and you can include inline assembler code when the need arises.

Just because it's easier doesn't mean it's worse :slight_smile:


Yes, you can mix registers programming with C and C++ in the Arduino IDE.
That is done for special things that are not in the library.

The website is the main website for the Atmel chips without Arduino. After you login, you can access the ‘Projects’ section, you will find everything you ever thought about.

I started with register programming, but after trying Arduino, I don’t want to go back. It is so much easier to use shields (like the Ethernet Shield) and sensors (like the BMP085) and use existing well tested libraries.