Monday, February 23, 2015

Building your own Arduino

Building your own Arduino is possible and you learn a lot in the process.

For example this site shows you how to build an Uno for about $5.


Talk like a pirate day. An Arduino introduction.




The classic intro on "talk like a pirate day"


Also: lots about LEDs:

More LEDs and good planning.


LED Pixel Matrix Project

http://www.youtube.com/watch?v=hEKEM6ZOsZE

A good intro via Jaycar (but slightly different Arduino)

Another Arduino introduction. This time for the Uno.

Also  an introduction the Chinese clone Arduinos. Cheap but don't help the Arduino community.



LED information



Good diagram of LED pinout

Some more LED information

Check list for first two weeks.

Make sure you have addressed the following topics.

Week one
Access class Moodle site.
Access class blog.
Created own blog.
Put blog URL into Moodle wiki.
Started tasks from class blog.
Purchased Arduino kit.
Unpacked kit and got default led flash after plug in.

Week two
Get Arduino IDE going.
Look at main Arduino site.
Checked pages on how to get started.
Found example programs in IDE.
Run famous Blink Program.
Did simple mods to Blink and ran them.
Understand structure of Arduino sketch.
Found the Arduino C language reference.
Installed kit's project software in examples.
Do blink sketch from kit book.
Download Fritzing.
Accessed specs for LED project.
Continued with blog tasks.



Sunday, February 15, 2015

Tasks

List of Tasks. You have to respond to all of these in your blog.
Please number your tasks in your blog so they can be found easily.


1. Start your blog.

2. Edit the permissions in your blog so that just prjbrook@gmail.com is invited to see it.

3. Make sure you can access the Arduino environment. Find the Blink program in the examples and paste into your blog. Test that it compiles in the Arduino IDE but you don't have to send it to your Arduino yet.

4. What is the name of the Atmel microprocessor in your Arduino board? Insert the link to the large pdf from Atmel associated with this chip. Insert an image of the first page of this pdf. Finally insert a picture of the pin-out of this chip.

5. Find the forum associated with main Arduino site. Take a screen shot of something in the forum that interests you with a comment on what appeals to you.

6. Find a picture of your Arduino  publish it in your blog and label the main parts. You may need a special graphics program to do this. Add another interesting Arduino variation. You can see some on this page.

7. Put the url for your blog into the wiki in Moodle. Add some other contact details. If you wish your cell phone number to remain private that's OK too.

8. Check out the following sites. Insert a screen shot and a URL link into your blog. Small images or large ones are both OK .
The Arduino environment version 1.5 or (stop press) 1.6.
The Processing environment.
The Fritzing files.
Link to Blogger.
GNU gcc
Moodle
AVR Studio download. Latest version.
PDF of ATMega 328
PDF of specs of USB-to_serial chip. The one used in the Duemilanove.
Good pic of our arduino clone
The MindKits site.
One cool video on Youtube.
One other interesting internet resources. eg "Make" site or electonics sites.
The Nice Gear store in Timaru that sells good Arduinos.



9. Find 4 more Arduino LED related videos in Youtube, BlipTV etc. Put a link and a two-sentence review about each one in your blog. Be prepared to talk about one or more of them to the class.

10. Establish a sketchpad folder in the D Drive or in a USB pen or somewhere you can get to.


The next tasks will relate to programming your Arduino using the Blink program with variations. So you might like to get going on setting things up.

All programs from now on need their source code to be entered into your blog with comments. Make sure you comment the the top of your blog posting with the number of the task and enter too the task number as a //coment in your code.

11. Copy the famous Blink program to your blog and make sure you can run it on you Arduino.
12. Create a variation in timing and put your new program into your blog. Indicate with a comment what your change was.
13. Write a program that will have the LED mostly off. That is it only blips on once a second if you look closely.

14. Same as 13 but this time have your LED mostly on.
15. Repeat 14 with an external LED on a breadboard.
16. Copy the two LED program into your blog and run it.
17. Insert a variation so that the LEDs blink together.
18. Write a program so that one LED is blinking fast while the other blinks slowly.


18.1 (Look at analog pins.) Pin A0 will read any voltage value between 0 and 5 volts. Set up your Arduino board so that its circuit looks like the Fritzing diagram on this site. Run the program and make a change with a comment in your blog.
(Now looking at serial monitor.)
19. Copy the ASCII printing program from http://arduino.cc/en/Tutorial/ASCIITableand run it. A good background site is the lady ada serial tutorial.


20. Same as 19 but make some changes in formatting. Indicate your changes through a comment.
20.1 Have a look at this blog and run the following programs as they are set out in the blog then make some interesting chnages that you indicate with a comment and publish your versions in your blog.
20.11 Echo, echo.
20.12 Stage 2, delimiters.
20.13 Stage 3, Arduino maths.
20.14 Stage 4, simple transmission of a double.
20.15 Stage 4 again, Double, double.
20.16 Stage 5, analog read. (Very similar to 18.1 above.)

21. Randoms. Write a program to output random numbers between 0 and 100 to the serial terminal.
22. Write a program to output the throwing of a dice every second and display the number that comes up.
23. Same as 22 but display as well the number of sixes that you have thrown so far.
24. Same as 23 but speed it up and stop when you get to 25 sixes.
25. Same as 24 but don't display the dice numbers, rather say how many throws it takes to get to 100 sixes. Then start again each time you get to 100 sixes.

25A. Write a program that takes the output of the voltage between two resistors into an analog port pin for reading. This voltage will be between 0 and 5 volts. Output the number you get between 0 and 1023 to the screen. (Try different resisitors and predict what will happen.)

25B. Same as 25A but this time make one of the resistors a variable resisitor so that your output will change.

26. RS232 Check out this site  and others like it so you can write about 100 words in your blog on the protocol. Include in your text two pictures of pin-outs or relevant frames.

27. A very short talk to the class about an Arduino command that you can use in your programs. Check out the word allocated to you in the wiki part of our blog. Study the word and give a 2-3 slide presentation telling the class what the word does and give an example of the way it's used in Arduino code. Any other tips or relevant information should be presented. The talk should last about a minute.

28. Write a delay subroutine in avr assembler using AVR studio 4 that lasts fro exactly 50 milliseconds.Refer to a post above in this blog called assembler delays.

Welcome

Welcome to the 2015 Embedded class




Most of our work will come from tasks set on this blog and you will respond with your own work in your blog. For example you will have to write a short program to flash a LED early on the course. You get this going in the Arduino environment then transfer the code, and perhaps, pictures, links or movies onto your blog page that corresponds with the task. Please remember to put the task number somewhere in or near the title for easy marking purposes.

Sometimes extra information is given in our Moodle pages.