Continue to Site

Welcome to

Welcome to our site! is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Need Help with DS89C430 \ DS89C450 Programmer

Not open for further replies.


Newbie level 4
Jul 25, 2007
Reaction score
Trophy points
Activity points
ds89c450 programmer

Hi everyone!

I am currently trying to make a programmer for DS 89C430 \ DS89C450. However I am having some problems in making it to work. first of all, the schematic I used is the following (I think it is based on the Dallas Maxim Application Note about In System Programming):

**broken link removed**
Note: Instead of an SN74LS125 I used a SN74HC125N that Î already had at home. The logic table is the same.
do you see any errors in it? I made a PCB from that schematic using Diptrace:

**broken link removed**

Once again, do you see any errors? feel free to edit the images if you want.

For the 5V power supply I used a USB cable to provide power do the circuit instead of making an external power supply.

As my laptop does not have a Serial Port I am using a USB to Serial converter.

I am sure that I have tried to "Connect to Loader" with the correct COM selected.

Can you tell me what's wrong?

By the Way.. Does this circuit provided by Dallas Semiconductor need any extra components or connections besides the ones that are in the circuit?

Can anyone post a complete schematic of a programmer that has already been tested and works?

Thank You for your attention.. if you have any questions to make I'll answer them.. I just want to get this working..

ds89c450 74hc125

First, take a look at this post:

If it solves yor problem, that's fine, if not - come back ..


BTW, this is what you should have on the laptop's screen:

> R<0D><0A>
>W  CKCON 1<0D><0A>
W CKCON 1<0D><0A>
> W  ACON 00<0D><0A>
W ACON 00<0D><0A>
> K

Loading File C:\Assembler\450_HEL2.HEX

> Erasing Flash   <0D><0A>
> K<0D><0A>
> <0D><0A>
> ==> Completed

Loading Hex file... 



Load complete.

expresssch dallas

Thanks! I'll take a look at the link that you posted. If I keep having problems.. I'll let you know.

Thank you for answering :)

Added after 45 minutes:

Hi again!

I did what you said but it didn't work :( I still can't connect . I always get the message:

"Unable to establish communication with target. Check connection to target system or consult help files"

I tried the 14400 and 9600 baud rates and configured the flesh level to 4.

by the way.. I'm using the crystal 11.0592 MHz.

Here is a photo of my board:

**broken link removed**

Any other suggestions?

89c450 in circuit programming

May be is you rs232-usb converter


    Points: 2
    Helpful Answer Positive Rating
programmer sn74hc125n

I already thought about it.. but I talked to one of my teachers from the University and he told me that there wouldn't be a problem to use it because it is a basic Serial communication system using only 3 lines. He said that if the programmer needed to use more pins to connect to the computer, it wouldn't be possible... but I don't know... I'just trying to gather some inofrmation to see if I can make it work...

Added after 4 minutes:

There's one thing I noticed.. I have been measuring some voltages in the programmer.. and I verified that when the power is on and the board is connected to the converter, I have the following results:

PSEN = 5,10 V

EA = 5,10 V

RST = 0,01 V

RxD = 5,10 V

TxD = 5,10 V

Is this normal? I you need any more voltages to identify any problem just let me know and I'll measure it

isp for ds89c450 pdf

use ls244 insteard of 105.all same
baud rate no problem.20mhz crystal.

ds89c430 security level

Kasp3r said:
I already thought about it.. but I talked to one of my teachers from the University and he told me that there wouldn't be a problem to use it because it is a basic Serial communication system using only 3 lines. He said that if the programmer needed to use more pins to connect to the computer, it wouldn't be possible... but I don't know... I'just trying to gather some inofrmation to see if I can make it work...

Try to use a real rs232, not converters because it have a latency time for tx and rx. I had too much problems with diferent converters for programming. If you do not have a real rs232, try to disable the FIFIO buffer.

circuit to control loader ds89c450

Just for the sake of test, connect pin 31(EA) to 0V, pin 29(PSEN) to 0V and pin 9(RST) to +5V and for the time being forget about DTR and LS125 gates ..
All what you need is 3-wire RS-232 connection between the PC and the DS89C450+MAX232: RxD, TxD and GND ..

If you use "current" version of software [2.4.04], leave Flash Security LEVEL 1 !!!, open COM port @9600 baud and after you click on Connect to Loader you should see this (in blue):



    Points: 2
    Helpful Answer Positive Rating
ds89c450 needs reset

Hi everyone again!

I finally solved the problem. I talked to my teacher again and we spent some time analyzing the board and we found the problem. I had to make 2 changes in the circuit.

1 - In the schematic the ground connection of the serial port is missing. I made that connection by soldering a wire between the port ground pin and the ground of the circuit.

2 - Made a short circuit from the pin EA to ground and left the corresponding MAX232 pin in open circuit

Now it works!

Thank you everyone for helping me out with this! I hope that someday I can help you guys :)

I'll try to make a complete schematic and PCB for a working programmer. when I get it done I'll post it here to help anyone with the same problems.

Thanks everyone!

Good luck

ds89c450 ea unable to gnd

Hi Kasp3r,
Still waiting for your final schematic :):)

