Matt's Tips: Embedded Programming with C - Beginners Resources | Cypress Semiconductor
Matt's Tips: Embedded Programming with C - Beginners Resources
When reading PSoC Creator survey responses, I often I see a comment like “I’m interested in beginning C training”. My background is in Computer Engineering with an emphasis on VLSI, so C is one of those things I’ve used for a while and don’t generally have cause to look for introductory material. Having said all that, I see many of my EE brethren (Mechanical Engineers too!) moving from the digital or analog circuit design world into the land of embedded systems programming. Additionally, if you’ve been writing code targeted for a desktop PC or Linux workstation, you’ll find a completely different animal when you need fit your code into 8Kb.
So, I asked around and compiled this small list of resources to get you started. I’m hoping to see some comments from people who have good (or bad) experiences with some I haven’t listened. Here’s my current list. Feel free to email me with your favorites (firstname.lastname@example.org or email@example.com).
http://www.learn-c.org/ - A free, interactive C tutorial (nothing to even download). There are some advanced sections as well.
A Beginner’s Guide and more is offered by Udemy here - https://blog.udemy.com/c-tutorial-learn-c-in-20-minutes/
http://www.cprogramming.com/ (C++ stuff here too)
C Programming for Embedded Microcontrollers by Warwick A. Smith (Basic C programming + ARM)
There are several books/classes listed here: How to Become an Embedded Systems Geek by The Embedded Muse.
Many universities, community colleges, and training organizations have live C courses, some even have C/embedded programming classes. For example, Embedded Software Bootcamp from the Barr Group.
I don’t recommend learning C just by looking at example code. However, looking at examples is very helpful for some. Almost all PSoC Creator components have an example to go with them. Just right click over the component. See the Screenshot below.
In PSoC Creator 3.3+, you can also browse all the example projects from the File->Code Example menu. See the screenshot below.
If you are interested in the 8051 specifically, you may want to check out Embedded C.
--Matt Landrum (firstname.lastname@example.org)