cancel
Showing results for 
Search instead for 
Did you mean: 

STM32F446 I2C Registers OAR1 and OAR2

MNoll.1
Associate II

Are these registers two address of a I2C slave or OAR2 is a mask of OAR1?

Mean:

address slave = OAR1 AND OAR2.

Ex. OAR1 = 0xE0 OAR2 = 0xF0.

(OAR1 AND OAR2) are 8 address 0xE0,0xE2 .. 0XEE .

Thank you

Marco

3 REPLIES 3
TDK
Guru

They are independent, but OAR2 is active only if ENDUAL is set.

If you feel a post has answered your question, please click "Accept as Solution".
Piranha
Chief II

You haven't told which peripheral you are using and OAR1 and OAR2 are the names of registers not address fields.

In case of I2C peripheral ADD2 is just an address. In case of FMPI2C peripheral OA2 is an address and OA2MSK is a mask configuration for it. Neither of these have anything to do with the ADD/OA1 respectively. Where do you get those fantasies?

In the other uP we have a signal "slave address detect" and I can read the address sent from the master.

On this way I can check the address. Normal I use the low part of it to understand which kind of data the master want write or read.

With fixed address this is impossible ..

Sorry but this is my first application with STM32 and I2C ...