Mikkel L. Ellertson wrote:
I'm not sure what you mean here by 'USB to serial device with TTL level
outputs'. Yes, the programmer is plugged into a USB port on my FC5
machine at one end and an Atmel-based controller board on the other end.
I want to program an Atmel Atmega128 chip which is on the controller
board. It has a Maxim Max3222 chip on board. The board is intended to be
a robot controller.
What I have run into before is that what they are calling a
programmer is actually a communication cable that talks to a serial
port on the development board that is a ttl (0 to 5V - with 5V as
logic 1) instead of RS-232 (+/- 3 to 35 volts - polarity indicates
logic level.) The actual programming is done by the development
board by firmware on the board. You are usually talking to a monitor
program of some sort on the board or chip.
In this case, it looks like the programmer is a bit more complicated
then that. I did not find the pinouts for the ISP Programming
Interface, so I am not sure how much the programmer really does...
Mikkel
Hi Mikkel,
This is the controller board I'm programming
http://www.bdmicro.com/mavric-iib/
and the manual for it is here
http://www.bdmicro.com/mavric-iib/mavric-iib.pdf
Page 15 of the manual has a circuit diagram showing the pinout of JP2,
which is the ISP header.
The AVRISP programmer I am using is apparently an older model. I
discovered it does work. To test it I ended up using a Windows XP
computer. Now I'm hoping to get it to work on my FC5 computer.
The AVRISP I have here contains a CP2102 USB to UART Bridge Controller.
When I plugged it in to the USB port on the test computer, Microsoft
Windows came up with the "New Hardware Found" Message and waited for me
to provide a driver file. The programmer came with a CD containing
drivers, so I installed those. They seem to originate from
http://www.silabs.com/ but I haven't investigated their web site closely
yet.
A check of Device Manager showed that the CP2102 controller was on COM4.
Here is what I did next:
*Downloaded and installed AVRStudio4 from the Atmel website, plus the
latest AVRStudio4 service pack.
*Downloaded and unzipped the 'hw' sample code from the bdmicro.com
website which should flash the programmable LED which is on the
controller board. The sample code has a precompiled hw.hex file I can use.
*Started AVRStudio4.
* Clicked the button to connect to the programmer.
At this point AVRStudio came up with a message saying it has detected
the programmer, but it needed a firmware upgrade from firmware version
2.07 to the most current version. I clicked OK to upgrade the firmware.
After cycling power to the programmer (by unplugging it from the USB
cable and replugging it in) I was able to program the ATmega128 chip
with the hw.hex file, and the board's programmable LED started blinking.
The programmer did come with a Linux driver..here is a portion of the
README file:
CP210x Linux Driver v0.81b Release Notes
Copyright (C) 2004 Silicon Laboratories, Inc.
This release contains the following components:
* cardinal-redhat9-V0_81b.tar.gz
* Readme.txt (this file)
...
Do I need to compile and install this software? I'm afraid of breaking
something.
I get the impression from the /var/log/messages output when I plug the
programmer in to the USB port that this driver is already present in the
2.6.18-1.2257.fc5 kernel, and ttyUSB0 is a serial port, isn't it? I'm
still not sure how to get avrdude to speak to the programmer. Perhaps
the firmware upgrade done to it by AVRStudio will help.
Bob