We have some test code that runs on an ADuC834. This works fine. The parts appear to have equivalent memory. Even for trivial examples, we are having tons of problems with the ADuC832 component. We did change the device to ADuC832 in the Keil IDE. We also changed the includes from ADuC834 to ADuC832. There are even problems with a simple _getkey() followed by putchar(). The eval board is an EVAL-ADUC832QS.
The problem might be in the START_AD.A51 file. Analog Devices has changed the way the devices starts up. You need the following modifications:
sfr CFG8xx = 0xAF; ; Chip Configuration SFR STARTUP1: _CFG8xx EQU (EXSP SHL 7) OR (XRAMEN) IF _CFG8xx ORL CFG8xx,#_CFG8xx ; set extended memory modes ENDIF
Thanks, actually, we had to comment some lines out. See below. _CFG832 EQU (EXSP SHL 7) OR (XRAMEN) ;_VXMM EQU (EXSP SHL 7) OR (XRAMEN) IF _CFG832 ORL CFG832,#_CFG832 ; set extended memory modes ENDIF ;IF _VXMM ; MOV XMM,#055H ; set extended memory modes ; MOV XMM,#0AAH ; MOV XMM,#_VXMM ;ENDIF Then, we had to set XRAMEN EQU 1, which may not be obvious to the novice. Again, thanks.