It’s been a long time since I last wrote a blog post! In that time lots has happened: Computer Science was added to the EBacc, the EBacc certificate was scrapped, ICT was renamed to Computing and a draft spec was published which cheesed off a lot of people and #include finally got a new website. Oh and they also found Richard III under a car park and the Pope resigned.
However, one of the more interesting things I was up to instead of writing about all that was…messing about with an Arduino!
What is an Arduino?
It’s a microcontroller board with accompanying software for programming it to do cool stuff. You program it in C (sort of) and upload your program to the board, and you can attach a breadboard (a tool for making circuits without having to solder things) and real world components such as LEDs, motors, buttons etc. There are lots of different varieties of Arduino, including one called the Lilypad Arduino which you can use to create electronic textiles, with conductive thread and all! Get on over to Geek Gurl Diaries to find out how.
Where do I get one?
I ordered the ‘Starter Kit for Arduino‘ (around £60) from oomlout.co.uk who were the fastest shipping company in the West, my package arriving the very day after I’d ordered it. Wow. Gold star for them! The pack comes with an Arduino board (obviously) – it is the Uno model. It also comes with a box full of bits which is great if (like me) you have no clue what you need, because it gives you some of everything. It also comes with an instruction book and some diagrams to show you how to wire it up which is incredibly helpful. All of these instructions are available online too as well as the code.
What do I do with it?
Wire it up, write your program and fire it up! The first program I tried was simply one that made an LED blink – here’s the proof!
- It’s useful for doing some physical Computing, where students can write a program and see the results in the real world
- It’s engaging because it’s real!
- You could collaborate with the DT department to make a project
- All of the software and code examples are free
- It’s kinda expensive – the kit is £60, a Uno board on its own is only £22 though. There are cheaper and more expensive arduino boards available.
- It’s annoying when your circuit doesn’t work and you can’t figure out why!
- It’s scary to use in lessons if you don’t know anything about wiring circuits or programming in C
Coming soon – a computational thinking task using an Arduino!
3 thoughts on “How do I program a microcontroller? Arduino!”
I love teaching programming with the Arduino but I agree wiring can be a problem especially as i’m more interested in the coding than the electronics.
We have two solutions for this. We’ve been trialling using the Arduino to teach programming to our year 8s. To start pupils off we use TinkerKit shields and modules (www.tinkerkit.com), we have 15 of these made into kits (we spent about £50 each with an arduino) that allow students to easily add and remove components. The TinkerKit library also simplifies the code, pin13(high) becomes led.on().
We then have some pre-made circuilts and robots that students can connect up to their arduinos. The advantage of these solutions is we can concentrate on the programming but it does limit pupils oportunities to experiment and learn the electronics side of the arduino.
I’ve like the Arduino environment as a starter environment for low-level programming for a while.
You might want to look into the SparkFun RedBoard, (https://www.sparkfun.com/products/12757) as a lower-cost replacement for the Uno with better USB serial (they returned to the chipset used on the earlier Arduinos for USB). I’ll be teaching university freshmen next year in a half-course “design seminar” and plan to use the red boards and some electronics. I’ll probably be putting together a parts list and some design projects on my blog sometime this summer—I expect to keep the price under $50 (about £30) per student. I’m thinking of including a breadboard, some sensors (thermistor, phototransistor), some LEDs, and some resistors.