| Author |
Message |
|
|
Posted: Aug 23, 2004 - 08:33 PM |
|


Joined: Apr 25, 2004
Posts: 3809
Location: Denmark
|
|
Hi Freaks ..
As i see so many generic questions about pointers , arrays and other C related stuff. I think we should have a little place for some LEGAL ONLINE C tools and or references.
If this is going to be usefull , then this post should NOT end up being hundreds of pages long. So plese do not use it as your own private remote/backup of your favorite links. But if its generic and helpfull to most other C users , and maybe especially the learners then post a link to it.
Please describe what the link is pointing at/to , and do a skills classification.
I will start out with the obious GCC links (not classified) , and then some links to some online books/docs that i think would be helpfull to other users here.
Hope you will contribute , for the benefit to us all .....
/Bingo
------------------------------------------------------------------------------------
The "Must read's"
WinAVR (The free AVR C Compiler)
The Homepage
http://winavr.sourceforge.net/index.html
Download
http://winavr.sourceforge.net/download.html
The link to other AVR resources page , have a look here
http://winavr.sourceforge.net/links.html
avr-libc documentation:
The the avr-libc Homepage
http://www.nongnu.org/avr-libc/
The online html manual
http://www.nongnu.org/avr-libc/user-manual/index.html
The downloadable pdf manual (a must ....)
This is version specific , so have a look at the above homepage when a new version is out.
http://download.savannah.gnu.org/releas ... .7.pdf.bz2
GNU Manuals Online
http://www.gnu.org/manual/
GCC Homepage
http://gcc.gnu.org/
GCC manual online
http://www.gnu.org/software/gcc/onlinedocs/
GNU make manual online
http://www.gnu.org/software/make/manual/make.pdf
Managing Projects with GNU Make, 3'ed
http://www.wanderinghorse.net/computing/make/
------------------------------------------------------------------------------------
Building the AVR Toolchain
http://www.nongnu.org/avr-libc/user-man ... tools.html
I did follow the above "Recipe" , and made it. You can read about my problems/solutions etc. here
http://www.avrfreaks.net/index.php?name ... mp;t=25754
Note: If you want support for the latest processors (Applies to all builds)
You need to apply a patch to the binutils.
As EW wrote:
Quote:
The patches for the new devices are always available to anyone at the avr-libc project site on Savannah, in the Patch Manager.
Building the AVR Toolchain under Linux
A. J. Erasmus made this homepage
http://home.telkomsa.net/antera/
With a "Recipe" for building a "WinAVR" compatible toolchain under linux (Untested by me)
Do start with the Readme
I did update the above buildscripts in this thread
http://www.avrfreaks.net/index.php?name ... mp;t=42631
Building the AVR Toolchain under MacOS X (10.1 or later recommended)
First you must install the developer tools from the Apple CD, which came with OS X, or can be downloaded from the Apple website for free.
Have a look here :
http://www.eecs.berkeley.edu/~mseeman/r ... micro.html
and maybe here (german) , but commands are linux (english)
http://www.mikrocontroller.net/forum/read-2-153385.html
Lately there is a "Local thread" , and i even think an academy project about MAC avr-gcc
http://www.avrfreaks.net/index.php?name ... 8b785d4886
------------------------------------------------------------------------------------
The Generic C Tutorials
The C Book
http://publications.gbdirect.co.uk/c_book/
Category : Nice C tutorial
Level : All
Learn C/C++ Today
http://www.cyberdiem.com/vin/learn.html
A list of a few C and C++ language tutorials
Category : List of C tutorials & examples
Level : All
C Programming Notes
Notes to Accompany The C Programming Language, by Kernighan and Ritchie (``K&R'') (2'nd ed)
http://www.eskimo.com/~scs/cclass/krnotes/top.html
Category : Comments to the K&R book , divided into each chapter
Level : All
C Programming
Quote:
The notes on these pages are for the courses in C Programming I used to teach in the Experimental College at the University of Washington in Seattle
http://www.eskimo.com/~scs/cclass/cclass.html
Category : Seems like a good site with C intros for both beginners & Intermediate
Level : All
C and C++ Programming
Link to a page with lots of c/c++ doc links
http://web.archive.org/web/200908031952 ... amming.htm
Category : Links to dozens of C and C++ related Books/Guides
Level : All
A TUTORIAL ON POINTERS AND ARRAYS IN C
http://pweb.netcom.com/~tjensen/ptr/pointers.htm
PDF Version
http://pweb.netcom.com/~tjensen/ptr/pointers.pdf
Level : All
ISO/IEC 9899 (C library reference)
http://www.open-std.org/jtc1/sc22/wg14/ ... /n1124.pdf
Level : All
What Belongs in a C .h Header File?
http://embeddedgurus.com/barr-code/2010 ... ader-file/
Level: All
------------------------------------------------------------------------------------
The advanced stuff
Numerical Recipes in C
http://lib-www.lanl.gov/numerical/bookcpdf.html
Category : C filters , fft ... etc.
Level : Advanced
Binary to Decimal Conversion in Limited Precision
http://www.cs.uiowa.edu/~jones/bcd/decimal.html
Category : C BCD Conversion routines.
Level : Advanced
The Function Pointer Tutorials
http://www.newty.de/fpt/index.html
http://www.newty.de/fpt/zip/e_fpt.pdf (here as PDF)
Category : Using pointers to functions in C
Level : Advanced
Introduction to the Volatile Keyword
http://www.embedded.com/story/OEG20010615S0107
Category : When to use the volatile keyword in C
Level : ALL (a must read)
How to Use C's volatile Keyword
http://www.netrino.com/Embedded-Systems ... le-Keyword
Category : How to use the volatile keyword in C
Level : ALL (a must read)
Combining C’s volatile and const Keywords
http://embeddedgurus.com/barr-code/2012 ... -keywords/
Category : Does it ever make sense to declare a variable volatile const
Level : ALL (interesting)
Understanding C99's strict aliasing rules
http://cellperformance.beyond3d.com/art ... asing.html
Category : Understanding C99's strict aliasing rules
Level : ALL (a must read)
Nine ways to break your systems code using volatile
http://blog.regehr.org/archives/28
Category : (mis)Using the volatile keyword in C
Level : ALL (a must read)
"Getting the Least out of Your C Compiler"
http://user.it.uu.se/~jakob/publication ... f-2001.pdf
Category : What you (thought) you told your compiler
Level : ALL
Efficient C Code for Eight-Bit MCUs
http://www.embedded.com/98/9811/9811fe3.htm
Category : How to make efficient code on an 8 bit mcu
Level : ALL
Programming Embedded Systems
http://www.le.ac.uk/engineering/mjp9/pes1ohp_a4.pdf
Category : Programming Embedded Systems (a 10 Week Course)
Basic Hardware / OS types / C coding
Level : ALL
The New C Standard
Category : Discuss C and Codingstandards in depth
Level : Advanced
http://theinquirer.net/?article=24092
http://www.knosof.co.uk/cbook/cbook.html
Programming Embedded Systems II
http://www.le.ac.uk/engineering/mjp9/pes2ohp_a4.pdf
Category : Programming Embedded Systems (a 10 Week Course)
RS485 / RS232 / I2C / Schedulers / CAN master/slave / etc.....
Level : Intermediate to Advanced
Using watchdog timers to improve the reliability
http://www.le.ac.uk/engineering/mjp9/mjpvp02.pdf
Category : Publication from the above author about using Watchdogs
Level : Intermediate to Advanced
Control And Embedded Systems
http://www.learn-c.com/
Category : Focused on controlling things with embeddec C.
Seems like a nice site with a lot of embedded examples in links on left side
Level : Beginners to Intermediate
Starts with basic electronics , then on to controlling ports in C
Interactive Digital Filter Design
http://www-users.cs.york.ac.uk/~fisher/mkfilter/
Category : Give desired parameters for a digital filter ,
and it will output C code for it (untested by me)
Level : Unknown
LC Filter Design
http://www-users.cs.york.ac.uk/~fisher/lcfilter/
Category : Give desired parameters for a LC filter ,
and it will draw schematic for it
Level : Unknown
Interactive Digital Phase Locked Loop Design
http://www-users.cs.york.ac.uk/~fisher/mkpll/
Category : Give desired parameters for a PLL filter ,
and it will draw schematic for it
Level : Unknown
Sampling: What Nyquist Didn't Say, and What to Do About It
http://www.wescottdesign.com/articles/S ... pling.html
Category : An advanced insight into Sampling
Level : Advanced
Algorithms for Programmers
http://www.jjj.de/
http://www.jjj.de/fxt/fxtbook.pdf
What Every Computer Scientist Should Know About Floating-Point Arithmetic
http://docs.sun.com/source/806-3568/ncg_goldberg.html
Category : A floating point in depth paper
Level : Advanced (masochist level)
A nice online TCP/IP guide
http://www.tcpipguide.com/free/index.htm
Index
http://www.tcpipguide.com/free/t_toc.htm
Category : Easy read guide about tcp/ip & lots of related things
Level : Easy read
------------------------------------------------------------------------------------ |
Last edited by Bingo600 on Jan 25, 2012 - 03:59 PM; edited 38 times in total
|
| |
|
|
|
|
|
Posted: Aug 23, 2004 - 08:58 PM |
|


Joined: Feb 19, 2001
Posts: 25904
Location: Wisconsin USA
|
|
|
|
|
|
|
Posted: Aug 23, 2004 - 09:47 PM |
|


Joined: Mar 23, 2001
Posts: 2091
Location: Halifax, NS
|
|
Category: Generic Standard C
Level: All except learning C
The actual ANSI C Reference can be purchased at:
http://webstore.ansi.org/ansidocstore/p ... 899%2D1999
If the link stops working it is document number INCITS/ISO/IEC 9899-1999. It costs $18, but is well worth it.
You would have trouble learning C from this document, but it is an extreamly good reference for writing/understanding other C programs I have found. Not for someone who needs something to learn the C language from, but great for someone who has another C book to go with this document (even if they are learning the C language).
I have attached the index of the file for reference. |
|
|
| |
|
|
|
|
|
Posted: Aug 24, 2004 - 10:56 PM |
|


Joined: Jan 22, 2004
Posts: 689
|
|
Absolute Beginner's Guide to C (2nd Edition)
by Greg Perry
Category: ANSI C
Level: absolute beginners!
ISBN: 0672305100
Embedded C Programming and the Atmel AVR
by Richard H. Barnett, Sarah A. Cox, Larry D. O'Cull
Category: AVR Embedded C; CodevisionAVR compiler specific
Level: beginner/intermediate
C Programming Language (2nd Edition)
by Brian W. Kernighan, Dennis Ritchie, Dennis M. Ritchie
Category: ANSI C
Level: int/advanced
Comment: Written by the developers of C, this new version helps readers keep up with the finalized ANSI standard for C while showing how to take advantage of C's rich set of operators, economy of expression, improved control flow, and data structures. This 2nd edition has been completely rewritten with additional examples and problem sets to clarify the implementation of difficult language constructs.
You can find them here |
|
|
| |
|
|
|
|
|
Posted: Sep 02, 2004 - 10:08 PM |
|

Joined: Aug 24, 2001
Posts: 513
Location: Hamburg, Germany
|
|
I think www.avrbeginners.net should be mentioned here. Though I don't like it, I'll now "officially" advertise our website for the very first time. Many people ran across it and everybody understood what they had read. I think it's become a really good starting point for beginners.
Christoph |
_________________ I tend to post off-topic replies when I've noticed some interesting detail.
Feel free to stop me.
|
| |
|
|
|
|
|
Posted: Oct 27, 2004 - 08:11 PM |
|


Joined: Dec 21, 2001
Posts: 683
Location: Los Alamos, NM
|
|
|
|
|
|
|
Posted: Nov 09, 2004 - 10:01 PM |
|


Joined: Mar 01, 2001
Posts: 4953
Location: Rocky Mountains
|
|
|
|
|
|
|
Posted: Nov 26, 2004 - 02:29 AM |
|


Joined: Nov 17, 2004
Posts: 6137
Location: Great Smokey Mountains.
|
|
You can now get a great AVR microcontroller development board and C compiler for an unprecedented low cost. ATMEL’s Butterfly Evaluation Board is $19.99 at Digi-Key.com and the WinAVR C compiler is free. This combination replaces hardware and software that until recently would costs hundreds of dollars just for an entry level system. Now you can join the AVR club for pocket change.
To help you get started, download the free ‘Quick Start Guide for Using WinAVR Compiler and ATMEL’s AVR Butterfly’, a 30-page tutorial in .pdf format, from http://www.smileymicros.com.
This tutorial is an extract of the first two chapters of the book: ' C Programming for Microcontrollers Featuring ATMEL's Butterfly and the WinAVR Compiler' also available on the SmileyMicros website. |
_________________ FREE TUTORIAL: 'Quick Start Guide for Using the WinAVR C Compiler with ATMEL's AVR Butterfly' AVAILABLE AT: http://www.smileymicros.com
|
| |
|
|
|
|
|
Posted: Nov 26, 2004 - 04:00 AM |
|


Joined: Aug 04, 2003
Posts: 873
|
|
I'd recommend http://www.cs.virginia.edu/~lcc-win32/
Even if you have no intention of using the compiler, it's C-Tutorial is among the best I have ever read. It's an ANSI C implementation so learning to program in this is essentially learning to program using anything else. The tutorial is concise, easy to read and not too wordy. The PDF file is organized very well including plenty of code examples. Best of all, the compiler, the tutorial and even a healthy dose of extra goodies (Explanations on how to use a lot of Windows API's) are all available completley free of cost unless you're writing something for comercial use (in which case there are licensing feeds) I would recommend it to anyone with an interest in C programming, if for nothing other than a very good refrence. |
|
|
| |
|
|
|
|
|
Posted: Feb 09, 2005 - 08:56 PM |
|

Joined: Nov 14, 2001
Posts: 3438
Location: Charlottesville, VA USA
|
|
|
|
|
|
|
Posted: May 03, 2005 - 04:57 PM |
|


Joined: Mar 13, 2001
Posts: 45
Location: Madison WI - USA
|
|
|
|
|
|
|
Posted: May 12, 2005 - 08:45 AM |
|

Joined: Jul 25, 2003
Posts: 216
Location: Austria, Europe
|
|
Also a good reference as I think is http://www.cplusplus.com/
Under reference you can find all standard libraries plus description.
best regards |
|
|
| |
|
|
|
|
|
Posted: Jun 01, 2005 - 06:43 PM |
|

Joined: May 17, 2005
Posts: 165
|
|
Hi, I found some books
Quote:
Gracia Teleoperation Tutorial
This tutorial discusses a C++ program running on a host computer that uses the Garcia API to communicate with a Garcia robot. The program takes user input from a joystick or gamepad and converts it to motion commands that are sent across the serial link.
Pointers, References and Values New
Provides information about Passing Parameters, Returning Results, and Storing Member Variables with Musings on Good C++ Style.
Programming Tutorials
Contains C++ tutorials, as well as Denthor of Asphyxia's graphics tutorials converted to C++, several programming articles, and a new series on the Standard Template Library.
Roby's C/C++ Tutorial
Covers basic structure, constants, loops, functions, arrays, structs, unions, string manipulation, enumerated types, work in multiple modules, making header files, memory types, text, types, and untyped files.
Basic Input and Output with C++
In this lesson we will focus on using the keyboard as our input device and the monitor as our output device.
comp.lang.c FAQ list Table of Contents
This article is a table of contents for the comp.lang.c frequently-asked questions (FAQ) list, listing the questions which the abridged and full versions of the FAQ list answer.
All About: File I/O in C++
Starts with the very basis of File I/O (Input/Output) in C++ then looks into aspects that are more advanced, showing some tricks, and describing useful functions.
Programming in C
This is a set of notes on Programming in C.
C Programming FAQs
Contains answers to C questions in a vast array of subjects including arrays, pointers, library functions, memory allocation, standard input and output (stdio), and more.
How C Programming Works
Covers branching, looping, arrays, functions, libraries, text files, pointers, dynamic data structures, strings, operator precidence, and more.
http://www.techtutorials.info/cgen.html
enjoy  |
|
|
| |
|
|
|
|
|
Posted: Jun 26, 2005 - 07:00 AM |
|

Joined: Jan 30, 2005
Posts: 852
Location: Junction City, OR USA
|
|
Found a reference to this at Yahoo group AVR-Chat.
Hackers Delight, ISBN: 0201914654.
What may be the ultimate reference for manipulating and isolating bits and bytes with C or asm. Authors website and review from IBM Systems Journal, http://www.hackersdelight.org/.
Rick |
|
|
| |
|
|
|
|
|
Posted: Jun 27, 2005 - 10:46 PM |
|

Joined: May 17, 2005
Posts: 165
|
|
|
|
|
|
|
Posted: Jan 13, 2006 - 02:30 PM |
|


Joined: Mar 23, 2001
Posts: 2091
Location: Halifax, NS
|
|
|
|
|
|
|
Posted: Apr 25, 2006 - 11:57 PM |
|

Joined: Dec 30, 2004
Posts: 134
|
|
This one changed my programming life. I own maybe 6 of the books that are listed above and have been through a lot of tutorials and I have never been able to grok C but now at least I know why I have not been able to understand some of C's problems. One of the reasons? C is written for people who write compilers not for people who write programs. If you know a little about C and you would like the next project to go smoother, then this is for you.
"Expert C Programming, Deep C Secrets"
Peter Van Der Linden
ISBN 0-13-177429-8
It also helps that the author is good writer and has a very approachable style. I have not seen this material in any other book. |
|
|
| |
|
|
|
|
|
Posted: Sep 16, 2006 - 11:59 PM |
|


Joined: Dec 15, 2003
Posts: 4402
Location: Slovakia, Bratislava
|
|
http://www.winprog.org/tutorial/
how to use the win api to create guis and stuff:-) |
_________________ There are pointy haired bald people.
Time flies when you have a bad prescaler selected.
|
| |
|
|
|
|
|
Posted: Dec 22, 2006 - 06:27 AM |
|


Joined: Jan 23, 2004
Posts: 9826
Location: Trondheim, Norway
|
|
An old but rather good C FAQ:
Table of Contents
Actual FAQ
Contains over a hundred different C questions and answers, pretty much all of it relevant in some way to AVR development with C (although the FAQ focuses on no particular platform or compiler).
- Dean  |
_________________ Atmel Studio 6.1 is now released, grab it here.
Report AS6/ASF bugs here.
|
| |
|
|
|
|
|
Posted: Feb 12, 2007 - 02:01 PM |
|

Joined: Jun 27, 2006
Posts: 81
|
|
|
|
|
|
|