Вы пишете в регистр BSRR
в периферийном устройстве GPIOA
.
Оператор ->
имеет синтаксис C для доступа к элементам из указанного на структуру, в вашем случае GPIOA
является указателем, (*GPIOA).BSRR
будет эквивалентно без оператора ->
.
Периферийные устройства в STM32, такие как GP IOs, отображены в памяти, GPIOA
указывает на базовый адрес эта периферия в пространстве памяти микроконтроллеров. Это показано на следующем рисунке, взятом из Справочного руководства для вашего процессора.
Как вполне справедливо говорит @P__J__ в его ответе регистр BSRR
предназначен только для записи, поэтому не следует использовать оператор &=
, опять же, это описано в приведенном выше связанном справочном руководстве.