key_dataはビット単位のオンオフのキーデータとして

furui_key = key_data;

key_data = new_data;

renda_boushi = (key_data ^ furui_key & key_data);

で連打防止のキーデータが取れる
ビット演算は便利