#include #include "lpc134x.h" /**************************************************************************/ /*! Approximates a 1 millisecond delay using "nop". This is less accurate than a dedicated timer, but is useful in certain situations. The number of ticks to delay depends on the optimisation level set when compiling (-O). Depending on the compiler settings, one of the two defined values for 'delay' should be used. */ /**************************************************************************/ void delayms(uint32_t ms) { uint32_t delay = ms * ((CFG_CPU_CCLK / 100) / 45); // Release Mode (-Os) // uint32_t delay = ms * ((CFG_CPU_CCLK / 100) / 120); // Debug Mode (No optimisations) while (delay > 0) { __asm volatile ("nop"); delay--; } }