===== Pre-Requisites ===== Please make sure you've read and understood the following articles and related topics * [[embedded systems|Embedded Systems Introduction]] * [[git and github|Git and Github]] ===== A Word of Caution ===== The Arduino does tend to abstract many things - it's important to understand that the inner workings of the Arduino are not that magical. There is a deep pool of EE-related knowledge underneath that abstraction that you can understand if you take the time to carefully consider what is happening. Refer back to the embedded systems concepts you covered earlier when you get confused conceptually. ===== Arduino Introduction ===== An "Arduino" is a microcontroller platform that allows you to write programs that interact with the real world via sensors, motors etc. It's a microcontroller //platform// because it has more than just a microcontroller - there is a built-in programmer, voltage regulators, etc. As a 296 student, you will most likely be using the Arduino Uno as the platform for the development of your project. An arduino is an example of an [[embedded systems|embedded system]]. Now, the Arduino has gotten super popular recently because of it's ease of use. It's quick to get started and comes with a ton of libraries that people have written for it. You can find these libraries all over the internet. This article will provide you with links to pages on the arduino website. Please review these pages to further your understanding on Arduino. To get started, please read this [[ https://www.arduino.cc/en/Guide/Introduction | Arduino Introduction ]] article. While not completely necessary, you can review [[https://en.wikipedia.org/wiki/Arduino|this wikipedia article]] and [[https://www.youtube.com/watch?v=UoBUXOOdLXY|this youtube video]] for further information on the Arduino platform. ===== Learning Arduino ===== This guide will get you through learning the Arduino platform, regardless if you've had previous exposure to microcontrollers or not. From here, visit the [[ https://www.arduino.cc/en/Guide/HomePage| Arduino homepage ]] to start working with Arduino. From there, follow the corrosponding links and guides on how to install and use the Arduino IDE. Once you've installed the Arduino IDE and set up your Arduino board, please go through the following examples to ensure everything is set up correctly: - Bare Minimum - Blink - Blink Without Delay Things might still be confusing at this point - [[ https://www.arduino.cc/en/Tutorial/Foundations | this page ]] might help clear up some things. It might be your benefit to skim through some of those materials. Also, if in doubt - as for clarification or help! Other teams may be available, your mentors are there to help you and the leadership team is always there. ===== Assignments ===== Answer these questions before continuing - make it concise enough to make it clear that you understand the concepts. - What is Arduino? - What is an Arduino Uno? - What kind of programming language does the Arduino IDE support? - What are the two functions that are present in an Arduino program? - How is it different from a regular microcontroller? - Why do people use the Arduino? - What are some advantages? - What are some disadvantages? - Were you able to program the Arduino? - Did you have any problems during the Arduino process? - What you think is the next step after this?