On the Maxim site you can download a pdf with the full description of the evaluation kit for the DS89C450. I attached it here for your convenience :)
Pages 7 to 12 shows the complete schematic of the board.
There you can see that the DTR line of the RS232 isn't use.
Instead a third gate of the 74HC125 is used to control the /EA line of the DS89C450.
That has the major advantage that the two remaining drivers of the MAX232 are free for the second UART of the DS89C450.

Can you easily modify your board for three 74HC125 gates and let us know the outcome? Thanks a lot!

ds89c430 bootloader


I'm sorry but I didn't had time to make the final schematic and PCB again. I have so many things to do for the university and so many things to study for the exams. but as soon as I get some time I'll make it. I'll try to make what you requested but I can't guarantee you that I'll manage to make it. however, I promise that I'll try :) . By the Way, the programmer works with the Serial to USB converter too.

Thanks for your reply :)
I'll take a look on the schematic you provided and I'll try to make it as soon as I have time. I already took a quick look at the document you posted and I think that it will not be a problem. However, I'll have to mount it on a breadboard to test it and if it works I'll post the PCB design and the schematic around here.

Good luck with your projects!

usb programmer ds89c450

Thanks for sharing~

ds89c430 ckcon


I'm interested in making my own DS89C450 testboard but I've something that bothers me. I would like to have 2 serial port connectors, so I can use DS89C450 in full fashion where one of them would be used for ISP however I'm not quite sure how to hook them together.
I've already made schematics for testboard with one DB9 connector as shown in first post but I'm not sure about how to hook the second DB9 connector. I know it goes to pins 3 and 4 (in DS89C450), but how can I connect it to MAX232(A)?
I think it's DTR signal line that gives me headache, it's connected to MAX232's pin R2IN where should be connected Rx pin of second DB9 connector, right?

I thought of throwing 74AC125 and using jumpers to manually set bootloader/run modes but it's certainly not an elegant solution.

Any help would be appreciated.


mtk ds89c430

Hi again!

First of all I'd like to apologize for haven't posted the final result yet, but I've been full of work at the university. I barely don't have time to sleep :( I am thinking about making a testboard too. Without a ZIF connector (they're very hard to find here in Portugal and they're very expensive..) it's a pain in the ass to be removing ad inserting the uC in the 40-pin socket everytime I want to test the program..

About your question, I advise you to forget the second DB9 connector in the pins 3 and 4 because you will not be able to use the UART on those pins. The UART uses the pins Tx and Rx. One way to put a second serial port on the board is by using an analog multiplexer to switch between Serial port 0 and serial port 1. That way you'll have two serial ports on the board available for communicating.

**broken link removed**

If you want DTR line to control the activation of the programming mode, I think that the first schematic should work, However, I'm not sure that it works. When I have some more time I'll try to check if it works and I'll let you guys know it.

By the way.. I have tested the programmer with the Conceptronics USB to Serial converter which has a Prolific chip inside and it works fine. I have tried the converter with other devices that use other lines of the serial port besides Tx and Rx and it worked too. If anyone needs a converter, the Conceptronics one is a good choice.

Hope to have helped you at least with the two serial ports problem.

Since we both want to do the same thing I think it would be good if we stay in contact to solve our problems during the development of the board. I'll have another university test in the 26th of November and then I'll have some time to try to fix a way of making the DTR line control the programming mode.

Good luck with your projects! :)

ds89c430+programming circuit

Kasp3r said:
About your question, I advise you to forget the second DB9 connector in the pins 3 and 4 because you will not be able to use the UART on those pins.
Why is that??
The DS89C450 has two UART's onboard.
COMM0 for ISP or normal serial comm (pins 10 & 11) and
COMM1 for normal serial comm (pins 3 & 4).
If you're not activating the bootloader at power up, COMM0 acts as a normal UART.
At the Dallas site you can find an app note using both UART's at the same time.

Did you check the schematic of the evaluation kit I posted earlier? See page 5, two sub-D 9 pins connectors... ...

ds89c450 expresssch

Oh! My mistake then. I have been working with the old AT89S8252 at the university. Since it has the same architecture (8051) I thougth that the DS89C450 had the exactly the same functions. I really haven't had time to take a good look at it's specifications. If it has two UARTs I guess that what you said should work. I'm realizing that the DS89C450 is far better than the old AT89S8252 :) I took a look at the schematic that you provided some weeks ago but when I posted the last reply I didn't remember the two DB9 connectors. I'm sorry for giving you all a wrong information :( and btw, thanks for correcting me :) As soon as I have time I'll take a look at the DS89C450 datasheet.. I guess it will make it easiar to make a better development board.

Finally managed to get all components to make a programmer like in the attached file.
After unzipping you need the "ExpressSch" software to read the "DS89C450-Programmer.sch" file.
Free download here: **broken link removed**

I've made it on bread board (no PCB)
Connect the target on PC com4 @9600 baud
SW1 1,3 and 4 in On position
Power up the target
Result: Instant communication with MTK software :):)
Download program to target
SW1 1 to Off position
Reset target: Program runs :):)

Easy as 1 2 3...

Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to