Programming a DS89C450 flash-based microcontroller

For discussions about programming, programming questions/advice, and projects that don't really have anything to do with Puppy.
Post Reply
Message
Author
Jamesb
Posts: 1
Joined: Tue 16 May 2017, 07:57

Programming a DS89C450 flash-based microcontroller

#1 Post by Jamesb »

I have a DS89C450 which I wish to program and so far have had no success.
I have no programmers, so I need to utilise the ISP capabilities. I have the crystal connected (16Mhz) as well as the power. The data sheet of DS89C450 indicates that EA and RST need to be pulled up, and PSEN needs to be pulled down to enter programming mode.

Can these be connected straight to VCC/GND or do they need to be connected through a resistor? If so, what size would suit?

By using USB to Serial, I no longer need a 232 transciever do I? That would only apply to programming through a conventional serial port wouldn't it?

Once hardware issues are solved, I need to be able to program the chip. I have installed Kiel with C51 addon. I believe this is all I need to write the program. Following this, how will I write the software onto the chip? What software will I require to do so?

Whilst there are some tutorials online, they all provide basic information, not enough for a beginner. I'm hoping that any answers will be detailed enough to assist other beginner 8051 people like myself.

User avatar
Flash
Official Dog Handler
Posts: 13071
Joined: Wed 04 May 2005, 16:04
Location: Arizona USA

#2 Post by Flash »

The Maxim website has a support center. Have you tried that?

User avatar
Moose On The Loose
Posts: 965
Joined: Thu 24 Feb 2011, 14:54

Re: Programming a DS89C450 flash-based microcontroller

#3 Post by Moose On The Loose »

Jamesb wrote:I have a DS89C450 which I wish to program and so far have had no success.
I have no programmers, so I need to utilise the ISP capabilities. I have the crystal connected (16Mhz) as well as the power. The data sheet of DS89C450 indicates that EA and RST need to be pulled up, and PSEN needs to be pulled down to enter programming mode.

Can these be connected straight to VCC/GND or do they need to be connected through a resistor? If so, what size would suit?

By using USB to Serial, I no longer need a 232 transciever do I? That would only apply to programming through a conventional serial port wouldn't it?

Once hardware issues are solved, I need to be able to program the chip. I have installed Kiel with C51 addon. I believe this is all I need to write the program. Following this, how will I write the software onto the chip? What software will I require to do so?

Whilst there are some tutorials online, they all provide basic information, not enough for a beginner. I'm hoping that any answers will be detailed enough to assist other beginner 8051 people like myself.
In general for parts like these,
1) There is an ASCII method for loading your code via the serial port.
2) These parts usually look for a "U" character to figure out the baud rate.
3) At fast baud rates, you may have to pace characters or set for 2 stop bits.
4) RST needs a capacitor to GND and a resistor to Vcc
5) Most chips like this sample PSEN as RST goes high

Try using picocom to send "UUUUUU" followed by a return and see if it reacts.

Remember RS-232 idles in the TRUE condition. Check your polarity.

TXD and RXD (pins 2,3 on 8 pin D) are almost certainly connected backwards. You will have to swap those connections to get it to work even if you have already swapped them.

On many such chips, the ASCII data looks like Intel hex.
You use C51 to turn a xxx.c into xxx.obj xxx.o
link51 or L51 to combine your code with the startup code
OH51 to make an intel hex file.

In general any chewing on the hex file can be done in bash or something and then the result can be sent line by line to the micro.

What version of puppy are you using?
I ask for a reason I can't discuss without asking another person.

Post Reply