A ti dám že "neumíme používat konstanty". Schválně jsem se podíval do stm32f4xx.h a opravdu je tam vše definováno jako maska. Můžeš mi prozradit, jak bity RCC_CFGR_MCO1PRE nastavím třeba na hodnotu 5 když ta konstanta je definována jako 0x07000000? Leda tak makrem dekokotizace:
// dekokotizace (prevedeni masky z kokoti knihovny na bitovy offset)
#define dekkt(k)(k&0x00000001 ? 0 : k&0x00000002 ? 1 : k&0x00000004 ? 2 : k&0x00000008 ? 3 : k&0x00000010 ? 4 : k&0x00000020 ? 5: k&0x00000040 ? 6: k&0x00000080 ? 7: \
k&0x00000100 ? 8 : k&0x00000200 ? 9 : k&0x00000400 ? 10 : k&0x00000800 ? 11 : k&0x00001000 ? 12 : k&0x00002000 ? 13: k&0x00004000 ? 14: k&0x00008000 ? 15: \
k&0x00010000 ? 16 : k&0x00020000 ? 17 : k&0x00040000 ? 18 : k&0x00080000 ? 19 : k&0x00100000 ? 20 : k&0x00200000 ? 21: k&0x00400000 ? 22: k&0x00800000 ? 23: \
k&0x01000000 ? 24 : k&0x02000000 ? 25 : k&0x04000000 ? 26 : k&0x08000000 ? 27 : k&0x10000000 ? 28 : k&0x20000000 ? 29: k&0x40000000 ? 30: k&0x80000000 ? 31: 0xFF)