С точки зрения драйвера есть три функции с указателями: *in *out *hardSet. Первые две возвращают то, что хотелось, а последняя почему-то повторно *out. Получается, что не хватает *dir, вот я и предположил, что хард сет собирался его возвращать. А так нужна еще функция.
"GPIO_PORTB_DR" =0x12; С...