Page 1 of 2 12 LastLast
Results 1 to 10 of 13

Thread: ATTN: Programers!

  1. #1
    Join Date
    Dec 2006
    Location
    denver,co
    Posts
    1,078

    Default ATTN: Programers!

    HI guys and gals, I want to try to learn to program. More specifically C. I want to be able to program embedded processors some day. Do any of you have any suggestions. I can sort of read some c and get a jest of what is going on but I need something that will help with the basics and work my way from there.

    I realize that this is a long term goal and I am not just going to read a book and be a programmer but you all started some ware any recommendations?

    thanks

    chad


    When the going gets weird, the weird turn pro.


  2. #2
    Join Date
    Aug 2009
    Location
    Bristol, England
    Posts
    333

    Default

    "C - How to program" by Deitel & Deitel is often figured to be a good first book on C, followed by "The C programming language" by Keringham and Richie, which is really THE C book (But probably less suitable for beginners).

    The "C Standard Library" is worth owning as a reference but is in some ways less useful on an embedded platform as they tend to have rather cut down libraries.

    Regards, Dan.

  3. #3
    Join Date
    Nov 2005
    Location
    Melbourne, Australia
    Posts
    3,702

    Default

    Hey Chad,

    If you want to learn C and embedded programming, get this book:

    Embedded C Programming and the Atmel AVR by Richard H. Barnett

    Its a good book well worth the casola..

    KVANT Australian projector sales
    https://www.facebook.com/kvantaus/

    Lasershowparts- Laser Parts at great prices
    https://www.facebook.com/lasershowparts/

  4. #4
    Join Date
    Jun 2010
    Location
    Australia
    Posts
    3,734

    Default

    I recommend getting an Arduino board to start playing immediately. A nice little platform with Atmel MCU, USB bootloader, standard expansion headers using GNU C and libraries based on Processing language. The IDE is available for Win/Linux/Mac. PC software is a free download, requires Java. Some of the libraries are written in C++ (Object Oriented).

    http://www.arduino.cc/

    The boards are pretty cheap. Find your nearest supplier here: http://arduino.cc/en/Main/Buy

    The following books will help you ease you in to C while working with the Arduino board.

    http://www.littlebirdelectronics.com...h-Arduino.html

    http://www.littlebirdelectronics.com...l-Arduino.html

    Otherwise go to your local technical bookstore, the amount of books on C/C++/C# are endless. Many are advanced however.
    This space for rent.

  5. #5
    Join Date
    Dec 2006
    Location
    denver,co
    Posts
    1,078

    Default

    Thanks guys!

    Atmel processors are about the only micro that I don't have. I have many pics, propellers, arms, xmos, rabbits, Sx and a couple of others. I just can't program any of them.

    I should get a atmel programmer / dev kit and add it to my micro collection.

    I am starting a books to get list. Thanks for the suggestions.

    Chad


    When the going gets weird, the weird turn pro.


  6. #6
    mixedgas's Avatar
    mixedgas is offline Creaky Old Award Winning Bastard Technologist
    Infinitus Excellentia Ion Laser Dominatus
    Join Date
    May 2007
    Location
    A lab with some dripping water on the floor.
    Posts
    9,890

    Default

    screw C, buy MCS basic for the AVR and have your program working in hours.

    Steve
    Qui habet Christos, habet Vitam!
    I should have rented the space under my name for advertising.
    When I still could have...

  7. #7
    Join Date
    Dec 2008
    Location
    Vezon, Belgium
    Posts
    1,017

    Default

    hmm I just can't agree, being a programmer myself

    try several languages, they are all based on assembly and are only different appreciations of the embedded world, with their very each possibilities and limitations, and you'll find the one which is "made for you" (plus most of the common MCUs are based on known hardware for which you'll find free quality tools easily)

    what I would recommend thus, if you really want to learn the guts of these things and manage to get accurate timings for signal generation and the like, is getting started with 8-bit PIC assembly

    only 120-ish instructions, really simple (you use perhaps 30 instructions in a regular basis) and you can master timers and counters in a week

    if you want to be able to get some basic scripting done and you have no need of nanosecond-precise timings, then you can just have a look at some direct programming languages, where you write your script and directly generate the binaries

    I prefer the C language, as you can always place some inline assembly to gain precision (although I know some basic languages allow this too)

  8. #8
    Join Date
    Nov 2005
    Location
    Melbourne, Australia
    Posts
    3,702

    Default

    Haha, I program most of my AVR stuff in assembler.. I like small code size


    Quote Originally Posted by mixedgas View Post
    screw C, buy MCS basic for the AVR and have your program working in hours.

    Steve
    KVANT Australian projector sales
    https://www.facebook.com/kvantaus/

    Lasershowparts- Laser Parts at great prices
    https://www.facebook.com/lasershowparts/

  9. #9
    Join Date
    Dec 2006
    Location
    denver,co
    Posts
    1,078

    Default

    Yuck, assembly. I don't need timing for anything that tight. And as for code size I would rather just spend the extra buck on a bigger chip and do it in something a little higher level

    Chad


    When the going gets weird, the weird turn pro.


  10. #10
    Join Date
    Apr 2010
    Location
    Grand Rapids, Mi
    Posts
    2,538

    Default

    Quote Originally Posted by chad View Post
    Yuck, assembly. I don't need timing for anything that tight. And as for code size I would rather just spend the extra buck on a bigger chip and do it in something a little higher level

    Chad

    Assembly runs so clean and nice, todays languages allow for such sloppy code it is a shame.

    If you want to check out a few different ways to see "C" in use download the MAME source code and check it out. http://mamedev.org/
    leading in trailing technology

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •