The scanner automatically goes into the wired programming mode. Macos high sierra patcher tool. PGM and WirEd appear. Page 76: Cloning Your Scanner You can clone all the frequencies, trunking talk groups, and fl eet maps programmed in your PRO-2051 to another PRO-2051 using an optional interface cable and software (available at your local RadioShack or www.radioshack.com). At89c2051 programmer free download. Mcs51linux This is a very simple EEPROM programmer for MCS-51 chips like AT89C2051, AT89C1051, AT89C4051 for Bl.
- 2021 Programming Ideas
- 2051 Programmer Download
- 2021 Programming Language Trends
- 2051 Programmers
- 2021 Programming Language Popularity
Our AT89C2051 and AT89C51 programmers are now only available to special order - the new P89C51RD+ and T89C51RD2 represent far better value for money - and they can be programmed via a serial port, so you don't need to buy a programmer from us! If you still want our programmer - after all it is one of the only AT89C2051 programmers that works under any operating system, and programs in 6 seconds - Please contact us and we'll place a backorder for you |
Erase, Program and verify an AT89C2051 in one easy operation!
Programs in just 6 seconds!PG2051 - A Programmer for the Atmel AT89C2051, from AirBorn Electronics
The AT89C2051 is a 20 pin 8051 compatible microprocessor (including serial port) with 2k of FLASH memory, available from Atmel (see http://www.atmel.com/atmel/products/). The PG2051 erases, programs, and verifies AT89C2051 chips in 6 seconds. As the AT89C2051 devices are FLASH, they can be reprogrammed as often as needed.
The PG2051 may be connected to a PC or other host by a serial cable. The programmer interface is PC serial compatible, operates at 9600 Baud, and accepts standard Intel Hex files.
The programmer features a test switch which allows the owner to check if an AT89C2051 is blank, working, programmed or failed in just one second - without needing the PC connected.
- Programs the 2k FLASH memory in 89C2051's
- Can be reprogrammed 1000 times per chip
- Fast - programs a chip in 6 seconds (typ.)
- 89C2051 is 8051 Instruction and Reg compatible
- Programmer interface is PC serial compatible
- 9600 Baud, 8 data, 2 stop bits, no parity
- Accepts standard Intel Hex files
- Programs Security bits, if required
- Dipswitch selectable
- One Step program operation
- Download starts Test/Erase/Program/Verify
- Stand-alone test switch
- Allows 89C2051 test without PC download
- Tests for blank chip without PC download
- Programmer also handles AT89C1051's
- Powered by DC plug pack (supplied)
- Evaluation Kit includes two sample 89C2051 devices
FEATURES:
AUD$188 (+gst)
for Programmer, plugpack
& Data sheet
OPERATION:
The PG2051 is a development programmer for the ATMEL AT89C2051. The AT89C2051 programmer is fast, small and simple to use.The programmer may be connected to a PC or other host by a serial cable. The data to be downloaded to the programmer is transmitted in Intel Hex format. The programmer will erase & program, verify, write protect and security protect as it receives the file, according to the settings on its Dip switches.
Insert an 89C2051 | - (Manual Test if desired) | Mode COM1:9600,N,8,2 |
Download intel hex file | - (Causes programming) | Copy Myfile.hex COM1 |
Watch LEDs | - (Indicates success) |
The PG2051 can be used stand-alone by inserting an 89C2051 and operating the Manual test switch, in this mode it indicates Tested, Blank and Verified checksum conditions.
EVALUATION KIT:
The PG2051 evaluation kit, with prototype board [Click here for schematic]
- The PG2051 programmer
- Power supply plugpack
- PG2051 data sheet and reference card
- Two AT89C2051 FLASH memory CPU devices
- A small prototype board with LEDs, to test with
- A well documented sample .ASM program
- A shareware assembler & dis-assembler
- $233 (plus GST [tax] in Australia)
AUD$233 (+gst) for Evaluation kit &
Programmer. Order by Fax, Phone
or Mail - see ORDER FORM.
The AT89C2051 Microprocessor
- Just Page One of the AT89C2051 data sheet ..the pinout and features, quicker download
- For more information on these microprocessors, visit Atmel's site.
The AirBorn Electronics programmer described here connects to a Serial port, works under any operating system, and programs in 6 seconds by just copying the hex file to the COM port. There is also a programmer design available from Atmel that you can build yourself - although it does not share these features. Download the free programmer here, - but remember to get the software from Atmel, also. |
Fax: (61)(2) 9922 4483
Tel: (61)(2) 9925 0325
Mail: AirBorn Electronics
P O Box 1491
North Sydney 2059
Australia
Building a programmer for the Intel MCS-51/8051 compatible AT89C2051, with host software running on MacOSX.
Notes
I’ve been meaning to dive a bit deeper intoIntel MCS-51/8051 devices and programmingever since I built the LEAP#088 ElectronicClockKit.While it’s long been EOL at Intel, this article By Jon Wilderis a valiant argument for why they are still around.
I have some (still in production) AT89C2051 chips -but before I can do much more, I need a programmer. Mac os x capitan iso download.
Reading the AT89C2051 datasheet, its seems programming is actually a quite straight-forward process - the only complicationbeing the need for a 12V programming voltage in addition to standard logic high of ~5V.
So while I could go out and buy a programmer, the idea of building my own is very attractive for two reasons:
- it is a bit of a short cut to building familiarity with the chip and datasheet
- I can make sure it supports my host platform of choice - MacOSX
Inspirations and Prior Art
I found a couple of interesting projects that provided a good starting point.I’d recommend checking these out. In summary:
- AT89C2051_programmer
- by piotrb5e3
- uses separate 12V programming voltage power supply [negative]
- open source python host programming software distributed via PyPI (at89overlord) [positive]
- uses Arduino Uno as a programmer [positive]
- An Arduino-based programmer for the AT89C2051 chip
- by ceptimus
- uses a charge pump for 12V programming voltage [positive]
- charge pump control is quite naive (bit-banging) [negative]
- C# host programming software, open sourced but not in collaborative version control [negative]
- uses Arduino as a programmer [positive]
- quite wasteful of GPIO pins, so requires Arduino Mega/ATmega2560 [negative]
Boiling down my wishlist/plan:
2021 Programming Ideas
- use an Arduino-controlled charge pump for programming voltage, but control it with PMW similar to LEAP#393 DicksonChargePump
- assign GPIO pins judiciously so can still use Ardiuino Uno/ATmega328 as the programmer
- base the Arduino programming sketch on piotrb5e3’s, but modified for charge pump control
- hopefully maintain compatibility with at89overlord so it can be used as the host programming software, else adapt as required
VPP/RST Power Control
We need to switch between 12V, 5V and 0V on the VPP/RST pin for the range of programming modes.From the datasheet
- VPP Programming Enable Voltage: 12V ± 0.5V (programming current is only 250µA)
- for HIGH with 5V supply: actually require 0.7 * VCC i.e. 3.5V minimum
- for LOW: actually require 0.2 * VCC - 0.1V i.e 0.9V maximum
My goal was to achieve this with as few Arduino pins as possible, and without requiring an external 12V power supply.I can’t find the specs, but I’m pretty sure we need negligible current/power at any of these levels, which simplifies things.
I finally figured out this scheme. It needs 3 Arduino pins:
- ~16V charge pump, generated with 62kHz PWM from 2 pins (inverted pair of PWM waves)
- the output is fed to VPP/RST after clamping with a 12V zener diode
- 0/5V controlled with a digital pin:
- 5V is connected to VPP/RST via a diode to prevent 12V appearing back on the Arduino pin
- 0V signal is inverted via a pair of NPN transistors that pull the VPP/RST down hard
- this avoids ~2V from the unexcited charge pump preventing a true 0V input
And it works;-)
There is one caveat: there’s an “invalid state” that must be avoided lest the magic smoke may be released in a possible high current/burnout.This is avoided in the programming software.
Here’s a breakdown of the control states. In this table:
2051 Programmer Download
- RST_PIN - pin A0 output
- Charge Pump PWM - pins 3,11 output
RST_PIN | Charge Pump PWM | Charge Pump Voltage | Q1c | Q2 | VPP/RST |
---|---|---|---|---|---|
High, 5V | On | 12V | Low | Off | ~12V |
Low, 0V | On | 12V | High | On | invalid state |
High, 5V | Off | ~2V | Low | Off | ~4.4V |
Low, 0V | Off | ~2V | High | On | ~0V |
2021 Programming Language Trends
Possible improvement: I could probably reduce this to requiring 2 pins in total with the addition of an inverter IC to:
2051 Programmers
- invert a single PWM signal for charge pump control
- replace the 2 x NPN inverter for the 0V pull-down
Installing at89overlord
Using a Python3 virtual environment. Requirements are in requirements.txt
This installs at89overlord 0.4.0 (there wasa minor issuewith the packaging of 0.3.0 that may cause problems; 0.4.0 works fine though)
2021 Programming Language Popularity
Programming a Device
On my system, I have the Arduino plugged in and appearing on /dev/tty.usbmodem14511
.
Using the hex file generated with the Blinky code here, programming a chip is as simple as this:
Breadboard Construction
Putting it on a Prototyping Shield
With so many wires on the breadboard, this is not very practical to build every time I need to program an 8051,and it is pretty fragile - just one dodgy wire and programming/verification can easily fail.
It looks like a nice project to build a custom board, with ATmega328 built in … another project for later!
I have a spare prototyping shield for an Uno, so for now I’ve put the circuit on that.Here’s a sketch of the layout I used:
The finished shield:
Now it’s easy to program an AT89C2051.
Credits and References
- Intel’s MCS-51 Microcontroller Family – It’s Here to Stay by Jon Wilder
- 12 Volt Arduino-based Charge Pump - similar project used as inspiration
- An Arduino-based programmer for the AT89C2051 chip - ceptimus