查看完整版本: ATMEL 8051 Flash Based-Microcontroller Programmer DIY version 1.1

szsxmys 发表于 2011-8-30 01:01:32

ATMEL 8051 Flash Based-Microcontroller Programmer DIY version 1.1

ATMEL 8051 Flash Based-Microcontroller Programmer DIY version 1.1

台湾人编的。

http://chaokhun.kmitl.ac.th/~kswichit/shiao/prog.htm

liyf 发表于 2011-8-30 08:12:50

请转过来,他的部分网页有木马,辛苦了:D

szsxmys 发表于 2011-9-1 08:59:21

本帖最后由 szsxmys 于 2011-9-1 09:00 编辑

好的。我转一下。

ATMEL 8051 Flash Based-Microcontroller Programmer DIY version 1.1
Shiao I-Lin, e1586110@ccmail.ncku.edu.tw Introduction :
The Atmel Flash devices are ideal for developing, since they can be reprogrammed easy and fast. If you need more code space for your application, particularly for developing 89Cxx projects with C language. Atmel offers a broad range of microcontrollers based on the 8051 architecture, with on-chip Flash program memory.

Reprogrammable Flash http://chaokhun.kmitl.ac.th/~kswichit/shiao/atmel-wm.gif
http://chaokhun.kmitl.ac.th/~kswichit/shiao/acrobat.gifAT89C51 80C31 Microcontroller with 4K bytes Flash
http://chaokhun.kmitl.ac.th/~kswichit/shiao/acrobat.gifAT89C51RC
http://chaokhun.kmitl.ac.th/~kswichit/shiao/acrobat.gifAT89LV51 2.7-Volt, 80C31 Microcontroller with 4K bytes Flash
http://chaokhun.kmitl.ac.th/~kswichit/shiao/acrobat.gifAT89C52 80C32 Microcontroller with 8K bytes Flash
http://chaokhun.kmitl.ac.th/~kswichit/shiao/acrobat.gifAT89LV52 2.7-Volt, 80C32 Microcontroller with 8K bytes Flash
http://chaokhun.kmitl.ac.th/~kswichit/shiao/acrobat.gifAT89C55 80C32 Microcontroller with 20K Bytes Flash
http://chaokhun.kmitl.ac.th/~kswichit/shiao/acrobat.gifAT89C55WD 80C32 Microcontroller with 20K Bytes Flash
http://chaokhun.kmitl.ac.th/~kswichit/shiao/acrobat.gifAT89LV55 2.7-Volt, 80C32 Microcontroller with 20K bytes Flash
Devices :
Today following devices can be programmed:
[*]AT89C51
[*]AT89C52
[*]AT89C55
Hardware : sketch circuit (similar to version 1.0)
http://chaokhun.kmitl.ac.th/~kswichit/shiao/prog51.gif

szsxmys 发表于 2011-9-1 09:01:47

update
updated 2000/09/13
System requirement : Hardware : PC with Bi-directional 8-bits Parallel Port supporting ECP or EPP or PS/2 mode.
Software : DOS 6.0 or Win95/98
Appearance :
This figure shows the circuit diagram of the Programmer v1.1
The advantage of this programmer is it doesn`t need the pre-programmed 89C51.
The 89C51/52/55 receives the 8-bits data from PC parallel port via 82C55A. 1. U1 : 82C55A is a Programmable Peripheral Interface :
[*]Fully TTL Compatible
[*]High Speed, No ¡§Wait State¡¨Operation with 5MHz & 8MHz.
[*]24 I/O pins which may be individually programmed in 2 groups of 12 and used in 3 major modes of operation.
[*]The high performance and industry standard configuration of the 82C55A make it compatible with the 80C86, 8051 and other microprocessors.
2. U2 & U3 : 74LS373 or 74LS573 ( pinout are different ) : used for data latch.
3. U4 : AT89C51/52/55 : The chip you want to programming. How does it work :
[*]82C55A is the interface between PC Parallel Port & 8951.

[*]Seting U1-8255 to basic mode (mode 0).
[*]Parallel Port output the Programming Adrress (2-bytes) of U4-8951 to 8255 data port, one byte each time.
[*]8255 PortA output the Address to both 74373 (3-State Latches ).

[*]the 74373 output is controlled by 3-State gate.
[*]Low byte output Address A0 ~ A7 via U2-74373
[*]High byte output Address A8 ~ A14 via U3-74373
[*]Parallel Port output the Programming Data (1-byte) to 8255 data port.
[*]8255 PortB output the Data to 8951 directly.
[*]Seting 8951 prog mode ( P2.6 P2.7 P3.6 P3.7 ) by 8255 PortC ( bit7 ~ bit4).
[*]Seting 8951 prog Vpp by 8255 PortC ( bit2 ).
[*]Pulse ALE/PROG once by 8255 PortC ( bit3 ) to program a byte in the Flash array or the lock bits.

[*]Ready/Busy: The progress of byte programming can be monitored by the RDY/BSY output signal. It is received by Parallel Port Pin11.
But I don`t take it in my program.
[*]Repeat steps 1 through 8, changing the address and data for the entire array or until the end of the object file is reached.
Features :
[*]Input: Intel HEX-file (use converter to load binary)
[*]Autodetection the Chip
[*]Fast parallel programming via 82C55A by Parallel port
[*]Protect Function is no use in this version.
[*]Direct be powered by Power Supply inside the PC
Function :
[*]Programming from hex-file
[*]Verify from hex-file
[*]Read Code out to a file
[*]Chip Erase
[*]Check hex-file accuracy
[*]Chip Info
[*]Lock bit protect (not in ths version)
Software :
[*]Prog51.exe v1.0 / v1.1 (Debug continue) / v1.1beta1 : For Win95/98 or MS-DOS 6.0, not for WinNT
[*]Protel Schematic Circuit Diagram 8051.sch or in 8051.gif format

