Arduino programming language (C)

hi. looking for a book that teaches the Arduino programming language (functions, variables, structure) with examples. any suggestions?)

Choice is misery.

google and take a peek at the books that let you read an excerpt or a few pages

arduino programming c book

also there are many youtube video series, if you like that kind of thing. Again, try a few and see if you match up with someone you can stand as a teacher. Don’t be afraid to flunk them but give them a chance, usually a few minutes will tell you if you gonna be able to stick with someone.

Read these fora and start trying to follow along. Start working through the basic examples available in the IDE.

But be prepared to put in some time and work and honestly you’ll feel dumb from time to time - no one was born knowing this and it can be hard until it is easy.



Hi @haitham_basri
It's not a book, I really like this site:

RV mineirin

1 Like

The programming used by Arduino is C++, not C. They are different languages. is indeed a good introduction, but it is a general C++ tutorial, it doesn't cover any Arduino-specific aspects.

I don't have a recommendation for you... I learned standard C and C++ from books, then I just researched online for Arduino programming.

Note that Arduino C/C++ is different from standard C/C++ although the structure and syntax is similar there are many common functions, so you do need a specialized book (or website). For example, standard C & C++ expect a standardized keyboard, display, and disc storage. And the standard languages don't have anything for reading an I/O pin, etc.

When you open the IDE, open also a web browser and make tabs with reference material.

The Arduino Main Site is ARDUINO.CC, link at top left of the forum screen.
Explore and bookmark especially pages with many links, the hubs.

ARDUINO FOUNDATIONS ---- a Hub to bookmark.

My browser lets me make text bigger. I can follow links.

For complete, simply explained tutorials on many key Arduino topics,

Nick Gammon's Microelectronics blog.

Arduino C++ is a subset of a standard C++.

I would say the structure and syntax are identical.

Read here for some dets

Having said that, I totally agree that programming microprocessors for real world devices like you see ppl making around here is very different to, say, writing a big accounting system or whatever.

So yeah, a targeted cookbook or other guide to experiment is very useful.

I can’t say how just learning C++ would go. If I ever do bother to learn C++, I will be dealing with knowing C…

BTW suitable or not, you gotta love a book that starts with Chapter 0. :expressionless:


1 Like

The Arduino language reference covers the Arduino specific C++ functions.

I like the C++ tutorials.

1 Like

Learn C first. Get close to the hardware, AVR's especially are Small Environments.

AVOID dynamic memory allocation when you have little RAM. That includes String.

1 Like

Read the reviews on Amazon and see if one sticks out. Many allow you to click on the cover, open it up, and then read several pages. Beginning C for Microcontrollers allows you to experiment with controllers other that the Arduino family, yet within the Arduino IDE. Disclaimer: I am biased about this book.