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

Problems with Demos on LPC2294

Hi,

it seems to be that I have some problems in configuration of my LPC2294 and the Keil uVision3. Some demos don't work fine. The "Hello"-project by Phytec is working (LED-blinking and serial port) but the program can't be debugged. The debug-mode provides the following error-message:

*** error 65: access violation at 0x00040000 : no 'execute/read' permission

The "Hello"-project by Keil behaves very strange. The LED is blinking but the program doesn't transmit the data over the serial port. Strangely enough I can't disable the blinking, though I delete or uncomment the responsible lines ("Hello.c" is provided below). On the other hand the frequency of blinking can be changed by manipulate the delay()-function. The debug-mode works fine. The program-counter points on the addressrange above 0x80000000 and in my opinion that seems to be correct.

I'm using the latest version of uVision3 (V3.31). Does anyone have any ideas what's going wrong there? Thanks in advance!


/******************************************************************************/
/*  This file is part of the uVision/ARM development tools                    */
/*  Copyright KEIL ELEKTRONIK GmbH 2002-2004                                  */
/******************************************************************************/
/*                                                                            */
/*  HELLO.C:  Hello World Example                                             */
/*                                                                            */
/******************************************************************************/

#include <stdio.h>                          /* I/O Functions */
#include <LPC22XX.H>                        /* LPC22XX Peripheral Registers */


void delay (void)  {                        /* Delay Function */
  unsigned long x;

  for (x = 0; x < 400000; x++);
}


extern void init_serial (void);             /* Initialize Serial Interface */

int main (void)  {

  init_serial();                            /* Initialize Serial Interface */

  IODIR0 = 0x00000100;                      /* P0.8 defined as Output */

  while (1) {                               /* Loop forever */
    IOCLR0 = 0x00000100;                    /* Turn LED On  (P0.8 = 0) */
    printf ("Hello World\n");               /* Print "Hello World" */
    IOSET0 = 0x00000100;                    /* Turn LED Off (P0.8 = 1) */
    delay();                                /* Delay */
  }
}

0