Arduino

arduinodiecimila400.jpgThis little device, at a mere $35, can be the base of numerous robot projects. It is really a development board with an on board programmable ic. Dev kits can range into the hundreds of dollars, which is obviously not a good fit for a hobbyist just starting out. The Arduino solves that problem. It is open source, so you could build one yourself, but why bother when a pre assembled one is available so inexpensively I bought mine from Sparkfun, here is a link so that you can get your own [ Arduino from SparkFun. ]
PS. The Arduion is based off the Atmel line of programmable integrated circuit.


Microchp PIC Beginner Information

PIC (Programmable Integrated Circuit) chips vary in price and feature set. When designing digital circuits, there is often a need to have a cpu control a particular item or items, weather it be to control a servo, speed control of a motor, or or a fetch a reading from a sensor a PIC chip can often fit the application. I personally started with the small 8 pin 12c509 (well technically I started with the Motorola 6800 but anyway) with a pet project that I had worked on. It packs quite a punch for the cost. OTP (one time program) chips go for about $2 and the re-programmable goes for ~$17. Now of course it has a small amount of memory, so you can’t load huge programs into it, but it can offer an inexpensive way to add a control to the rest of the circuit. The 12 series microchips offer 6 input/output pins (they can be set for either purpose), up to 4 analog to digital converters, and some will even support serial communications. For more detailed information on the 12 series chips refer to microchip.com and go to the link “8-bit PIC® Microcontrollers” under “Products”. Their are bigger, and badder chips to play with, which will have more features… but lets start simple.

PIC Programmer

So once you purchase some blank chips from DigiKey.com (tell them “CruzinTheGalaxie” sent you) you will need a programmer to load a set of instructions on the chip. I have gone through a few programmers over the years. I started out with a DIY parallel kit. I soldered it together, and used a dos program to write to the chips and everything worked fine for the time I used it. When I tried to use the programmer more recently, I no longer had and old dos computer so I went searching for a window program but wasn’t able to find any that would work with my old school programmer. So I thought it may be easier to just upgrade. Just in searching around, the JDM style serial/usb programmer seems to be one of the cheapest. Going cheap now could mean wasted time and money later. If all you want to do is program a few small chips here and there, the JDM should hold you over. I went with one of the bigger programmers it is called the Willem Enhanced. I believe I grabbed it from mcumall.com, but don’t hold me to that.

PIC Programming Software

There are several PIC programming applications available on the net. I started out with P16PRO in dos mode. Once adjusted, it worked very well with my DYI parallel programmer. The Windows gui upgrade to P16PRO is called PICALL. I had some issues with with PICALL, and can’t much remember why and ended up using “Win PIC Programmer”. WinPICpr can be downloaded from DL4YHF’s Software Archive. WinPICPR has all the right features, is easy to use, and is free! So it is definitely in my toolset. For Linux, there is also a PIC pragram called “PiKDev”. Just yum install pikdev, and you are off to the races.

PIC Compilers

  • C
  • Basic
  • Linux / Other
    • PikDev – IDE and chip programming interface
    • SDCC – Small Device C Compiler

PIC Programming Project

So now you have chips, a programmer, programming software so now you need a project circuit to test out this new toy. If you are not familiar with breadboarding, you may want to go ahead and just get simple prototyping board. It takes the guesswork out of getting the first chip up and running properly. $16 for a board from Sparkfun will save many headaches [14 pin board ].

(to be continued)

Sample Projects
-Blink
-Serial Communications
-1-wire