I am new to ARM and I am trying to produce 1 second delay using timer 0 in LPC2148. But in debug session in Keil, it is giving delay of 4 seconds with 15MHz and 5 seconds with 12 MHz. What is the issue ?
Here is my code.
#include <lpc214x.h> int main() { IODIR0 = 1; // P0.0 is output pin IOSET0 = 1; // P0.0 is high T0PR = 15000000 - 1; T0TC = T0PC = 0; T0TCR = 1; // start do { while(T0TC == 0); T0TC = 0; IOCLR0 = 1; // P0.0 is low while(T0TC == 0); T0TC = 0; IOSET0 = 1; // P0.0 is high } while(1); }
Westonsupermare Pier said:Perhaps you should invest is some current hardware
Indeed.
kamalpancholi - Not least because most current chips these days are available with low-cost dev boards that include a debug probe - so you can throw away all the doubts & uncertainties of simulators, and just use the actual hardware!
Westonsupermare Pier said: I don't suspect the simulator is cycle accurate for things outside the core.