Цитата
И тогда
Код
#define GPIOA_PIN_1 (GPIOA + GPIO_IDR_IDR1)
И потом я могу обратиться по адресу
Код
if(GPIOA_PIN_1)
//do something
Правильны ли мои умозаключения?
Нет.
GPIO_IDR_IDR1 это маска для наложжения на регистр, чтобы протестировать(или изменить) конкретный бит.
Адрес пина... К сожалению такого понятия нет, т.к. нельзя взять адрес бита.
Т.е. вам в каком-то виде придется таки иметь дело с регистром(он конечно же имеет адрес) и номером бита в этом регистре. И уже эту парочку передавать там куда вам нужно....
Все это может иметь самые различные варианты реализации, но смысл остается.
The truth is out there...