4 тумблера, как оптимальней подключить?

Обсуждаем контроллеры компании Atmel.
Аватара пользователя
vek
Вымогатель припоя
Сообщения: 563
Зарегистрирован: Чт апр 16, 2009 04:53:41

Re: 4 тумблера, как оптимальней подключить?

Сообщение vek »

Ни чего страшного не будет если вместо 128к воткнет 120,вместо 64к - 68к Берется из стандартного ряда все.
В первый раз меня ударило током - и я подумал что ни черта не соображаю в электричестве. Во второй раз был аккуратнее и меня не ударило - теперь я возомнил из себя крутого микроэлектронщика.
Аватара пользователя
ibiza11
Поставщик валерьянки для Кота
Сообщения: 1900
Зарегистрирован: Сб фев 21, 2009 13:11:40
Откуда: Москва

Re: 4 тумблера, как оптимальней подключить?

Сообщение ibiza11 »

не советую делать на резисторах, хоть и простая получается схема. резисторы дают нестабильность температурную и дополнительно снижают надежность, за счет своего количества.
Сдвиговый регистр с защелкой самое то!
Ставим плюсы: )
Аватара пользователя
vek
Вымогатель припоя
Сообщения: 563
Зарегистрирован: Чт апр 16, 2009 04:53:41

Re: 4 тумблера, как оптимальней подключить?

Сообщение vek »

С регистром прикольно
А 6 ног есть? может матричный опрос? Не надо не микрух, не резисторов дополнительно. И как с регистром,очень просто за каждым отдельным тумблером следить
В первый раз меня ударило током - и я подумал что ни черта не соображаю в электричестве. Во второй раз был аккуратнее и меня не ударило - теперь я возомнил из себя крутого микроэлектронщика.
Аватара пользователя
Eugene.Negrobov
Мучитель микросхем
Сообщения: 472
Зарегистрирован: Ср фев 15, 2012 09:00:34
Откуда: Киев

Re: 4 тумблера, как оптимальней подключить?

Сообщение Eugene.Negrobov »

Ой, да ладно тебе, корпуса современной логики могут быть размером со спичечную головку(QFN), могут, как две спичечные головки(TSSOP), что практически равняется площади одного резистора. Кроме того, по моему всегда круче, если на плате размещено более одной микрухи.
:)))

Ну ладно, если объективней, то вариант с регистром более помехозащищен, особенно учитывая еще и качество встроенного 10-битного АЦП, который более как 8-битный почти без толку использовать...
Вот, станешь возле какой-нибудь трансформаторной будки или другого фонящего в эфир аппарата- считай словил помеху и АЦП покажет уже левое значение... Перепад температур? Тоже другое значение!
Я бы стреманулся в чем-либо серьезном подобное решение применять...
Кстати... А что это собственно будет?

Что до "разжуйте", то PISO означает "parallel input- serial output", т.е. аппарат, который записывает состояния 8-ми ножек в регистр, который можно будет сдвигать внешними тактовыми импульсами и читать последовательно данные, которые в нем записаны. Вот это тактируемое чтение- фактически и есть протокол SPI, любой внешний сдвиговый регистр можно подключить к этому интерфейсу. Есть и SIPO регистры, думаю ты слышал когда-нибудь про 74HC595, вот они наоборот последовательно принимают данные, которые могут быть записаны в защелку и выведены на 8 внешних ножек. Через эту штуку удобно драйвить 7-сегментники, всего 2 внешних регистра и 4 ножки позволяют выводить 8 символов!!! :shock:

Ну ладно, теперь конкретно про дело, если бы я подобное делал, я бы взял любой PISO регистр(их просто навалом от разных производителей), навесил бы на входные ножки все так, как было описано в предыдущем сообщении, в результате чего получил бы возможность читать байт, в котором по 2 бита бы отвечало за состояние одного тумблера. К примеру биты 11 означают, что тумблер в центральном, ибо ни один резистор не подтянут к земле, 01 значит, что левый резистор подтянут(т.е. переключатель не по средине, а отклонен в одну из сторон), 10 будет означать, что отклонен в другую. В целом МК будет получать по SPI что-нибудь такое: 0b01111010
Маской мы вырезаем нужные 2 бита и сдвигаем в сторону, получаем просто 4 байта, каждый из которых будет характеризовать состояние каждого из тумблеров...
Ох, мне что-то кажется, что я как-то слишком сложно и долго объясняю... Стоит ли продолжать, или автор таки решил воспользоватся услугами АЦП? :dont_know:

