This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

nrf52832 nrf_temp_init and nrf_temp_read

hi 

     I am a beginner,i have two questions.

1、when i use the nrf52832 to read the inner temperature,i find the nrf_temp_init function is :

static __INLINE void nrf_temp_init(void)
{
*(uint32_t *) 0x4000C504 = 0;
}

i am confuse why not is *(uint32_t *) 0x4000C508 = 0;because i see the document the TEMP offset is 0x508

2、could explain the function

static __INLINE int32_t nrf_temp_read(void)
{
return ((NRF_TEMP->TEMP & MASK_SIGN) != 0) ? (NRF_TEMP->TEMP | MASK_SIGN_EXTENSION) : (NRF_TEMP->TEMP);
}

i do not understand why NRF_TEMP->TEMP & MASK_SIGN and NRF_TEMP->TEMP | MASK_SIGN_EXTENSION

thank you replay

lilealyh

Parents Reply Children
No Data
Related