This documentation is out of date.
The new version of the documentation is here: https://cannylogic.com/docs |
Difference between revisions of "T-n-T: Борьба с переполнением регистра"
[checked revision] | [checked revision] |
(Created page with "12.08 == Задача == Требуется выполнить подсчет интервалов времени, длительностью б...") |
(→Решение) |
||
Line 8: | Line 8: | ||
[[File:example7a.png|800px]] | [[File:example7a.png|800px]] | ||
− | Счетчик секунд выполняет подсчет истекших секунд (блоки №№1 и 2) и при истечении 60 секунд (блок №3) передает выдает импульс на счетчик минут. Счетчик минут, позволяет подсчитывать до 65535 минут, что соответсвует: ~1092 часам или ~45,5 суткам | + | Счетчик секунд выполняет подсчет истекших секунд (блоки №№1 и 2) и при истечении 60 секунд (блок №3) передает выдает импульс на счетчик минут. Счетчик минут, позволяет подсчитывать до 65535 минут, что соответсвует: ~1092 часам или ~45,5 суткам. |
[[File:example7b.png|800px]] | [[File:example7b.png|800px]] | ||
− | Счетчик секунд выполняет подсчет истекших секунд (блоки №№1 и 2) и при истечении 3600 секунд (блок №3), т.е. 1 часа, передает выдает импульс на счетчик часов. Счетчик часов, позволяет подсчитывать до 65535 часов, что соответсвует: ~2730 суткам или ~7,5 годам | + | Счетчик секунд выполняет подсчет истекших секунд (блоки №№1 и 2) и при истечении 3600 секунд (блок №3), т.е. 1 часа, передает выдает импульс на счетчик часов. Счетчик часов, позволяет подсчитывать до 65535 часов, что соответсвует: ~2730 суткам или ~7,5 годам. |
С помощью приведенного подхода, меняя значение периода блока "Генератор ШИМ" (блок №1) и значения Y блока "Больше", можно выполнять замеры необходимых временных интервалов в широком диапазоне значений (смотри пример ниже). | С помощью приведенного подхода, меняя значение периода блока "Генератор ШИМ" (блок №1) и значения Y блока "Больше", можно выполнять замеры необходимых временных интервалов в широком диапазоне значений (смотри пример ниже). |
Latest revision as of 17:05, 17 December 2018
Задача
Требуется выполнить подсчет интервалов времени, длительностью более 65535мс, т.е. больше максимальной размерности переменных и констант, принятых в контроллерах CANNY.
Решение
Счетчик секунд выполняет подсчет истекших секунд (блоки №№1 и 2) и при истечении 60 секунд (блок №3) передает выдает импульс на счетчик минут. Счетчик минут, позволяет подсчитывать до 65535 минут, что соответсвует: ~1092 часам или ~45,5 суткам.
Счетчик секунд выполняет подсчет истекших секунд (блоки №№1 и 2) и при истечении 3600 секунд (блок №3), т.е. 1 часа, передает выдает импульс на счетчик часов. Счетчик часов, позволяет подсчитывать до 65535 часов, что соответсвует: ~2730 суткам или ~7,5 годам.
С помощью приведенного подхода, меняя значение периода блока "Генератор ШИМ" (блок №1) и значения Y блока "Больше", можно выполнять замеры необходимых временных интервалов в широком диапазоне значений (смотри пример ниже).
Решение можно использовать и в других областях для подсчета количества различных событий.
Увеличивая каскад из счетчиков можно получить возможность подсчета практически неограниченно больших значений.