 |
By: q209 (offline) on Monday, December 15 2008 @ 04:20 PM PST (Read 7554 times)
|
|
|
q209 |
| q209 |
|
There seems to be a lot of reference material available - but most of it presumes foreknowledge of many #defines, general AVR architecture and capabilities, etc. I'm spending a *lot* of time searching and reading include files and gcc libraries every time I read a new line of code... 
Are there some good books that folks would recommend that put everything (or at least most things in one place?
Thanks -
Kevin
|

Henchperson
Status: offline
Registered: 12/15/08 Posts: 34
Central Valley, CA
|
|
|
|
|
 |
By: Anonymous: trialex () on Tuesday, December 16 2008 @ 02:40 PM PST
|
|
|
Anonymous: trialex |
| Anonymous: trialex |
|
|
|
|
|
|
|
|
 |
By: q209 (offline) on Tuesday, December 16 2008 @ 03:07 PM PST
|
|
|
q209 |
| q209 |
|
Thanks for the reply! I'm not looking for C or C++; just looking for AVR specifics.
Wendell - your brain available for a Kinkos run? 
Kevin
|

Henchperson
Status: offline
Registered: 12/15/08 Posts: 34
Central Valley, CA
|
|
|
|
|
 |
By: Windell (offline) on Tuesday, December 16 2008 @ 03:15 PM PST
|
|
|
Windell |
| Windell |
|
Going with a book on C (probably not C++!) is one way to go; I'm not sure that it's the best.
My strategy has always been to get take somebody else's program that does *something* and get it to work-- jump through the hoops of compiling or whatever-- just to get to that stage. Then, try to make a tiny modification to the program. If it's something that blinks an LED for 50 ms, change it to blink for 100 ms, or somehow otherwise make a change that you'll be able to see. See if you can make this change, compile and execute, and have it *still work.*
I say, *ignore* the #defines, architecture and capabilities-- and just get started. You shouldn't be doing deep searching in any libraries-- that's very, very hard, even for me. Compartmentalize. Define a small, simple problem that you want to solve that's already very obviously within the hardware capabilities of an existing setup. Little kits are *great* for this-- if you get a MiniPOV, all it does is blink a bunch of LEDs in a particular sequence. If you set it up and get it working, then you know that blinking LEDs-- pretty much however you want to-- is something within the capabilities. Once you can start to mess with things, you can gradually-- one at a time-- learn to add details that you want to. Loops, if's cases, and so on. Once you are comfortable with it, you can start branching out a bit more, and eventually you'll get to the point that you're ready to move on to a different set of hardware to play with, using different features of the AVR. When you're ready to start looking deeper, you'll know it and be ready for it, and it won't hurt as much.
Windell H. Oskay
drwho(at)evilmadscientist.com
http://www.evilmadscientist.com/
|

Evil Scientist
 Status: offline
Registered: 06/15/06 Posts: 1932
Sunnyvale, CA
|
|
|
|
|
 |
By: q209 (offline) on Tuesday, January 13 2009 @ 03:55 PM PST
|
|
|
q209 |
| q209 |
|
Windell -
I learned C the hard way back in '82, by reading K&R's "The C Programming Language". There weren't many books on C back then! Still have two first edition copies, and one of edition two...
I found some resources that folks may find helpful. On the web, there's http://users.rcn.com/rneswold/avr/ , describing the GNU tools. Not a lot of depth, but reasonable coverage, and it seems a complete reference with a few examples.
For books, I found two that look promising. First, and most expensive, is Embedded C Programming and the Amtel AVR . While written around a proprietary development environment, it seems very thorough and complete. Some folks recommend Programming and Customizing the AVR Microcontroller . A lot cheaper; some people like it, some think it's too light.
Always looking for more books and bookmarks!
Kevin
|

Henchperson
Status: offline
Registered: 12/15/08 Posts: 34
Central Valley, CA
|
|
|
|
|