This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Replace Novoton W78E516B with W78E516D

I am trying to replace the Novoton(Winbond) W78E516B chip with W78E516D. However, the W78E516D device database is not supported by the current Keil database.

When implementing new chip without modifying original project settings, the Port 0 does not work. This port is responsible for the keypad button inputs in this project.

By comparing the datasheets, the new chip has two more interrupts and three more registers. So I cloned th 516B database data to create a database item for 516D. This database calls the 'Reg58.h' instead of 'Reg54.h'. Three registers WDTC, AUXR, and P0UPR were added in Reg58.h.

The new device database is as following:
CPU=IRAM(0 - 0xFF) XRAM(0- 0xFF) IROM(0-0xFFFF) CLOCK(40000000)
MON=S8051.DLL TP51.DLL("-p58")
REGFILE=REG58.H("Winbond")
SIM=S8051.DLL DP51.DLL("-p58")
SFILE="LIB\STARTUP.A51" ("Standard 8051 Startup Code")
BOOK0=DATASHTS\WINBOND\W78E516D.PDF("Data Sheet")
BOOK1=DATASHTS\ADDBOOKS.PDF("Add on databooks")
BOOK2=DATASHTS\INFINEON\M500.PDF("Instruction Set Manual")

Nontheless, the problem remains.

It will be great help, if anyone has suggestions.
Thank you.

Ellen