Continue to Site

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.

getting hex code from 8051 chip

Status
Not open for further replies.

rasikab30

Newbie level 5
Newbie level 5
Joined
Jan 19, 2011
Messages
8
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,281
Activity points
1,343
i have 8051 chip which is already programmed . i dont know the program. is it possible to get the hex code from the 8051 chip and then convert it into .asm
plz tel d procedure.
 

When the internal memory is enabled with a pin, code above a certain adress is still read from external memory. This means that external and internal code memory can be active at the same time, at different address ranges. You can execute a program in external memory that reads the internal code memory and sends it out via the serial port or some other interface.
There was some protection available for the internal code memory, and if it is activated you can't read it with this method.
 

There was some protection available for the internal code memory, and if it is activated you can't read it with this method.

what is SOME PROTECTION to internal code memory....... and what ever you have mentioned... i dont think you can do it ...........
explain how and what you want to tell clearly
 
i want to know the program dats already in the chip..is dere noway to c it


MOD: USING SMS LANGUAGE / SHORT HAND TYPING IS NOT ALLOWED HERE.
NEXT TIME YOU WILL GET A WARNING
 

there is No way to see it

---------- Post added at 16:24 ---------- Previous post was at 16:22 ----------

if you have the programmer then put the iC into programmer and read the controller..... after reading it store the hex file in a file and do reverse engineering...
after reading it if you read the data as FF then the chip is locked and you can do nothing for it......
 
what is SOME PROTECTION to internal code memory....... and what ever you have mentioned... i dont think you can do it ...........
explain how and what you want to tell clearly

1. Disable internal program memory by pull-up or pull-down on a pin (I don't remember the name of the pin and the level)

2. Boot to external memory

3. Jump to a high address

4. Let a port pin enable the internal memory

5. Let your external program that executes in external memory at a high address read the internal code memory at low addresses and dump it to some output.


Of course, Intel knew about this possibility so they provided a protection. If I remember correctly it was an option at programming. This means that the method above can only be used if the chip is not protected. If the chip is protected, the external program will work but the data read from internal code memory will not be correct.
 

1. Disable internal program memory by pull-up or pull-down on a pin (I don't remember the name of the pin and the level)

2. Boot to external memory

3. Jump to a high address

4. Let a port pin enable the internal memory

5. Let your external program that executes in external memory at a high address read the internal code memory at low addresses and dump it to some output.


Of course, Intel knew about this possibility so they provided a protection. If I remember correctly it was an option at programming. This means that the method above can only be used if the chip is not protected. If the chip is protected, the external program will work but the data read from internal code memory will not be correct.

the procedure is not valid, and need some source of justification ......
i think you are in other world or have confused yourself with the concept totally........ company gives only programming locking bit option to the use and nothing more......
and why this topic is deviating to external memory and .. i doubt if you understood the concept and the question of poster

---------- Post added at 16:39 ---------- Previous post was at 16:34 ----------

definetely you can read the HEX file inside the 8051... and this is a very simple concept that does not need any basic explanation.... you can read hex file using any programming software if you have 8051 programmer and if they are ISP based then you can read data using flash magic or any software.............

i dont think i need to give any explanation for that and you are aware of it......... request you not to deviate from topic and give wary answers
 
if you have the programmer then put the iC into programmer and read the controller..... after reading it store the hex file in a file and do reverse engineering...
The 8051 is the masked version and can not be read by a programmer. The method I described is the only way I know, but it doesn't work if the chip is protected. The 8751 can be read by a programmer, but he is asking about the 8051.
 

i still dont understand what you mean to tell.. cant you read hex files inside any 8051 IC such as atmel or philips or any IC.. definetely i do it and do from past 10 years.... i really dont understand what you mean....

i can read the hex file after i program 8051 chip and i can verify it to see if it is programmed properly......
 
The OP seems to want a code from a chip that is protected and converted to asm
 

he is advising to use the 8051 with external memory EA bit option, then run your program from External that will read internal memory
but i doubt it is possible since the EA bit is changing the current PC will change

if it is working it is good,

hi std_match

have you tried this method?
 

i have the hex code. the ic is atmel 8051. where can i get the disassembler to convert .hex to .asm or else tell me the way in which i can decode the hex code
as i have the table of atmel hex code for each instruction.
 

its purely reverse engineering and will take lot of time to do that..

you should know how to read the hex files... map the hex code to the reference table you have and decode it
 

decoding hex code of 8051 atmel ic

if my hex code is
:100100007581407580ff75b3
:1001.....

75 is opcode for mov instruction and it is total of 3 bytes. but here at the end i am getting 75B3. THAT is only 2 bytes so should i consider 10 of the next line as the third byte.. What does " : " indicate?
 

Re: decoding hex code of 8051 atmel ic

You may try this **broken link removed**
 

if my hex code is
:100100007581407580ff75b3
:1001.....

75 is opcode for mov instruction and it is total of 3 bytes. but here at the end i am getting 75B3. THAT is only 2 bytes so should i consider 10 of the next line as the third byte.. What does " : " indicate?
 

Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top