Из-за этой хреновины (16 диапазонов) я полдня потратил на поиски ошибки, которой в общем и не было. Тут такая ситуация возникла:
- в определенном месте программа проверяет номер диапазона и, если он больше 4-х, то программа выдает сигнал на включение делителя (согласно таблице от Игоря). Начинаю тестировать. Светодиод, который я повесил на выход для наглядности, включается, при включении диапазона 20 метров, так как этот диапазон 5-й, в списке. Потом дохожу до диапазона 26.000, светодиод горит, потом на табло появляется 1,8, 3,5 и т.д., а светодиод не гаснет. дохожу до 26.000, появляется 1,8 светодиод гаснет
. И вот тут переклинило. Какого хрена? Лишь потом вспомнил, что у нас то 16 диапазонов, 9 нормальных, а дальше опять появляется 1,8 мгц. Но он не 1-й, а 10-й, соответственно диод продолжает гореть как и положено. Поэтому я и внес в программу 9 нормальных диапазонов, а остальные, вплоть до 16-го, повторил 26.000. Потом часть убрал, чтобы освободить выводы регистра. Но все равно, в конце несколько осталось повторяющихся. Так что, то никакой не глюк. И лечится он просто.
В качестве условия, можно было бы поставить частоту. Но она занимает 4 байта, а номер диапазона - всего байт. Так что с ним, оперировать проще. Хотя, разницы особой нет.