workshops:archived:c_programming_for_arduino

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

workshops:archived:c_programming_for_arduino [2014/11/11 12:15] (current)
Line 1: Line 1:
 +=====C/C++ Programming For Arduino and Other Things======
  
 +**Topic:​** ​
 +
 +Arduino and many other microprocessors use a variety of the "​C"​ programming language. While new users are generally encouraged to "dive in" and learn-by-doing (ie. copy, paste and edit other people'​s code), many of us would benefit from a little more structure to our learning. ​ "​C"​ is a powerful programming language that is suited to many applications beyond microprocessor control. C++ is an Object Oriented Programming language that shares C's roots. Learning syntax, data structures and coding conventions can help you create your own efficient and elegant programs from scratch.
 +
 +====Scope:​====
 +
 +  * Introduction to C - basic concepts and program structure
 +    * How Arduino implements C (wiring)
 +    * Tools (compiler, linker, debugger, bootloader)
 +  * Documentation
 +  * Data Types
 +  * Definitions and declarations
 +  * Operators
 +  * Expressions
 +  * Decisions
 +  * Loops
 +  * Scope
 +  * Anatomy of a Function
 +    * Program stack and local variables
 +  * Pointers
 +  * Preprocessor
 +  * Basic IO (standard IO)
 +  * Libraries
 +  * Memory management
 +  * Debugging
 +  * Using Git to share your code and collaborate
 +
 +====The Story So Far...====
 +
 +Around 8 of us got together for an introductory session on Thursday 15 August 2014 and Stephen offered to run through several "​beginners'"​ sessions every second Thursday evening.
 +
 +At that first session we covered a lot of the basic ground via a couple of slide presentations and some Q&A.
 +
 +Here's the presentations we have viewed so far:
 +
 +[[http://​www.slideshare.net/​Student78600/​learning-c-and-c|External Link to SlideShare]]
 +
 +==== Stephen'​s Slides ====
 +
 +  - [[https://​wiki.makehackvoid.com/​_media/​workshops:​arduino:​gettingstarted.pdf|Getting Started]]
 +  - [[https://​wiki.makehackvoid.com/​_media/​workshops:​arduino:​02-basicops.pdf|Basic Operations]]
 +  - [[https://​wiki.makehackvoid.com/​_media/​workshops:​arduino:​03-operators.zip|Operators]]
 +
 +Our session Thursday 25 September was the last one for the time being in this format and with Stephen guiding us.  If others want to follow through or continue this workshop in another form, give a shout out on the forum [[http://​forum.makehackvoid.com/​]].
 +
 +=====Homework=====
 +
 +**1. Simple SOS Beacon**
 +
 +[[https://​github.com/​PaulGarrett/​Exercises/​blob/​master/​SimpleSOS|Paul Garrett]]
 +
 +====Other details:​====
 +
 +Structure and format to be decided following an initial get-together (Thursday evening 14 August 2014 at 6.15), where we'll have a presentation and chat about C/C++ for embedded systems. ​ We will certainly need multiple sessions. ​ We can then move on to "​self-directed"​ learning as a group, tackling topics or projects together. We will certainly need a couple of C/C++ ninja guru types to "​mentor"​ this.
 +
 +Interests and capabilities amongst the initial group were very diverse. It was decided to have a few sessions for beginners and then reconsider the format.
 +
 +====Interest Register:​====
 +
 +^ Member ^ Availability ^ Role / Notes ^ Contact ^ Comment ^
 +| <Add your name here> | <​Availability>​ | <Role / other notes> | <Contact Details> | <​Comment>​ |
  • workshops/archived/c_programming_for_arduino.txt
  • Last modified: 2014/11/11 12:15
  • (external edit)