AlexZabr 0 6 марта, 2009 Опубликовано 6 марта, 2009 · Жалоба Буду благодарен в помощь/подсказки в выборе интерфейса: есть устройство управляемое несколькими кнопками/джойстиком на самом устройстве. Нужно сделать проводное дистанционное управление параллельное управлению на самом устройстве. Т.е. к разьему подключается дистанционка, там те-же кнопки/джойстик, комманды передаются по проводам на устройство. Есть две модели дистанционки по длинам: 1. пол-метра 2. до 3-5 метров. Кол-во команд - небольшое (примерно до 8 команд). В устройстве - микро-компьютер на основе PXA270 CPU, у него есть в наличии немало свободных GPIO к которым можно подключиться. так-же есть CPLD/FPGA к которому тоже можно подрубиться. Вопрос - какой интерфейс выбрать. Желание - простота реализации, надежность, меньше физических линий (кол-во свободных пинов разьема - сильно ограничено), не нужно хитроумное. Можно конечно асинхронно выставлять код комманды (3 бита) и CPU будет периодически его проверять, но тут 3 линии, да и не уверен будет ли работать надежно на длинах кабеля более полу-метра. Какие варианты ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mdmitry 0 6 марта, 2009 Опубликовано 6 марта, 2009 · Жалоба Что можно в пульте держать аппаратно? Какие условия эксплуатации? Если в пульте можно МК и помЕховая обстановка хорошая, то по USART все передавать. Надо 4 линии: GND, Vcc, RxD, TxD. Если нужна бОльшея надежность, то поставить преобразователи для RS232 в устройство и пульт. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Shamil 2 6 марта, 2009 Опубликовано 6 марта, 2009 · Жалоба Коммутировать в пульте 8 резисторов на 2-х проводную линию к устройству. В устройстве 8-ми разрядное АЦП (во многих контроллерах есть встроенное), или RC генератор c последующим программным измерением его частоты (которая будет пропорциональна резистору в пульте). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AlexZabr 0 6 марта, 2009 Опубликовано 6 марта, 2009 · Жалоба Что можно в пульте держать аппаратно? Какие условия эксплуатации? Если в пульте можно МК и помЕховая обстановка хорошая, то по USART все передавать. Надо 4 линии: GND, Vcc, RxD, TxD. Если нужна бОльшея надежность, то поставить преобразователи для RS232 в устройство и пульт. Насчет RS232 - в принципе реально ибо само устройство имеет RS232 и TxD, RxD, GND выходят на внешний разьем. Но тогда в пульте нужно какой-нить микроконтрллер и рутины RS232 комманд. В приципе я не ограничен аппаратно в плане пульта, хотелось просто попроще (хотя и думал CPLD там ставить, но тогда возможно и микроконтроллер для RS232 будет не сложнее...) Условия эксплуатации - снаружи (т.е. в "поле"). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
galjoen 0 6 марта, 2009 Опубликовано 6 марта, 2009 · Жалоба Насчет RS232 - в принципе реально ибо само устройство имеет RS232 и TxD, RxD, GND выходят на внешний разьем. Но тогда в пульте нужно какой-нить микроконтрллер и рутины RS232 комманд. В приципе я не ограничен аппаратно в плане пульта, хотелось просто попроще (хотя и думал CPLD там ставить, но тогда возможно и микроконтроллер для RS232 будет не сложнее...) Условия эксплуатации - снаружи (т.е. в "поле"). Если бы уже не было RS232, то имхо лучшим вариантом был бы LIN на процессоре за $0.3. Никакой обвязки и всего 3 провода - GND, LIN, питание пульта. А так - посчитать нужно. Но похоже LIN всётаки выигрывает. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AlexZabr 0 7 марта, 2009 Опубликовано 7 марта, 2009 · Жалоба Если бы уже не было RS232, то имхо лучшим вариантом был бы LIN на процессоре за $0.3. Никакой обвязки и всего 3 провода - GND, LIN, питание пульта. А так - посчитать нужно. Но похоже LIN всётаки выигрывает. Сорри за наивность, что такое LIN ? Не слышал от таковом.. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
galjoen 0 7 марта, 2009 Опубликовано 7 марта, 2009 · Жалоба Сорри за наивность, что такое LIN ? Не слышал от таковом.. В автомобилях применяется в т.ч. Там ведь не везде CAN. Обычно до двери CAN, а в двери переходник с CAN на LIN и всякие лампочки, замки, стеклоподъёмники и т.п. уже по LIN управляются. LIN самосинхронизирующийся, т.е процессор от встроенного генератора может тактироваться в отличие от RS232 и т.п. А значит дешёвый. Специальные драйвера линии LIN имеются. Бывает их ещё однопроводным каном называют. Я не пользовался, но если интересно посмотрю - где-то ссылки были. В поисковике наберите - найдётся. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AlexZabr 0 7 марта, 2009 Опубликовано 7 марта, 2009 · Жалоба В автомобилях применяется в т.ч. Там ведь не везде CAN. Обычно до двери CAN, а в двери переходник с CAN на LIN и всякие лампочки, замки, стеклоподъёмники и т.п. уже по LIN управляются. LIN самосинхронизирующийся, т.е процессор от встроенного генератора может тактироваться в отличие от RS232 и т.п. А значит дешёвый. Специальные драйвера линии LIN имеются. Бывает их ещё однопроводным каном называют. Я не пользовался, но если интересно посмотрю - где-то ссылки были. В поисковике наберите - найдётся. Спасибо. В принципе в системе уже есть UART, на разьем выходят RS232 (TxD, RxD, GND) ибо система общается с PC по serial. Думаю это преймущество ибо не нужно изголяться вытаскивать еще доп. пины из системы на разьем. Значит по кабелю пойдут 3 линии, хотя ежели будет экранированный - по нему можно пустить землю, тогда останутся всего 2 линии (сигналы). Почитаю насчет LINa что-бы понять будет ли он выгоден в данной ситуации или RS232 есть самое оптимальное. Думаю в пульте поставлю какой-нить PIC контроллер с встроенным UARTом да драйвеер (скажем MAX232), на GPIO контроллера навесить кнопок/джойстик пульта, ну и ессно софт UARTa (по нажатию кнопки передается по UARTу соотв. код в систему). Думаю это будет наиболее простое и надежное решение, хотя с софтом для микроконтроллеров пока не доводилось иметь дело... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
galjoen 0 8 марта, 2009 Опубликовано 8 марта, 2009 · Жалоба ... Значит по кабелю пойдут 3 линии, хотя ежели будет экранированный - по нему можно пустить землю, тогда останутся всего 2 линии (сигналы). ... Про питание пульта забыли. Или у него батарейка будет? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AlexZabr 0 10 марта, 2009 Опубликовано 10 марта, 2009 · Жалоба Про питание пульта забыли. Или у него батарейка будет? Да, немаловажная деталь. У него автономное питание (батарейка indeed), надеюсь PIC контроллер + RS232 driver будут жрать по божески... :cranky: ... А вообще, сколько может жрать такой контроллер (VCC 3.3V) учитывая ьто всего софта там будет скажем рутина UARTа ? (ожидание наьатия кнопок и посылание кодов комманд как следствие) ? Думаю использовать PIC со встроенным RS232 (кроме драйвера ессно), наверно 19200 хватит (хотя сама система работает с PC на 115200), клок контроллера наверно в пределах 10 MHz.. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
galjoen 0 10 марта, 2009 Опубликовано 10 марта, 2009 · Жалоба Да, немаловажная деталь. У него автономное питание (батарейка indeed), надеюсь PIC контроллер + RS232 driver будут жрать по божески... :cranky: ... А вообще, сколько может жрать такой контроллер (VCC 3.3V) учитывая ьто всего софта там будет скажем рутина UARTа ? (ожидание наьатия кнопок и посылание кодов комманд как следствие) ? Думаю использовать PIC со встроенным RS232 (кроме драйвера ессно), наверно 19200 хватит (хотя сама система работает с PC на 115200), клок контроллера наверно в пределах 10 MHz.. Там 85...95% будет жрать собственно преобразователь в драйвере RS232 (около 3 милиампер). Это если процессор правильно настоить ессно. Я рекомендовал бы какую нибудь тиньку, но можно, хотя и хуже, и PIC. В частности из-за потребления LIN интерфейс лучше. Он в отличие от RS232, если ничего не нажимать/передавать, то ничего и не жрёт. Можно и вообще 2 подтягивающих резистора по концам и всё - такой самодельный LIN. И микрофонный кабель использовать в кач-ве шнура можно будет. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AlexZabr 0 10 марта, 2009 Опубликовано 10 марта, 2009 · Жалоба Там 85...95% будет жрать собственно преобразователь в драйвере RS232 (около 3 милиампер). Это если процессор правильно настоить ессно. Я рекомендовал бы какую нибудь тиньку, но можно, хотя и хуже, и PIC. В частности из-за потребления LIN интерфейс лучше. Он в отличие от RS232, если ничего не нажимать/передавать, то ничего и не жрёт. Можно и вообще 2 подтягивающих резистора по концам и всё - такой самодельный LIN. И микрофонный кабель использовать в кач-ве шнура можно будет. Спасибо. А что за тинька ? В принципе, работа пульта на систему ожидается эпизодическая, т.е. примерно 80-90% от времени работы системы - пульт молчит. Драйвер возьму ADM3222, он питается 3.3V, и есть у него shutdown. Так и буду имплементировать держа его это 80-90% времени в shutdownе (т.е. контроллер будет держать его в shtudownе пока не будет запрос не передачу (нажатие кнопки)). Думаю не будет проблем для батарей. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
galjoen 0 10 марта, 2009 Опубликовано 10 марта, 2009 · Жалоба Спасибо. А что за тинька ? Атмеловская ATtiny xx. Дешевле при тех-же параметрах и по энергопотреблению обычно выигрывает. В принципе, работа пульта на систему ожидается эпизодическая, т.е. примерно 80-90% от времени работы системы - пульт молчит. Драйвер возьму ADM3222, он питается 3.3V, и есть у него shutdown. Так и буду имплементировать держа его это 80-90% времени в shutdownе (т.е. контроллер будет держать его в shtudownе пока не будет запрос не передачу (нажатие кнопки)). Думаю не будет проблем для батарей. От 2-х батареек работать не сможет. Или повышающий преобразователь ставить придётся. Да и скорость 19200 излишне высока. 2400 хватит. А процессор тоже можно в слипе держать и будить по нажатию. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AlexZabr 0 10 марта, 2009 Опубликовано 10 марта, 2009 · Жалоба Атмеловская ATtiny xx. Дешевле при тех-же параметрах и по энергопотреблению обычно выигрывает. От 2-х батареек работать не сможет. Или повышающий преобразователь ставить придётся. Да и скорость 19200 излишне высока. 2400 хватит. А процессор тоже можно в слипе держать и будить по нажатию. Ну ессно через step-up/boost, это уже детали которые очевидны, посему и не упоминал :) А насчет процессора в power down и побудке по нажатию - это правильно. 2400 ? Тоже верно, вполне хватит... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
galjoen 0 10 марта, 2009 Опубликовано 10 марта, 2009 · Жалоба Ну ессно через step-up/boost, это уже детали которые очевидны, посему и не упоминал :) Почему очевидны? Многие процы, в т.ч. те-же тиньки с буквой V в диапазоне 1,8..5,5 вольта работают. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться