Для подсчета частоты импульсов есть специальный режим работы таймера - режим захвата, может воспользоваться им?
Цитата
g=(float)(Speed_p)*(float)1.66;
зачем вы в переменную типа int засовываете выражение типа float, при преобразовании типов тут вполне может быть и несомненно есть потеря точности, может по-этому и прыгают цифры? Здесь надо или как то считать все в int или сделать переменную g типом float и выводить на экран float с необходимой точностью.
В присоединенном файле функция преобразования float в массив char. Функция не моя и может глючить, но для проверки подойдет, как альтернатива объемному printf-у с поддержкой float
Прикрепленные файлы
bcdfp.rar ( 1.85 килобайт )
Кол-во скачиваний: 226