P.S.
А вообще, автор, вы бы не жадничали, почти уверен, что у вас есть возможность выделить один параллельный порт для опроса тумблеров с 3-мя состояниями. В конце концов всегда можно взять более ногастый микроконтроллер, они не так и дороги.
I'm on a huge rock, flying through space!
AaNnDdRrEeYy
Встал на лапы
Сообщения: 100
Зарегистрирован: Ср дек 24, 2008 11:59:24
Откуда: Москва

Re: 4 тумблера, как оптимальней подключить?

Сообщение AaNnDdRrEeYy »

Eugene.Negrobov писал(а):Ох, мне что-то кажется, что я как-то слишком сложно и долго объясняю... Стоит ли продолжать, или автор таки решил воспользоватся услугами АЦП? :dont_know:

P.S.
А вообще, автор, вы бы не жадничали, почти уверен, что у вас есть возможность выделить один параллельный порт для опроса тумблеров с 3-мя состояниями. В конце концов всегда можно взять более ногастый микроконтроллер, они не так и дороги.


Нет, пока АЦП отложил, просто подключаю каждый тумблер к двум ногам МК. как сделаю выложу схему и видео как все это работает.
в планах подключить LCD и кнопки для него.
Аватара пользователя
Jack_A
Друг Кота
Сообщения: 6307
Зарегистрирован: Вт апр 24, 2007 07:45:40
Откуда: Minsk

Re: 4 тумблера, как оптимальней подключить?

Сообщение Jack_A »

nirq писал(а):Итого пять рублей выгадали. Или даже десять.

Получив в итоге неработоспособную конструкцию, где на выходе из-за разброса номиналов -- цена на пеньку в Стамбуле.
Напрашивающийся совет : "не занимайся, товарисч, фигнёй" -- считается обидным. А ведь время -- ресурс, увы, невосполнимый ...
Мой знакомый мудрый старик говорил : "Я не настолько богат, чтоб покупать дешёвое". Это не конкретно по данному вопросу, просто это очень часто пробегает : "Хочу за копейки, дешевле кетайского, но чтоб IBM уделывало".
AaNnDdRrEeYy
Встал на лапы
Сообщения: 100
Зарегистрирован: Ср дек 24, 2008 11:59:24
Откуда: Москва

Re: 4 тумблера, как оптимальней подключить?

Сообщение AaNnDdRrEeYy »

Jack_A писал(а): А ведь время -- ресурс, увы, невосполнимый ...


всегда когда кто-то что-то начинает делать то что ему интересно, появляется кто-то кто сразу все переводит в деньги и ресурсы и идут советы
"не занимайся херней"
"купи готовое - это дешевле"

- буду заниматься этой херней, мне это нравится, это мое хобби.
- не буду покупать готового, мне это не надо - мне надо время с удовольствием провести.
AaNnDdRrEeYy
Встал на лапы
Сообщения: 100
Зарегистрирован: Ср дек 24, 2008 11:59:24
Откуда: Москва

Re: 4 тумблера, как оптимальней подключить?

Сообщение AaNnDdRrEeYy »

подключил тумблеры вот так
Изображение

кусок кода в котором опрос положения тумблеров
весь код вставлять не буду, 4 кб, большой он...

Код: Выделить всё

//с какой ручки считывается
         unsigned char tmp_stk = dis_data[ch_send - PROP_CH_COUNT][DIS_STK_INDEX];
         //реверсивный канал или нет
         unsigned char tmp_rn  = dis_data[ch_send - PROP_CH_COUNT][DIS_RN_INDEX];

         //возможные значения tmp_stk 0,1,2,3
         /*  stk  pin
            0 - 0,1
            1 - 2,3
            2 - 4,5
            3 - 6,7   
         */
         unsigned char tmp_pin_0 = 0;
         unsigned char tmp_pin_1 = 0;

         //если канал реверсивный то pin меняются местами
         if(tmp_rn == 1)//реверсивный
         {
            tmp_pin_1 = tmp_stk * 2;
            tmp_pin_0 = (tmp_stk * 2) +1;
         }
         else//нормальный
         {
            tmp_pin_0 = tmp_stk * 2;
            tmp_pin_1 = (tmp_stk * 2)+1;
         }
         //тумблер вверх
         if(BitIsClear(DIS_PIN,tmp_pin_0))
         {
            OCR2 = 75+(3*0);
         }
         else
         {
            //тумблер вниз
            if(BitIsClear(DIS_PIN,tmp_pin_1))
            {
               OCR2 = 75+(3*40);
            }
            else //среднее положение
            {
               OCR2 = 75+(3*20);
            }
         }


