Реклама на сайте DatasheetsDatasheets

KAZUS.RUN - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Книги и журналы
FAQ по электронике

  Datasheets
Поиск SMD
Онлайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Схемы и проекты
Принципиальные схемы
  Программы
Каталог сайтов
Калькуляторы
  Форумы по электронике
Помощь проекту


 
Опции темы

Непоследовательный двоичный код

Непрочитано 31.01.2016, 20:50  
serg5768
Временная регистрация
 
Регистрация: 31.01.2016
Сообщений: 84
Сказал спасибо: 32
Сказали Спасибо 25 раз(а) в 16 сообщении(ях)
serg5768 на пути к лучшему
По умолчанию Непоследовательный двоичный код

Заранее извиняюсь, если не в тот раздел...

Имеем переключатель на 9 положений, реализованный планшайбой с 5 кнопками.
Логика работы (положение - состояние кнопок):
1 - 00001
2 - 00011
3 - 00010
4 - 00110
5 - 00100
6 - 01100
7 - 01000
8 - 11000
9 - 10000

Как видим - двоичная последовательность не соблюдается.
Если в х10, то получим: 1-3-2-6-4-12-8-24-16

Посоветуйте, как получить нормальную последовательность ?
Планшайбу переключателя переделывать нельзя...
Реклама:
serg5768 вне форума  
Непрочитано 31.01.2016, 21:05  
raxp
Почётный гражданин KAZUS.RUN
 
Регистрация: 28.05.2010
Сообщений: 1,117
Сказал спасибо: 150
Сказали Спасибо 604 раз(а) в 310 сообщении(ях)
raxp на пути к лучшему
По умолчанию Re: Непоследовательный двоичный код

...в массив все неправильные последовательности, поиск по массиву с выборкой индекса в массиве. Индекс будет правильным результатом. По сути - Array.IndexOf(). Выполняет поиск указанного объекта внутри всего одномерного массива и возвращает индекс его первого вхождения.

Или надо схемотехнически?
__________________
Белорусский журнал «Радиолюбитель»
Youtube LaboratoryW
UR3QQJ
raxp вне форума  
Непрочитано 31.01.2016, 21:33  
serg5768
Временная регистрация
 
Регистрация: 31.01.2016
Сообщений: 84
Сказал спасибо: 32
Сказали Спасибо 25 раз(а) в 16 сообщении(ях)
serg5768 на пути к лучшему
По умолчанию Re: Непоследовательный двоичный код

Сообщение от raxp Посмотреть сообщение
...в массив все неправильные последовательности, поиск по массиву с выборкой индекса в массиве. Индекс будет правильным результатом. По сути - Array.IndexOf(). Выполняет поиск указанного объекта внутри всего одномерного массива и возвращает индекс его первого вхождения.
В том то и бяка, что надо отследить перемещение переключателя.
Поиском по массиву с последующим сравнением ?
Долго и коряво...

Схемотехническое решение было бы предпочтительнее.
serg5768 вне форума  
Непрочитано 31.01.2016, 21:38  
mtit
Почётный гражданин KAZUS.RUN
 
Аватар для mtit
 
Регистрация: 21.03.2007
Адрес: М.(осква)
Сообщений: 4,398
Сказал спасибо: 2,192
Сказали Спасибо 1,780 раз(а) в 1,012 сообщении(ях)
mtit на пути к лучшему
По умолчанию Re: Непоследовательный двоичный код

Есть такое устройство в семействе жёсткой логики - дешифратор.
Грубо говоря - с каждого разряда берём прямой сигнал - 5 штук. Ещё сигналы инвертируем - ещё пять штук.
Итого: шина - 10 сигналов.
Далее нам нужны 5-ти входовые элементы. И, ИЛИ, И-НЕ, ИЛИ-НЕ. Можно 5 диодов - диодное "ИЛИ".
Таких элементов нам надо 9 штук.
Допустим у нас элемент И. Тогда для первого надо взять 4 инвертированных и 1 неинвертированный сигнал.
У схемы будет 9 выходов - на каком по счёту выходе будет "1" - такой и входящий код.
Это не самая экономичная реализация в плане ресурсов, но самая простая для перехода на другие кодировки.
__________________
+ 7 903 641 87 25// 1. Иногда отвечаю "по памяти" 2. Часто заблуждаюсь >> Критикуйте, не обижусь.
mtit вне форума  
Непрочитано 31.01.2016, 21:39  
proba60
Вид на жительство
 
Аватар для proba60
 
Регистрация: 26.10.2009
Сообщений: 379
Сказал спасибо: 47
Сказали Спасибо 146 раз(а) в 93 сообщении(ях)
proba60 на пути к лучшему
По умолчанию Re: Непоследовательный двоичный код

