Цитата Сообщение от Newcomer Посмотреть сообщение
Зачем использовать формат данных REAL ?
Если в двух словах, то для того, чтобы не пришлось править пользовательскую КДС программу при обновлении PRU программы.

Например, если передавать "max_speed" как DWORD в герцах, то уже невозможно задать 100.5 Гц. Либо 100, либо 101.
Конечно, можно договориться, что "max_speed" передаётся как "частота, умноженная на 256" (т.е. вместо 100.5 передавать 25728), но это дичь.

Гораздо лучше будет, если на вход блоку будет передаваться осмысленное значение (частота в герцах), а уже сам блок при передаче команды в PRU будет либо просто округлять, либо домножать на 256 (или сколько нужно).

Тогда "в следующих версиях блока" можно менять лишь PRU0.prg/stepper.lib, а саму программу, которая подаёт команды менять не придётся. Программа как передавала "частоту в герцах", так и продолжит передавать.

Аналогично, если окажется, что для "ускорений" у dword'а точность низкая, то опять же, можно будет поправить реализацию самой PRU программы, и не трогать пользовательский код.


Цитата Сообщение от Newcomer Посмотреть сообщение
Если заработает то, что предлагаете вы (задавать ускорение), то это будет круче чем у забугорных друзей.
Наконец-то мы поняли друг друга.