Welcome to EDAboard.com

Welcome to our site! EDAboard.com 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.

difference in atmel 89c51 and 89c52

Status
Not open for further replies.

madhun

Junior Member level 1
Joined
Jan 13, 2006
Messages
17
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,281
Activity points
1,424
difference between 89c51 and 89c52

Hi

can anybody explain the difference in atmel 8o51 series -89c51 and 89c52 which may affect coding if the microntroller is changed and in what respect will that affect.

Thanks
 

silvio

Advanced Member level 3
Joined
Dec 31, 2001
Messages
716
Helped
105
Reputation
210
Reaction score
16
Trophy points
1,298
Location
Romania
Activity points
11,470
difference between 89s52 & 89c51

89C51
• 4K Bytes of In-System Reprogrammable Flash Memory
• 128 x 8-bit Internal RAM
• Two 16-bit Timer/Counters
• Six Interrupt Sources

89C52
• 8K Bytes of In-System Reprogrammable Flash Memory
• 256 x 8-bit Internal RAM
• Three 16-bit Timer/Counters
• Eight Interrupt Sources

First of all both microcontroller has been discontinued by Atmel.

If your design is based on 89C51, you don't have to worry if it's changed later with 89C52. No changes are to be performed, neither software nor hardware (some minor settings in the hardware programmer device).
But if your software relies on 89C52 then simple looking at the features provided by both microcontroller will tell you in what aspect will changes affect your design if a replacement with 89C51 has to be done.
 

lmtalsoul

Junior Member level 3
Joined
Jan 18, 2006
Messages
31
Helped
14
Reputation
28
Reaction score
8
Trophy points
1,288
Activity points
1,733
difference between 89c52 and 89c51

Also, check this out

Code:
http://www.8052.com

Might be useful..
 

bobsanjose

Advanced Member level 1
Joined
Jan 13, 2006
Messages
416
Helped
56
Reputation
112
Reaction score
21
Trophy points
1,298
Location
Silicon Valley
Activity points
5,228
difference between atmel 89s52 and atmel 89c51

Philips still manufactures the 89C51 and 89C52. One major difference though. Atmel used an EEPROM process, so the "Flash" is byte addressable. Philips uses a Flash process, no byte addressability. Otherwise a switch if needed should be pretty smooth.

Bob
 

mmohamed15

Advanced Member level 4
Joined
Mar 23, 2005
Messages
112
Helped
5
Reputation
10
Reaction score
0
Trophy points
1,296
Activity points
2,116
compare 89c51 and 89s52

silabs also makes mixed signal 8051
 

Code Warrior

Full Member level 4
Joined
Dec 30, 2004
Messages
230
Helped
10
Reputation
20
Reaction score
2
Trophy points
1,298
Activity points
1,831
difference between 89c52 andmic 89c51

The 89C51 and 89C52 are not In System Reprogrammable as stated by silvio. 89S51 and 89S52 are In System Reprogrammable.
 

silvio

Advanced Member level 3
Joined
Dec 31, 2001
Messages
716
Helped
105
Reputation
210
Reaction score
16
Trophy points
1,298
Location
Romania
Activity points
11,470
89c51 vs 89c52

Atmel 89C51 data sheet : 4K Bytes of In-System Reprogrammable Flash Memory
Atmel 89S51 data sheet : 4K Bytes of In-System Programmable (ISP) Flash Memory

I've emphasized in red the word Reprogramable. Atmel didn't claimed that 89C51 are Programable in the system (ISP), but Reprogramable

From their point of view, the low-voltage programming mode (+5v) provides a convenient way to program the AT89C51 inside the user’s system, while the high-voltage programming mode (+12v) is compatible with conventional thirdparty Flash or EPROM programmers.

At89S51 is ISP (In System Programmable) through SPI interace. There are not ISR (In System Reprogramable).
Like AT89C51 is ISR and not ISP.

As you can notice, it's only english. And it's not stated by me. It's Atmel's statement.

How about IAP (In Application Programming) ? I'm confident you know what a bootloader means.
 

smercho

Newbie level 4
Joined
Nov 13, 2005
Messages
5
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,281
Location
Bombay,India
Activity points
1,340
different between 89c51 and 89c52

hi..
this is a bit offbeat , but has any1 tried to programme an atmel 89c2051 using a C code that uses interrupts for calling functions.
example: void check() interrupt 1 using 2

I am using keil to convert it into intel-hex format but the compilation gives an error saying IMPROPER FIXUP ...i figured out that it is trying towrite to memory locations beyond 2K( the on chip flash is 2K !!) . however on removing the ISR , it works fine

..help someone
 

silvio

Advanced Member level 3
Joined
Dec 31, 2001
Messages
716
Helped
105
Reputation
210
Reaction score
16
Trophy points
1,298
Location
Romania
Activity points
11,470
feateres of 89s52 microcontroller

Hi Smercho

The best ideea is to start a new thread. In this one you won't be seen by the peoples who really can help you. This thread regarding difference between 89C51 and 89C52 it's not opened by smart peoples just because can't find any news or it's useless answering to a question for which you can find the answer just reading the datasheets.
And use a suggestive title for the thread.

Please type the full complains of compiler. Not only IMPROPER FIXUP... (segment and the offset of the offending instruction)
As you already noticed it's true that this kind of errors are due to the linker which cannot resolve the address of a branch instruction (like a LCALL - prohibited in 89C2051 - inside your ISR).

1. When you say "removing the iSR" are you completelly remove the code from your program ?. Or just keep the function code and declare it as not using interrupts.
There are another few questions :

2. What kind of memory model do you use ? If you use SMALL then CALL and JMP instructions are coded as ACALL and AJMP. Thus, if inside your ISR is called a function located beyond 2K limit of ACALL then you can get Fixup errors.
3. Did you included the STARTUP.A51 file into your project ?
4. What type of Code Optimization Level do you use ?

Please try to answer to this questions and come back in a new thread.
Is not necessary to mention you have been asked here.
Just try to give as many details as possible in order to be helped quickly and straight to the point.
 

Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Top