Beginner needs help choosing microcontroller platform & software

UFO Joe wrote:


pretty much, yes. You can make a programmer that needs no external components. My programming cable is just that, a cable. The AVR can be serially programmed in-circuit (useful to upgrade firmware without removing the chip from the board). There is software that will bit-bang the serial stream on the parallel port. This is what I use: <http://www.bsdhome.com/avrdude/
You can parallel program the chip also, but in that case you need some 12V supply I believe. the new AVRs also support self-programming by a boot-loader, so once a boot loader is installed on the chip you can program it through the standard serial port. I have not tried that though, but I am sure there are some open source bootloader and clients out there.
bruno

Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

I don't have a parallel port, nor a parallel port cable. And I was told that programming an AVR (without a bootloader) needs a programmer cable, which is about $50. Can anyone clarify which is correct?
Thanks, - Joe
,------------------------------------------------------------------. | Joseph J. Strout Check out the Mac Web Directory: | | snipped-for-privacy@strout.net http://www.macwebdir.com | `------------------------------------------------------------------'
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
All the programmer does is convert some serial or parallel stream provided by the PC, in some different stream respecting the timing constraints of the device being programmed. you can do that directly by twiddling the ports of the PC. see http://www.bsdhome.com/avrdude / this guy has several programmers http://elm-chan.org/works/avrx/report_e.html
here is a mac-avr page http://www.eecs.berkeley.edu/~mseeman/resources/macmicro.html
do some googling.
If you are going to be hacking, use a motherboard and OS with hackability potential. You need a parallel port, it's the best way to tinker and control zillions of things with your computer, for really cheap. The replacement of the RS232 and parallel ports by USB ports is maybe great for manufacturers, but a shame for hobbyists, tinkerers and students.
Since you are a Mac user, and Mac OSX is basically FreeBSD, you might want to find some old 486 or pentium PC (certainly you can find one for free) and install BSD or linux on it. You can network it with your mac, use the PC as a universal programmer/controller, and do all your work on the Mac.
I personally use mostly FreeBSD, and windows when I have to. I have also a Mac OSX machine. I use the right tool for the problem at hand.
The fact is: for hackability, microcontroller and electronic hardware development, you have a lot more choice on BSD/Linux/Windows machines. Windows because that is what the manuacturer's tools run on. BSD/Linux because people interested in that kind of stuff generally run Open Source systems. Macs ? don't get me wrong, but macs are still geared toward the hip and stylish designer-types, not the engineering types. OSX is somewhat changing that though.
If you want to exclusively use a Mac, it is going to be a lot harder merely by the fact that there are few people out there doing that stuff on a Mac.
bruno
PS: did you ever get my email about the OWI arm ?
Joe Strout wrote:

Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
[...]

You don't need a parallel port. If your computer doesn't have serial (RS422) ports, you'll need a USB to serial converter. I can recommend the Keyspan devices, that have been working marvellously well for me.
You'll also need Atmel's AVRISP programmer, which probably is the "cable" that is referred to above. (You can build a programmer yourself, but then Catch 22 strikes: You'll need a programmer to program the programmer...)
I'd recommend that you install the AVR GCC stuff via Fink, <http://fink.sourceforge.net/ , because that way you'll get it updated more or less (your choice) automatically. You can read more about the programming environment here: <http://www.eecs.berkeley.edu/~mseeman/resources/macmicro.html and here: <http://ccrma.stanford.edu/courses/250a/toots/avr-osx.html .
Myself, I also use the AVRA assembler, that can be found here: <http://avra.sourceforge.net/ . It compiled "as is" under Fink.
Good luck! /Bjarne.
--
http://www.flexusergroup.com /

Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Hi
I too am only a lowly newbie. I am studying part-time for an Advanced Diploma in Electrotechnology. This year I did an introductory C programming course called Programming Fundamentals (next is Electrical Control C Programming, then Advanced Control Using C++). The course taught C extensively using an 8255 IO PPI (parallel port interface ) digital card (and also an analogue PPI card).
These can be used for things like reading a signal from light sensors, switches, controlling DC and stepper motors, LEDs, interfacing with a uC (microcontroller), controling relays, and others. I don't know what sort of speed you need, but for my major project I programmed a tethered Lego buggy (no uC) to follow a white line around a circuit that had some tight bends and it responed well. It used relays and light sensors to control the motors.
Although I haven't done it myself, would interfacing an 8255 PPI card to a uC work? I mean you have the processing power and larger memory resources of the PC to use. Even an old cheap or FREE PC with ISA and PCI ports would do. Surely one of the latest PICs or AVRs is pretty fast? Or even a DSP? FREE trial DSP compiler in BASIC and Pascal from:
www.mikroelektronika.co.yu
You could probably get free PIC samples from:
www.microchip.com
I have gotten HEAPS of FREE samples from them. They also have a FREE student version of a C compiler for the 18 series PICs.
Yesterday I received two ARM7 32-bit uCs from Texas Instruments. They were FREE samples! I think they have 1MB of flash memory, 64kB of RAM, and operate around 60MHz or more. Mainframes in the 1960s/70s used 64k of RAM! Surely with that grunt, scores of IO pins and a PC linked to an 8255IO card you could get some serious work done? TI bundles an evaluation kit with a limited (FREE) IAR compiler, and maybe there are others (gcc port?). The challenge is to make a PCB or prototype board and solder the ARM7.
I have even seen websites on how to make your own 8255 IO card for an ISA bus. For some cards less than AUD $100, and with drivers and examples in Visual BASIC, C++ and Delphi:
http://www.futurlec.com.au/Computer.jsp
One card has 72 IO channels.
The book "Build Your Own Humanoid Robots" has a project interfacing a simple robot arm with 6 DOF to PC and to a PIC using a Visual BASIC GUI, although this could be adapted to similar RAD IDE like FREE open source IDE for C# and Visual BASIC, or if you can pick up a free copy of MS Visual Studio, C++, C#, Delphi or Visual BASIC:
http://www.icsharpcode.net/OpenSource/SD /
Eventually I will tackle some projects using similar resources.
If I can find and use these resources, I am sure that if you too are resourceful you can find some solution. The only thing I have found with some open-source/FREE stuff is that sometimes a lot of effort is needed - but then there is no such thing as a free lunch. ; -]
Anyway give it a go! If you can accomplish this you will surely kick ...
ps What does everyone think of these ideas?
Cheers
| -]
Dale
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

Polytechforum.com is a website by engineers for engineers. It is not affiliated with any of manufacturers or vendors discussed here. All logos and trade names are the property of their respective owners.