результат на осцилографе

первые 4 импульса относятся к пропорциональным каналам вторые 4 к дискретным

1. все тумблеры в минимальном положении
Изображение

2. второй тумблер в максимальном положении
Изображение

3.второй и четвертый в максимальном положении

Изображение

4.второй четвертый в максимальном, первый в среднем

Изображение

прога на компе для отладки
Изображение
Аватара пользователя
Eugene.Negrobov
Мучитель микросхем
Сообщения: 472
Зарегистрирован: Ср фев 15, 2012 09:00:34
Откуда: Киев

Re: 4 тумблера, как оптимальней подключить?

Сообщение Eugene.Negrobov »

Опрос- 4 кБ?! :shock:

Какой-то уж очень крутой код обработки получается...
Можно же сделать все простыми лог. операциями!
К примеру нужно вырезать предпоследние 2 бита из PINB, которое равняется например 0b11101101...
Берем PINB, записываем значение в какую-нибудь переменную, затем накладываем маску AND, вот такую 0b00110000, в результате все остальное стает нулями, а те 2 бита, которые нас интересуют- они остаются, получаем 0b00100000 после чего банально применяем логический сдвиг вправо на 4, получаем 0b00000010, т.е. вполне маленькое число, которое в случае 10 означает, что тумблер отклонен в одну сторону, 01, что в другую, и 11, если ни один из подтягивающих резисторов не подтянут на землю, т.е. тумблер по центру.

Все просто, так-же можно обработать и другие пары бит, только придется маску изменить и сдвинуть биты другое количество раз. :wink:

P.S.
На осциллографе каша какая-то.
I'm on a huge rock, flying through space!
AaNnDdRrEeYy
Встал на лапы
Сообщения: 100
Зарегистрирован: Ср дек 24, 2008 11:59:24
Откуда: Москва

Re: 4 тумблера, как оптимальней подключить?

Сообщение AaNnDdRrEeYy »

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

4 кб вся программа вместе с кодом которым к usb цепляю, и еще много чего там есть.

на осцилографе сигналы которые будет принимать дешифратор
http://www.rcdesign.ru/var/rcd/storage/images/articles/radio/tx_intro/ppm_signal/9137-1-rus-RU/ppm_signal1.gif

только вместо синхро паузы синхро импульс, все работает, дешифратор тоже, только в нем дописать разбор дискретных команд.
nirq
Опытный кот
Сообщения: 758
Зарегистрирован: Вс фев 10, 2013 15:26:00

Re: 4 тумблера, как оптимальней подключить?

Сообщение nirq »

Не столько по делу, сколько попоучать... я понимаю, что надо было просто один раз в жизни подключить четыре тумблера к авээр и не трахать мозг - а любитель потому и любитель, что "для себя для дома для семьи" не принято относиться к делу так же "профессионально" (что бы это ни значило), как для завода на работе за получку.
... а на работе за получку тогда и уж тем более: смысл жопу рвать для чужого дяди?


Даже если в списке резисторов все номиналы заменить на "почти такие же" (не обсуждая приемлемость результата) - понятие "логистика" не перестанет быть.

Логистика - это когда ты либо покупаешь по одной штучке каждой позиции, не забывая прибавить к себестоимости каждой штучки соответствующую часть накладных расходов (офисно-курьерская работа "выбрать-заказать-съездить", время работы / ожидания, транспорт, связь)...
... либо для оптимизации накладных расходов покупаешь каждой позиции сразу по упаковке, которых остатки останутся вечно лежать на складе: минус замороженная себестоимость, минус место помноженное на месяцы хранения, плюс среди завалов неликвида ещё трудоёмче поиск нужного.

С другой стороны: на складе уже есть катушка сопротивлений, но только одного номинала "10ком"; на складе уже есть коробка микросхем, но только "атмега 16".
И это тоже логистика.


Даже если делаешь для себя и даже если это интересно - понятие "себестоимость" не перестаёт быть.

