X-Git-Url: http://git.zerfleddert.de/cgi-bin/gitweb.cgi/proxmark3-svn/blobdiff_plain/5d32e2bf6029c9efe5d191c13b82d59f6515e789..6949aca9fa0e37539fc277bac78e3d7a22117467:/armsrc/util.c diff --git a/armsrc/util.c b/armsrc/util.c index 650ba22b..3cad25f4 100644 --- a/armsrc/util.c +++ b/armsrc/util.c @@ -115,18 +115,18 @@ int BUTTON_CLICKED(int ms) return BUTTON_NO_CLICK; // Borrow a PWM unit for my real-time clock - PWM_ENABLE = PWM_CHANNEL(0); + AT91C_BASE_PWMC->PWMC_ENA = PWM_CHANNEL(0); // 48 MHz / 1024 gives 46.875 kHz - PWM_CH_MODE(0) = PWM_CH_MODE_PRESCALER(10); - PWM_CH_DUTY_CYCLE(0) = 0; - PWM_CH_PERIOD(0) = 0xffff; + AT91C_BASE_PWMC_CH0->PWMC_CMR = PWM_CH_MODE_PRESCALER(10); + AT91C_BASE_PWMC_CH0->PWMC_CDTYR = 0; + AT91C_BASE_PWMC_CH0->PWMC_CPRDR = 0xffff; - WORD start = (WORD)PWM_CH_COUNTER(0); + WORD start = AT91C_BASE_PWMC_CH0->PWMC_CCNTR; int letoff = 0; for(;;) { - WORD now = (WORD)PWM_CH_COUNTER(0); + WORD now = AT91C_BASE_PWMC_CH0->PWMC_CCNTR; // We haven't let off the button yet if (!letoff) @@ -137,7 +137,7 @@ int BUTTON_CLICKED(int ms) letoff = 1; // reset our timer for 500ms - start = (WORD)PWM_CH_COUNTER(0); + start = AT91C_BASE_PWMC_CH0->PWMC_CCNTR; ticks = (48000 * (500)) >> 10; } @@ -178,17 +178,17 @@ int BUTTON_HELD(int ms) return BUTTON_NO_CLICK; // Borrow a PWM unit for my real-time clock - PWM_ENABLE = PWM_CHANNEL(0); + AT91C_BASE_PWMC->PWMC_ENA = PWM_CHANNEL(0); // 48 MHz / 1024 gives 46.875 kHz - PWM_CH_MODE(0) = PWM_CH_MODE_PRESCALER(10); - PWM_CH_DUTY_CYCLE(0) = 0; - PWM_CH_PERIOD(0) = 0xffff; + AT91C_BASE_PWMC_CH0->PWMC_CMR = PWM_CH_MODE_PRESCALER(10); + AT91C_BASE_PWMC_CH0->PWMC_CDTYR = 0; + AT91C_BASE_PWMC_CH0->PWMC_CPRDR = 0xffff; - WORD start = (WORD)PWM_CH_COUNTER(0); + WORD start = AT91C_BASE_PWMC_CH0->PWMC_CCNTR; for(;;) { - WORD now = (WORD)PWM_CH_COUNTER(0); + WORD now = AT91C_BASE_PWMC_CH0->PWMC_CCNTR; // As soon as our button let go, we didn't hold long enough if (!BUTTON_PRESS()) @@ -213,16 +213,16 @@ void SpinDelayUs(int us) int ticks = (48*us) >> 10; // Borrow a PWM unit for my real-time clock - PWM_ENABLE = PWM_CHANNEL(0); + AT91C_BASE_PWMC->PWMC_ENA = PWM_CHANNEL(0); // 48 MHz / 1024 gives 46.875 kHz - PWM_CH_MODE(0) = PWM_CH_MODE_PRESCALER(10); - PWM_CH_DUTY_CYCLE(0) = 0; - PWM_CH_PERIOD(0) = 0xffff; + AT91C_BASE_PWMC_CH0->PWMC_CMR = PWM_CH_MODE_PRESCALER(10); + AT91C_BASE_PWMC_CH0->PWMC_CDTYR = 0; + AT91C_BASE_PWMC_CH0->PWMC_CPRDR = 0xffff; - WORD start = (WORD)PWM_CH_COUNTER(0); + WORD start = AT91C_BASE_PWMC_CH0->PWMC_CCNTR; for(;;) { - WORD now = (WORD)PWM_CH_COUNTER(0); + WORD now = AT91C_BASE_PWMC_CH0->PWMC_CCNTR; if (now == (WORD)(start + ticks)) return; @@ -239,7 +239,7 @@ void SpinDelay(int ms) /* Similar to FpgaGatherVersion this formats stored version information * into a string representation. It takes a pointer to the struct version_information, * verifies the magic properties, then stores a formatted string, prefixed by - * prefix in dst. + * prefix in dst. */ void FormatVersionInformation(char *dst, int len, const char *prefix, void *version_information) {