Overriding or swapping Microcontrollers, Siemens SAB 80535 with Ti Tiva TM4C 129

Dear All !

There is a big question related to actual Microcontroller swapping or overriding. At the moment i have a control circuitry board which has a Siemens SAB 80C 535 microcontroller (68 pin package). it is already programmed and plugged into the support circuitry and functions as it should. On the other hand I have a Tiva TM4C129 Connected Launchpad from Texas instruments. Which has the Tiva TM4C 129 EN CPDT Microcontroller on board with about 90 pins available for programming.

So I must override/Replace the SAB 80C 535 so that control is done over Tiva Launchpad. The question is if I could just remove the SAB then check the suitable hardware connection pins/ports and simply connect them to the Tiva Launchpad and use the launchpad with the same Code to obtain the same performance?. :o

Or I have to modify the support circuitry board? what one should keep in mind while trying to perform such an operation?

any help appreciated

David

(deleted)

Looks like that 80C535 is something Siemens licensed from Intel back in the 80's. If you have Schematics and board layouts it may be possible to make an adapter, perhaps even shoehorn an ATmega328p in its place, but my guess is you don't have any of that and this should probably be classified as hopeless.

The question is if I could just remove the SAB then check the suitable hardware connection pins/ports and simply connect them to the Tiva Launchpad and use the launchpad with the same Code to obtain the same performance?.

Summed up in a single word, no. The only thing the two parts have in common is possibly their outward physical appearance of being black square-ish epoxy blocks with shiny little legs poking out all four sides and little numbers and letters etched in the big flat side.

The two devices mentioned are separated by almost forty years of advancements in microelectronics technology. They are not compatible in even the most basic parameters - as the Siemens 80C535 is a 5 volt device and the TIVA is an ARM Cortex M4 which is a 3.3 volt part.

If you have Schematics and board layouts it may be possible to make an adapter, perhaps even shoehorn an ATmega328p in its place

Did you miss the part where the original 80C535 had about 60+ I/O?

Did you miss the part where the original 80C535 had about 60+ I/O?

I guess so, maybe an ATmega2560 is a better fit.

Dear all, thanks for coming up with various comments. I have found the Layout PCB schematics of the intel SAB 80 C 535 connections on the circuitry board it is plugged on. It looks like it controls a rotary encoder, simple LCD display, couple of buttons and some other stuff as well. Please have a look at the Layout schematics for the circuitry. The voltage difference is not hard to solve using a low dropout-voltage regulator which converts 5 volts to 3.0 Volts. everything else can be rerouted using wires and Code…

Hey guys I have accidentally found the hole circuitry board layout schematics. Which means that we know all the connections leading to control pins of the Siemens SAB 80 C 535 microcontroller. It means that there is a chance to reroute the Siemens SAB 80c 535 pin connections to Tiva Launchpad.

Here is the Launchpad technical data, it has more control pins than the Siemens SAB. :slight_smile:

http://www.ti.com/tool/ek-tm4c129exl

Schematics help, but now it is clear that everything is running at 5V.

I checked the TM4C129ENCPDT data sheet and …

Update: The SAB80C535 looks to have many of its pins to external memory (A0…A14 and D0…D7). Thirty-ish pins are connected to stuff that needs to be controlled. Perhaps a Teensy 3.5 would be a reasonable choice, it has enough 5V tolerant pins to connect to those 30+ pads (e.g. don’t use the external memory).

https://www.pjrc.com/store/teensy35.html

Yes, they may be 5 volt tolerant for the inputs but they don't output 5 volts... only 3.3. That might work... maybe... for some I/O. Who knows for sure? Do you? I know I don't.

Besides, the OP thinks he can run the original 8051 object code contained within the EPROMs. Please re-read his original post c.a.r.e.f.u.l.l.y.

Even if he had the original source code, which he doesn't, the timing issues alone make this idea dead on arrival. The core issue for me is that he's never given a whiff of a reason [u]why[/u] he needs to do this nonsense. Only because he thinks he can? Not a sound reason to undertake such a project.

It's a fool's errand. A complete waste of time. The OP has hopefully has found another shiny object to focus on. Move along. Nothing to see here. :astonished:

re-read his original post c.a.r.e.f.u.l.l.y.

The OP found the schematic, so that shows some level of interest. I have had fair luck with TTL and 5V CMOS devices from 3.3V outputs as a hack (is this not a hack?).

https://learn.sparkfun.com/tutorials/logic-levels

As far as the object code goes… well I have no plan to read the OP’s post again but I expect they are clear on that issue now.

Hi Ron,

i have been checking the data you provided, It looks like the Ti Tiva TM4C129 MCU pins are max 4.0 volt tolerant. So the teensy 3.5 might be a better choice. I have found a source code meanwhile. So basically I have the full EPROM data. So we have the circuitry, the object code. I guess that is enough data, worth to try, because it has never been done before, which means that's worth to try. The source code files are in .BIN format. I dunno how to open them, or extract the code. Do you have any idea?

Greetings

The 80535 is based on the 8051.

There might be a 8051 decompiler that can convert the bin file to C code.

There are 8051 disassemblers that can convert the bin file to 8051 assembler code.

If only the latter, enjoy the study ;)

The BIN file does not sound like source code. Perhaps you can open the file with an editor and see some clues the linker left, you want to find clues about that toolchain that was used to build the BIN file.

My guess is you have what is call a relocatable binary image file. The bad news is those things are toolchain specific, so you need some clues as to the toolchain that made it. Then to find a toolchain that can make sense of the image (one possibility is http://sdcc.sourceforge.net/) and then look for any disassembly tools it may have.

The GCC-based AVR toolchain (which is hidden just out of sight) compiles source code (C or C++) into an elf file (which is a relocatable binary image that GCC knows how to work with). The AVR toolchain also as a program (i.e. avr-objdump) that can be told to disassemble the elf image into a human readable (debatable) textual file. The GCC toolchain adds a lot of the actual source code to the elf, so an elf file can be very helpful for figuring out what is going on.

@sterretje, I have some duplication of what you said but I did not what to fix it.

Hi Ron,

I have tried to use a tool-chain linkers you mentioned, in order to create an assembler file. So I used the IDA Pro Disassembler. The thing is it disassembled and created some kind of HEX files or strings, which I don't really understand. I have generated an .asm file from all that. I decided to use the Arduino MEGA 2560, instead of Tiva and Teensy. I find it better fit for the mentioned task. Please have a look at the assembler file, maybe you will understand it better than me.

Grretings

I decided to convert file to .pdf, coz the Forum does not support asm, or HTML. So I generated .pdf file. So the HEx is in the pdf file.

No attachments? Rename your something.asm to something.asm.txt and you can probably attach it.

Lets, see,

Looks like it worked,

8051.asm.txt (144 KB)

David_ZI: Looks like it worked,

Not really, you need a disassembler that supports 8051 code.

I would say your chances of success here are minimal. Is this a hobby thing or professional task?

its a professional task. It has do be done for scientific instrument, dealing with signal amplifications etc...

I think even for an experienced embedded engineer, it might be simpler to write code from scratch than attempt to reverse engineer from 8051 assembler. You have not said what the control board does, the function could be quite simple or quite complex. At least there is not more than 8KBytes of code to deal.

I assume you have a spec for the system which you could work from. Have you considered hiring someone to work to a spec? Either way, it could take a significant effort.