К155ре3 вам в помощь
Миниатюры:
Нажмите на изображение для увеличения
Название: 4.jpg
Просмотров: 161
Размер:	52.6 Кб
ID:	87487  
__________________
..истина где то рядом..
proba60 вне форума  
Непрочитано 31.01.2016, 21:42  
serg5768
Временная регистрация
 
Регистрация: 31.01.2016
Сообщений: 84
Сказал спасибо: 32
Сказали Спасибо 25 раз(а) в 16 сообщении(ях)
serg5768 на пути к лучшему
По умолчанию Re: Непоследовательный двоичный код

Сообщение от mtit Посмотреть сообщение
Есть такое устройство в семействе жёсткой логики - дешифратор.
Думал уже в эту сторону... Шифровать-дешифровать...
Придется обрастать корпусами, что не есть гуд...
В данный момент мусирую мысль организовать делители с объединением в один выход и потом АЦП считывать, но, боюсь, опять приду к "нелинейности"...
serg5768 вне форума  
Непрочитано 31.01.2016, 21:44  
serg5768
Временная регистрация
 
Регистрация: 31.01.2016
Сообщений: 84
Сказал спасибо: 32
Сказали Спасибо 25 раз(а) в 16 сообщении(ях)
serg5768 на пути к лучшему
По умолчанию Re: Непоследовательный двоичный код

Сообщение от proba60 Посмотреть сообщение
К155ре3 вам в помощь
Увы...
Ее тоже надо "учить"...
serg5768 вне форума  
Непрочитано 31.01.2016, 21:48  
akegor
Гуру портала
 
Аватар для akegor
 
Регистрация: 06.05.2005
Адрес: Краснодар, возле укротворного моря.
Сообщений: 19,313
Сказал спасибо: 2,633
Сказали Спасибо 12,076 раз(а) в 6,082 сообщении(ях)
akegor на пути к лучшему
По умолчанию Re: Непоследовательный двоичный код

Сообщение от serg5768 Посмотреть сообщение
В том то и бяка, что надо отследить перемещение переключателя.
Поиском по массиву с последующим сравнением ?
Долго и коряво...
Механика контроллером долго обрабатывается? Ну тогда
Сообщение от serg5768 Посмотреть сообщение
Придется обрастать корпусами
__________________
Не бейте больно, ежели чо, ну не удержался... А вааще,
"Мы за все хорошее, против всей х..., По лугам некошеным чтобы шли ступни,
Чтобы миром правила правда, а не ложь, Мы за все хорошее, нас не на...!
..." (Ленинград)
Я не несу ответственности за свои действия в Вашей голове.
akegor вне форума  
Непрочитано 31.01.2016, 21:49  
mtit
Почётный гражданин KAZUS.RUN
 
Аватар для mtit
 
Регистрация: 21.03.2007
Адрес: М.(осква)
Сообщений: 4,398
Сказал спасибо: 2,192
Сказали Спасибо 1,780 раз(а) в 1,012 сообщении(ях)
mtit на пути к лучшему
По умолчанию Re: Непоследовательный двоичный код

Сообщение от serg5768 Посмотреть сообщение
Придется обрастать корпусами
Блин, а погуглить?
К155ИД4 - трёхвходовый. Каскадируем два корпуса - получаем 6-ти входовой. Всё! на плате больше ни одной детальки не будет. Правда 9 выходов - будут инверсными.
__________________
+ 7 903 641 87 25// 1. Иногда отвечаю "по памяти" 2. Часто заблуждаюсь >> Критикуйте, не обижусь.
mtit вне форума  
Непрочитано 31.01.2016, 21:57  
serg5768
Временная регистрация
 
Регистрация: 31.01.2016
Сообщений: 84
Сказал спасибо: 32
Сказали Спасибо 25 раз(а) в 16 сообщении(ях)
serg5768 на пути к лучшему
По умолчанию Re: Непоследовательный двоичный код

Сообщение от akegor Посмотреть сообщение
Механика контроллером долго обрабатывается?
Вопрос скорее не во времени, миллисекунды - песчинка...
Суть скорее в другом...
Стоял переключатель в положении "4" - 00110Н или 6...
Передвинули его в положение "7" - 01000Н или 8...

То, что переключатель сдвинулся - проблемы увидеть нет, а вот куда он переставился ?
Перебирать каждый раз весь массив ?

А если бы было "линейное" изменение кода - банальное больше/меньше отработало бы "на ура"...
serg5768 вне форума  
 
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
IAR код виснет на M4 stm8 ARM 9 13.11.2015 10:48
Код для управления 7-сегментными индикаторами Dimitrij Микроконтроллеры, АЦП, память и т.д 3 29.08.2011 19:39
MPLAB IDE и HI-TECH 18 s-4ern Микроконтроллеры, АЦП, память и т.д 16 17.09.2009 14:06
преобразование позиции бита в код Beduin Микроконтроллеры, АЦП, память и т.д 26 29.06.2007 19:05


Часовой пояс GMT +4, время: 00:27.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.