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

LPC1788: Watchdog simulation

The online help indicates that the Watchdog peripheral is simulated for the LPC1788 but it doesn't appear in the Peripherals menu and when the watchdog is accessed the following errors occur:

*** error 65: access violation at 0x40000000 : no 'read' permission
*** error 65: access violation at 0x40000004 : no 'write' permission
*** error 65: access violation at 0x40000000 : no 'write' permission
*** error 65: access violation at 0x40000008 : no 'write' permission

The correct DLLs and parameters are selected in the Debug options for the project, and other peripheral simulation works (e.g. timers, GPIO, UART, PLL, etc.)

Is it known not to work or is there a trick/update to get Watchdog simulation for LPC1788 working?

Parents
  • Thanks for your reply.

    I already have the correct parameters from that page set in the project options. However the "Watchdog Timer" is not in the Peripherals menu and there is no way to open the window shown in http://www.keil.com/dd/vtr/5325/3420.htm

    The peripherals menu contains:

    System Viewer
    
    Core Peripherals
    System Control Block
    Clocking & Power Control
    Flash Accelerator Module
    I/O Control
    GPIOs
    GPIO
    Interrupts
    External Memory Controller
    UART
    CAN
    SSP Interface
    I2C Interface
    Timer
    Pulse Width Modulator
    Motor Control Pulse Width Modulator
    Quadrature Encoder
    Interface Real Time Clock
    A/D Converter
    D/A Converter
    

    There is also no entry in the Memory Map that covers the Watchdog Timer address range.

    I have also tried creating a simple project for the same chip, setting the Dialog DLL and parameter as stated on http://www.keil.com/support/docs/3726.htm and I end up with the same set of simulated peripherals in the menu.

Reply
  • Thanks for your reply.

    I already have the correct parameters from that page set in the project options. However the "Watchdog Timer" is not in the Peripherals menu and there is no way to open the window shown in http://www.keil.com/dd/vtr/5325/3420.htm

    The peripherals menu contains:

    System Viewer
    
    Core Peripherals
    System Control Block
    Clocking & Power Control
    Flash Accelerator Module
    I/O Control
    GPIOs
    GPIO
    Interrupts
    External Memory Controller
    UART
    CAN
    SSP Interface
    I2C Interface
    Timer
    Pulse Width Modulator
    Motor Control Pulse Width Modulator
    Quadrature Encoder
    Interface Real Time Clock
    A/D Converter
    D/A Converter
    

    There is also no entry in the Memory Map that covers the Watchdog Timer address range.

    I have also tried creating a simple project for the same chip, setting the Dialog DLL and parameter as stated on http://www.keil.com/support/docs/3726.htm and I end up with the same set of simulated peripherals in the menu.

Children
  • Unfortunately, the LPC177x and LPC178x devices are not defined in our simulation database on the webserver. Because of this, you see the sentence "Simulation for this device is provided by the default peripheral simulation driver. Complete peripheral simulation is not available and is not planned to be implemented by ARM." on page http://www.keil.com/dd/chip/5325.htm. In this case, the default driver means a LPC1768 where we have the simulation of the Watchdog timer. That's why it is listed on our webpage.

    We actually have a simulation for most LPC177x and LPC178x devices but not for all peripherals. The Watchdog timer for LPC177x and LPC178x devices was never implemented and it is not identical to the LPC175x and LPC176x because it is a windowed-WDT. So in this case you need to map the WDT register area to avoid the 'access violations' or you remove all accesses to the WDT in your application.

  • Thank you for that information. That clarifies the problem very well.

    I've disabled the watchdog accesses when running in simulation using #ifdef round them and a project target for simulation with the appropriate define.

    Thanks again.