Себестоимость - тоже техническая характеристика изделия. Точнее: характеристика решения какой-то задачи... если задача решена вообще без паяльника, организационными например способами через устный инструктаж пользователя - это хорошее решение. А если задача сформулирована как "провести время" - при чём тут паяльник-то?
Когда же (сознательно) игнорируешь понятие "себестоимость" в процессе - тогда как раз да, вместо (технического) творчества занимаешься хернёй. Которую предлагается публично обсудить, но не обсуждать.

"Купить в магазине" относится к себестоимости ортогонально в данном контексте.
Мастер видит и ценит красоту изделия решения, если угодно с пафосом. Независимо от существования в природе магазина.

И да, кэп считает невозможным обойтись без оговорки: "себестоимости вообще" не бывает, она рассчитывается в конкретной ситуации, это не просто сумма цен на комплектующие по накладной и даже не обязательно в чисто деньгах выражается.


Про "качество АЦП", "словил помеху" и "круто, когда много микрух" не пиши больше, это не круто.

АЦП работает так, как работает: на входе напряжение, на выходе код. К выходному коду не применимо понятие "качество", все его разряды тупо и однозначно соответствуют входному напряжению.

"Помеха" - не вирус гриппа, который можно "словить" от трансформаторной будки. Ты изделие проектируешь или квадратики линиями соединяешь по рисунку.
А в "серьезные решения" (что бы это ни значило) правильно стремаешься лезть. Сначала на кошках потренироваться для себя... постепенно, безопасно, по мере въезжания в тему с пониманием происходящего и контролем над ситуацией - честнее перед будущим пользователем (заказчиком?). Иначе получался бы "профессиональный ламер", а их и без тебя в мире более чем достаточно уже. Конкуренция.

Круто не "когда много микрух", а когда всё работает, оптимально по стоимости, удобно, полезно, надёжно, доставляет минимум проблем для всех участников процесса.


С регистрами в цепочку разводить иногда удобнее, чем тянуть всё от центрального паука.

Например, нужно сделать "узко и длинно" вместо безразмерно-квадратной сферической в ва голой на столе "макетки".



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

Чужие простыни листать оно дело такое... на любителя.
Аватара пользователя
Eugene.Negrobov
Мучитель микросхем
Сообщения: 472
Зарегистрирован: Ср фев 15, 2012 09:00:34
Откуда: Киев

Re: 4 тумблера, как оптимальней подключить?

Сообщение Eugene.Negrobov »

Ну прямо взял, и обосрал всех разом. 8)

Парировать могу много что:
1. Так уж случилось, что на форуме этом больше любителей, чем профессионалов... А почему так? А потому, что профессионал- это человек, который собственно зарабатывает себе на жизнь разработкой устройств. Может знания у него и на месте, но дело свое воспринимает ровно как работу и не более, ему только бы побыстрее сделать, сделать подешевле, с минимумом геморроя, сделать, только, чтобы отцепились. Придя домой, он в жизни не полезет на форумы, его тошнит от его работы, тошнит наверное еще с самой практики в университете...

Любитель же- это человек, который лично связался с каким-либо делом, даже если фактически не имеет к нему и малейшего отношения. Ему интересно! Он рассматривает разные пути, порой может взять более затратный, более сложный, просто потому, что это будет круче! Он же любит рассказывать другим о своих похождениях, учить других, помогать другим. Ему это нравится! :write:

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

2. Для кого-то хобби- это трата денег... А кто-то наоборот считает, что деньги зарабатываются, дабы было что потратить на хобби.
Если учитывать себестоимость того, что по сути нафиг не нужно, то... Отпадает всякий логический смысл в разработке устройства... Для того человека, который не получит удовольствия от разработки, постройки, и отладки.
Видел когда-нибудь полупроводниковые трансформаторы Теслы? Ну там, DRSSTC, QCWDRSSTC... Не? Ну, вот тебе пример:
http://www.youtube.com/watch?v=uNJjnz-GdlE
Это абсолютно бесполезное устройство, с ним ничего не сделать, оно ни для чего не служит... Постройка его- это 100% трата денег...
Однако люди тратят тысячи долларов на дорогущие IGBT модули, на механические части, на прерыватель... И это еще повезет, если в процессе отладки один 300-баксовый IGBT не вылетит!
Вот такие устройства строятся любителями, просто потому, что это круто.