Note :
This circuit is NOT a complete version but just a evaluation. I still investigate, and I hope that people who are interested will make it better. After all I just a student in school.
Note : (chinese)
¹q¸ô©|¦b´ú¸Õ¶¥¬q¡A³] p¨Ã«D§¹¥þµL»~¡A§Æ±æ¤j®a¤@°_°Ñ»P¬ã¨s¡D

FAQ : (Thanks for each mail from you ~~ )
[*]Q: Wichit Sirichote : I saw your bigger drawing in gif file, you didn't provide the reset signal to 8255, I've never been used with this circuit, "tie to GND". Does it work properly?
A: I have update something of the programmer page. U said that 8255 shall provide the reset signal to 8255. Is it necessary ? One of the reason is because parallel port don`t provide one more control line. I had try this circuit on the bread-board, and it works well.

[*] on the datasheet, it write " RESET: A high on this input clears the control register and all ports (A, B, C) are set to the input mode with the "Bus Hold" circuitry turned on."
[*]Q: Wichit Sirichote : Why don't try with simple RC reset, I suppose the reset signal is logic 'high' for a short period, and this will clear internal register. Please recheck with another PC. If it work fine. please provide me a description with your circuit.
A: The original ideal of this circuit was " As simple as possible." The portion of 82C55A, I referred to the book "Peripheral Application with Parallel Port." It don`t take any reset portion for 82C55A,but just used a pull-down resister about 10K ohm. Although I don`t know why, I just take the same concept as the book.
[*]Advice from Wichit Sirichote : Shiao, most of the peripheral chip with internal sequential logic (flip-flop function) must have such reset pin, the internal circuitry needs a short period to reset all internal not only control register, but also the latch of the port. In the past I have experience with 8035 single chip (father of the 8051) and interface with 8255 PPI, I forgot to connect reset pin of the 8255 to 8035, the 7-segment display and keypad didn't work. When I connect it, it works OK. I suppose with a simple pulldown resistor, and a stray or internal capacitance between reset pin and +Vcc, then would provide sufficient RC time to reset internal circuit when powering the chip with sudden change of DC supply. You may use the logic probe to measure the logic when turns the DC supply on, you should see a blib signal for a logic high then stay low. If this happen, the simple 10K pull down is OK. If can't see, try DSO with single short. Capture the transient, you will see the Reset pin go high then decay with RC constant.
[*]Q : Kevin (in Chinese Big5) ±zªººô ¶ÆZ±M·~ªº³á! §Ú¦³¤@ Ó°ÝÃD ¬O±z¬O·Q n§Ú¦p¦ó³¹¶K±zªº¤å³¹ ? ¦]¬°±z¤w»s§@¦¨ºô ¶¤F ´N¦³³Ð§@Åv , ·Q½Ð°Ý¬O¥Î³sµ²ªº¤è¦¡ , ÁÙ¬O§Ú¥i¥H¥Î°Å¶K ªº¤è¦¡ ??
A : Thanks for your mail. ¥Ø«eªº³] p,©|¦b´ú¸Õ¶¥¬q,¨ä¤¤¤]³\¦³¨ÇBug,§Ú·Q§A¯à¥ý¥Î³sµ²ªº¤è¦¡, Åý¤j®a¤@°_°Ñ»P¬ã¨s §Ú¬Û«H§ó·sªº§@«~ ±N¦b²³¤H§V¤O¤U½Ï¥Í .

Background :
[*]Parallel Port : EPP / ECP / ParallelPort interface
[*]8051 : ATMEL Homepage
[*]Datasheet : 82C55A / 74LS373 / 74LS573 / LM317
This Atmel Programmer was designed by Shiao I-Lin. Update 2000/09/20

liyf 发表于 2011-9-1 09:30:46

:lol还真是转的,整理一下嘛
页: [1]
查看完整版本: ATMEL 8051 Flash Based-Microcontroller Programmer DIY version 1.1