ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Суббота
23 ноября
993308 Топик полностью
Andreas (09.04.2020 09:26, просмотров: 588) ответил fk0 на Ничего делать не буду, не нужно так делать. Это говнокод. Уже массу раз такое видел: наупаковывают, еще и с битовыми полями, и работает оно только в этой версии фирменного недокомпилятора. К регистрам нужно обращаться по адресу, и не нужны там недоструктуры отсутствующие в стандарте. Достаточно массы дефайнов.
Это типа такого? 
// Word (32 bit) access to address x
// Read example  : my32BitVar = HWREG(base_addr + offset) ;
// Write example : HWREG(base_addr + offset) = my32BitVar ;
#define HWREG(x)                                                              \
        (*((volatile unsigned long *)(x)))

   voltageSlope      = ((int8_t)HWREGB( FCFG1_BASE + FCFG1_O_MISC_TRIM ));
   tempCorrection    = (( voltageSlope * (((int32_t)HWREG( AON_BATMON_BASE + AON_BATMON_O_BAT )) - 0x300 )) >> 4 );