31 #define CRYPTO_LITTLE_ENDIAN
37 #ifndef MY_SERIALDEVICE
38 #define MY_SERIALDEVICE Serial
44 #ifndef MY_DEBUGDEVICE
45 #define MY_DEBUGDEVICE MY_SERIALDEVICE
52 #ifndef MY_STM32_TEMPERATURE_OFFSET
53 #define MY_STM32_TEMPERATURE_OFFSET (0.0f)
59 #ifndef MY_STM32_TEMPERATURE_GAIN
60 #define MY_STM32_TEMPERATURE_GAIN (1.0f)
66 #define snprintf_P(s, n, ...) snprintf((s), (n), __VA_ARGS__)
69 #define vsnprintf_P(s, n, ...) vsnprintf((s), (n), __VA_ARGS__)
87 #define hwDigitalWrite(__pin, __value) digitalWrite(__pin, __value)
88 #define hwDigitalRead(__pin) digitalRead(__pin)
89 #define hwPinMode(__pin, __value) pinMode(__pin, __value)
92 #define hwMillis() millis()
93 #define hwGetSleepRemaining() (0ul)
104 void hwWatchdogReset(
void);
115 void hwRandomNumberInit(
void);
123 void hwReadConfigBlock(
void *buf,
void *addr,
size_t length);
131 void hwWriteConfigBlock(
void *buf,
void *addr,
size_t length);
138 void hwWriteConfig(
const int addr, uint8_t value);
145 uint8_t hwReadConfig(
const int addr);
194 int8_t
hwSleep(
const uint8_t interrupt,
const uint8_t mode, uint32_t ms);
206 int8_t
hwSleep(
const uint8_t interrupt1,
const uint8_t mode1,
207 const uint8_t interrupt2,
const uint8_t mode2, uint32_t ms);
211 #error Soft SPI is not available on this architecture!
219 static __inline__ uint8_t __disableIntsRetVal(
void)
225 static __inline__
void __priMaskRestore(
const uint32_t *priMask)
227 __set_PRIMASK(*priMask);
231 #define MY_CRITICAL_SECTION for ( uint32_t __savePriMask __attribute__((__cleanup__(__priMaskRestore))) = __get_PRIMASK(), __ToDo = __disableIntsRetVal(); __ToDo ; __ToDo = 0 )
234 #endif // MyHwSTM32_h