Pages: 1 [2]   Go Down
Author Topic: Where to start for micro controllers (lower level than Arduino)?  (Read 1747 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 27
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

sorry i mean the Atmel ATmega chip, per se.
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 27
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

OK, looks like yes? on-board flash?

Quote
The AVR is a modified Harvard architecture 8-bit RISC single chip microcontroller which was developed by Atmel in 1996. The AVR was one of the first microcontroller families to use on-chip flash memory for program storage, as opposed to one-time programmable ROM, EPROM, or EEPROM used by other microcontrollers at the time.
Logged

Grand Blanc, MI, USA
Offline Offline
Faraday Member
**
Karma: 93
Posts: 3981
CODE is a mass noun and should not be used in the plural or with an indefinite article.
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Quick question: This processor, if it has memory built-in, is that volatile? Or does it actually retain code when power is off?

The AVR MCUs used in various Arduino are modified Harvard architecture machines (separate program and data space) and actually have three types of memory. Non-volatile flash for program memory, static RAM (volatile) for data, stack, etc., and EEPROM for non-volatile data storage.
Logged

MCP79411/12 RTC ... "One Million Ohms" ATtiny kit ... available at http://www.tindie.com/stores/JChristensen/

Offline Offline
Newbie
*
Karma: 0
Posts: 27
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Oooo, I found this, which looks amazing.

http://www.arduino.cc/en/Main/Standalone

Maybe this is my first project before diving into the other stuff...
Logged

Washington
Offline Offline
God Member
*****
Karma: 38
Posts: 790
Firefox & Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Oooo, I found this, which looks amazing.

http://www.arduino.cc/en/Main/Standalone

Maybe this is my first project before diving into the other stuff...
You can implement a standalone board with alot less parts.
Logged

Avoid throwing electronics out as you or someone else might need them for parts or use.
Solid state rectifiers are the only REAL rectifiers.
Resistors for LEDS!

Offline Offline
Newbie
*
Karma: 0
Posts: 27
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Any tutorial/walkthru URL?
tks!
Logged

Washington
Offline Offline
God Member
*****
Karma: 38
Posts: 790
Firefox & Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Any tutorial/walkthru URL?
tks!
Sort of.
http://arduino.cc/en/Tutorial/ArduinoToBreadboard
But you do not necessarily need to upload a bootloader.
You can simply upload your programs directly to the raw chip using the Arduino as an ISP.
And the UNO CAN be used as an ISP even though it says it cannot.
Also I would recommend using 100 ohm resistors between the chip and the Arduino in case one outputs high and the other low on the SPI pins or vice versa.
« Last Edit: January 15, 2012, 10:07:08 pm by smeezekitty » Logged

Avoid throwing electronics out as you or someone else might need them for parts or use.
Solid state rectifiers are the only REAL rectifiers.
Resistors for LEDS!

Offline Offline
Newbie
*
Karma: 0
Posts: 27
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

ok thanks; all this stuff is really interesting!
i feel like i was asleep for the past few years and suddenly my eyes are open!
Logged

Left Coast, CA (USA)
Offline Offline
Brattain Member
*****
Karma: 361
Posts: 17263
Measurement changes behavior
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Oooo, I found this, which looks amazing.

http://www.arduino.cc/en/Main/Standalone

Maybe this is my first project before diving into the other stuff...

That sounds constructive to me. Personally I would rather spend time building projects to do useful or at least fun stuff rather then learning how to program the AVR in assembly language. C/C++ gives you all the low level control you or the chip will ever need and the optimizer in the gcc compiler is said to generate code as efficient as required or better then all but the most experienced assembler programmers.
Logged

Belgium
Offline Offline
Full Member
***
Karma: 0
Posts: 144
Just Do it (with Arduino of course)
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset


That sounds constructive to me. Personally I would rather spend time building projects to do useful or at least fun stuff rather then learning how to program the AVR in assembly language. C/C++ gives you all the low level control you or the chip will ever need and the optimizer in the gcc compiler is said to generate code as efficient as required or better then all but the most experienced assembler programmers.

Hi,

Personnally fully support the idea to "leave the low level for when it's really needed". Especially at the beginning, it's far more gratifying to be able to make things work, and try new stuff than banging one's head on the wall coz' you don't understand where it fails.

I guess this can be more a general gcc question, but do you have an idea of how efficient gcc really is ? I read somewhere else that the "digital read" function of Arduino was about 20 instructions, while it's just a "bit check" in terms. Of course maybe this doesn't come from the compiler.

I understand that a #define as a "compiler directive" takes zero instruction.
Logged

Pages: 1 [2]   Go Up
Jump to: