#define STS_REGISTER_MACRO_VALUE __asm__("sts %[val], r" #registr " \n\t" \
: /* No output operands */\
: [val] "i" ((uint16_t)(value)) /* Substitute val with 'i'mmediate integer constant */\
: "r" #registr) /* Tell compiler that registr is clobbered */
This C Macro function uses extended inline assembly to store direct from data space from a C macro constant to the selected CPU register.
[in] value |
- macro constant |
[in] registr |
- register number |