3. АЦП в AVR действительно паршивый, и не думал, что для кого-то это будет новостью.
Я например пробовал выжимать 10 бит их него, но в итоге получал шум, какой бы крутой референсный источник напряга не стряпал. Если не часто обновлять значение, или усреднять его, то может это не очень заметно, но если мерять по-честному, то шумит он не по-детски.

4. Для меня круто, когда на плате много микрух, и не уверен, что в парижской палате мер и весов имеется эталон крутости, доказывающий обратное.
Но если кто не понял, сказано это было в шутку, на самом деле это вполне хороший способ экономии ножек, не вызывающий каких-либо проблем.
Помехи и различные наводки- штука очень реальная, и кто работал с силовой электроникой, тот точно кивнет головой и начнет распевать басни о том, как он неделю не понимал, где же была лажа, пока случайно там-то ферритовую бусинку не повесил...
I'm on a huge rock, flying through space!
AaNnDdRrEeYy
Встал на лапы
Сообщения: 100
Зарегистрирован: Ср дек 24, 2008 11:59:24
Откуда: Москва

Re: 4 тумблера, как оптимальней подключить?

Сообщение AaNnDdRrEeYy »

nirq писал(а):А в "серьезные решения" (что бы это ни значило) правильно стремаешься лезть. Сначала на кошках потренироваться для себя... постепенно, безопасно, по мере въезжания в тему с пониманием происходящего и контролем над ситуацией - честнее перед будущим пользователем (заказчиком?). Иначе получался бы "профессиональный ламер", а их и без тебя в мире более чем достаточно уже. Конкуренция.


У каждого своя мотивация, кто-то с железками ковыряется через "не хочу" но с мыслью "за это бабло платят", кто то строит ЧПУ что бы просто сказать "Ха, я сделал это!" а кто то с мысль "Вот наштампую КИТ наборов разбогатею".

А что касается АЦП или отдельной микрухи со сдвиговым регистром, и так и так сделаю.
pavel1979
Мучитель микросхем
Сообщения: 494
Зарегистрирован: Пн авг 12, 2013 19:07:47
Откуда: башкирия мелеуз

Re: 4 тумблера, как оптимальней подключить?

Сообщение pavel1979 »

можно много вариантов придумать,конечно вариант с 81(!) не очень но можно сделать на 2 канала ацп,один канал на 2 тумблера и второй на2 оставшихся,на каждый канал получится 2 в степени 4=16 комбинаций напряжения
можно вообще сделать на 4-х ацп-на каждый тумблер свой,всего 2 резистора на канал=занято 4 ноги
регистр сдвига 74НС595-3 выв для управления+1 на обр.связь ( :) ) =тоже 4 выв
phanis
Вымогатель припоя
Сообщения: 513
Зарегистрирован: Сб фев 19, 2011 18:04:08
Откуда: Татарстан, пос. Актюбинский
Контактная информация:

Re: 4 тумблера, как оптимальней подключить?

Сообщение phanis »

Еще же вроде как с диодами можно, тогда будет 4 вывода использовано Без диодов 6 выводов
Изображение
Вложения
switch.jpg
(126.4 КБ) 533 скачивания
Последний раз редактировалось phanis Вт окт 08, 2013 19:07:15, всего редактировалось 2 раза.
phanis
Вымогатель припоя
Сообщения: 513
Зарегистрирован: Сб фев 19, 2011 18:04:08
Откуда: Татарстан, пос. Актюбинский
Контактная информация:

Re: 4 тумблера, как оптимальней подключить?

Сообщение phanis »

Думаю нужно периодически менять входа с выходами. сначала опрашиваем в одну сторону потом в другую
Аватара пользователя
Аlex
Модератор
Сообщения: 4614
Зарегистрирован: Чт мар 18, 2010 23:09:57
Откуда: Планета Земля
Контактная информация:

Re: 4 тумблера, как оптимальней подключить?

Сообщение Аlex »

Не получится. Т.к. выводы 23 и 24 нужно будет подтягивать сопротивлениями то к плюсу, то к минусу. Это ещё 1 вывод МК и 2 сопротивления.
phanis
Вымогатель припоя
Сообщения: 513
Зарегистрирован: Сб фев 19, 2011 18:04:08
Откуда: Татарстан, пос. Актюбинский
Контактная информация:

Re: 4 тумблера, как оптимальней подключить?

Сообщение phanis »

Если немного подумать, то все получится
PROTEUS.rar
(13.16 КБ) 172 скачивания
Ответить

Вернуться в «AVR»