mbed library sources. Supersedes mbed-src.

Dependents:   Nucleo_Hello_Encoder BLE_iBeaconScan AM1805_DEMO DISCO-F429ZI_ExportTemplate1 ... more

Committer:
AnnaBridge
Date:
Wed Feb 20 22:31:08 2019 +0000
Revision:
189:f392fc9709a3
Parent:
149:156823d33999
mbed library release version 165

Who changed what in which revision?

UserRevisionLine numberNew contents of line
<> 149:156823d33999 1 #ifndef _NRF_DELAY_H
<> 149:156823d33999 2 #define _NRF_DELAY_H
<> 149:156823d33999 3
<> 149:156823d33999 4 // #include "nrf.h"
<> 149:156823d33999 5
<> 149:156823d33999 6 /*lint --e{438, 522} "Variable not used" "Function lacks side-effects" */
<> 149:156823d33999 7 #if defined ( __CC_ARM )
<> 149:156823d33999 8 static __ASM void __INLINE nrf_delay_us(uint32_t volatile number_of_us)
<> 149:156823d33999 9 {
<> 149:156823d33999 10 loop
<> 149:156823d33999 11 SUBS R0, R0, #1
<> 149:156823d33999 12 NOP
<> 149:156823d33999 13 NOP
<> 149:156823d33999 14 NOP
<> 149:156823d33999 15 NOP
<> 149:156823d33999 16 NOP
<> 149:156823d33999 17 NOP
<> 149:156823d33999 18 NOP
<> 149:156823d33999 19 NOP
<> 149:156823d33999 20 NOP
<> 149:156823d33999 21 NOP
<> 149:156823d33999 22 NOP
<> 149:156823d33999 23 NOP
<> 149:156823d33999 24 BNE loop
<> 149:156823d33999 25 BX LR
<> 149:156823d33999 26 }
<> 149:156823d33999 27 #elif defined ( __ICCARM__ )
<> 149:156823d33999 28 static void __INLINE nrf_delay_us(uint32_t volatile number_of_us)
<> 149:156823d33999 29 {
<> 149:156823d33999 30 __ASM (
<> 149:156823d33999 31 "loop:\n\t"
<> 149:156823d33999 32 " SUBS R0, R0, #1\n\t"
<> 149:156823d33999 33 " NOP\n\t"
<> 149:156823d33999 34 " NOP\n\t"
<> 149:156823d33999 35 " NOP\n\t"
<> 149:156823d33999 36 " NOP\n\t"
<> 149:156823d33999 37 " NOP\n\t"
<> 149:156823d33999 38 " NOP\n\t"
<> 149:156823d33999 39 " NOP\n\t"
<> 149:156823d33999 40 " NOP\n\t"
<> 149:156823d33999 41 " NOP\n\t"
<> 149:156823d33999 42 " NOP\n\t"
<> 149:156823d33999 43 " NOP\n\t"
<> 149:156823d33999 44 " NOP\n\t"
<> 149:156823d33999 45 " BNE loop\n\t");
<> 149:156823d33999 46 }
<> 149:156823d33999 47 #elif defined ( __GNUC__ )
<> 149:156823d33999 48 static __INLINE void nrf_delay_us(uint32_t volatile number_of_us)
<> 149:156823d33999 49 {
<> 149:156823d33999 50 do
<> 149:156823d33999 51 {
<> 149:156823d33999 52 __ASM volatile (
<> 149:156823d33999 53 "NOP\n\t"
<> 149:156823d33999 54 "NOP\n\t"
<> 149:156823d33999 55 "NOP\n\t"
<> 149:156823d33999 56 "NOP\n\t"
<> 149:156823d33999 57 "NOP\n\t"
<> 149:156823d33999 58 "NOP\n\t"
<> 149:156823d33999 59 "NOP\n\t"
<> 149:156823d33999 60 "NOP\n\t"
<> 149:156823d33999 61 "NOP\n\t"
<> 149:156823d33999 62 "NOP\n\t"
<> 149:156823d33999 63 "NOP\n\t"
<> 149:156823d33999 64 "NOP\n\t"
<> 149:156823d33999 65 "NOP\n\t"
<> 149:156823d33999 66 "NOP\n\t"
<> 149:156823d33999 67 );
<> 149:156823d33999 68 } while (--number_of_us);
<> 149:156823d33999 69 }
<> 149:156823d33999 70 #endif
<> 149:156823d33999 71
<> 149:156823d33999 72 void nrf_delay_ms(uint32_t volatile number_of_ms);
<> 149:156823d33999 73
<> 149:156823d33999 74 #endif