Почему не считается остаток от деления в Arduino?
arduino.ru/Reference/Serial/Write
arduino.ru/Reference/Serial/Print
Видите разницу? 
В первом случае вы результат отправите как бинарный код. И монитор порта отобразит совсем не то, что вы ожидаете.
Во втором случае вы результат отправите как ASCII текст. То есть, что отправите, то и увидите в мониторе.
Попробуйте просто для сравнения:
Serial.write(65);
Serial.write("65");
Serial.print(65);
Вывод: проблема не в математике, проблема в формате вывода результата в порт.
UPD: ТС для проверки использует Proteus, я - Arduino Leonardo
Вопрос можно считать закрытым, т.к. проблема оказалась в Proteus'е, который я использовал для симуляции.