I bought a USBTiny AVR programmer on eBay for about A$8 posted.
Above, the seller’s pic of the package.
It is almost always the case that the ISP headers on the programmer use the standard pinout published by Atmel, and in that case the supplied ISP cables need to be pinned pin for pin, ie pin 1 to pin 1 etc.
If you look carefully at the pic, the key is towards the top of the pic which means pin 1 on the right hand plug is towards the viewer and pin 1 on the left hand plug is away from the viewer. The cable does not connect pin 1 to pin 1, and as a consequence the package did not work.
There is more than one way to connect these plugs, and above is one way that does connect pin 1 to pin 1, and the cable and USBTiny work. Though the seller has been told of this defect, he continues to sell the item with the pic of the defective cable.
One wonders how many thousands of these things are and will be sold with this defect.
I have evaluated three different series of STC 8051 architecture MCUs, the STC89S52RC, STC15F104E, STC15F204EA.
English documentation is hard to find, and in some cases the translation from Chinese to English is poor and diagram annotations (eg flow charts) are still in Chinese. Continue reading An experience with STC 8051 microcontrollers
The STC15Fx chips use a simple TTL/CMOS async programming interface that is suited to the common USB-RS232(TTL) adapters, some of which are less than A$2 on eBay (CH341 chip).
Above, the completed adapter. Both DIP-8 and DIP-28 are located furthese from the operating lever, and pin 1 towards the operating lever, the same jumper connections are used for both chip sizes for STC15F104E and STC15F204E.
There are two spare Gnd pins next to the black jumper above but hidden from view. They are for grounding jumpers that may be required to enable programming of some ‘bootloader protected’ chips.
The 6 pin male and female headers at lower left accept a USB-RS232 adapter (break out board style or cable) with the common Arduino pinout. The only thing that commits the pinout is the 1µF bypass capacitor between Vcc and Gnd pins and the spare Gnd pins. The USB-RS232 adapter powers the chip being programmed, and it needs to be a 5V adapter.
Alternatively one of the little MAX232 adapter boards could be used with a physical RS232 port, but power will be required.
After almost 50 years working with 8bit microcomputers and microcontrollers, I thought it about time to get my hands dirty on some 32bit microcontrollers.
The plan is to investigate two streams, one ST Microcontoller based and one ATMEL based, both ARM architecture. Continue reading Time to get some experience with 32bit microcontrollers
One often sees enquiries by people trying to save the hex file made during the Arduino build process.
It is not trivial, as in their wisdom, Arduino hides these details, and builds the hex file in a randomly named temporary directory for each IDE which it deletes when the IDE is closed.
There are times when you may want to save the hex file, perhaps to load it without a bootloader or using a non-supported bootloader, Flashing LED driver using an ESC was just such a project. Continue reading Capturing the AVR hex file built by Arduino on Windows
I couldn’t help myself… I bought a Raspberry Pi 2 (RPi2) to evaluate.
The RPi2 has 1GB of main storage (double that of the earlier RPi B+), and a 4 core 900MHz processor against a single core 700MHz process in the the RPi B+. Continue reading Raspberry Pi 2 initial impressions
I have been testing some RS485 communications of recent, and found the need for some flexible adapters for the above interface box. The adapters are to provide selectable line termination and fail-safe bias. Continue reading RS485 termination / bias adapter
I had purchased a handy little USB-serial adapter with multiple outputs some months ago, and although it checked out on delivery, the next time I wanted to use it, it just didn’t work at all.
Above, a view of the internals. It uses an FTDI FT232RL chip, and MAX232 and Max 485 for the RS-232 and RS-485 outputs. Continue reading USB – RS232/TTL/485 adapter
In the past, I have recommended FTDI based USB-RS232 adapters strongly because of their reliability and compatibility, albeit at a price. Continue reading FTDIgate and revokation of my previous unqualified recommendation for FTDI
One of the shortcomings or RPi for (m)any serious applications is that it lacks a hardware clock so when it starts, the clock is not set correctly.
This deficiency can be overcome to some extent for some applications with the fake-hwclock module and SNTP where the RPi is always connected to a network.
The standard scheduling daemon cron does not run tasks that were missed because the system was not running at the time they were scheduled. It is a significant shortcoming that has been overcome by adding another element, anacron, which wraps the cron tasks and is scheduled by cron and at startup. All of this is very dependent on correct clock time, and for RPi systems that lack a hardware clock (the out of the box hardware), the system time can be quite wrong at the time anacron is scheduled as part of the startup procedure.
Continue reading Cron configuration improvements for Raspberry Pi