Пользователь нажимает и отпускает кнопку. Пока пользователь держит кнопку, МК успевает выдать на gpio высокий уровень, поэтому транзистор остаётся открытым.
Когда надо выключиться, МК подаёт на gpio низкий уровень.
Лучше p-канальник и ему в затвор n или npn. Дальше логика как у вас. Отрывая землю есть вариант что через его пины (защитные диоды) он может получить землю.