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

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

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

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

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

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

Автоматика и аппаратура связи Дистанционное и непосредственное управление исполнительными механизмами, сотовая, а также радиосвязь.

Закрытая тема
Опции темы
Непрочитано 26.07.2009, 01:19   #1
vtv_terra
Частый гость
 
Регистрация: 25.09.2007
Сообщений: 10
Сказал спасибо: 3
Сказали Спасибо 4 раз(а) в 4 сообщении(ях)
vtv_terra на пути к лучшему
По умолчанию ИК управление

Народ, хочу реализовать табло "Обмен валют". А как будут передаваться данные... тут проблемы не каждый банк даст доступ к рабочему ПК. Нужен какой-то пульт управления. Видел разные варианты:
1. пульт с LCD-дисплеем и кнопками
2. GSM-модуль + SMSкой
3. ИК пульт.
На мой взгляд, 3-й вариант самый простой. Что Вы скажете?!
Вопрос: есть разные стандарты - три из них самые распространенные, из которых есть RC-5. У меня есть ИК-пульт маленький, 3 В батарейка как для bios, без всяких эмблем и т.п. Но он RC-6 стандарта. В инете инфу не нашел, помогите!
Реклама:
vtv_terra вне форума  
Непрочитано 26.07.2009, 01:35   #2
nml
Супер-модератор
 
Аватар для nml
 
Регистрация: 13.03.2004
Адрес: Minsk
Сообщений: 2,378
Сказал спасибо: 1,955
Сказали Спасибо 1,327 раз(а) в 578 сообщении(ях)
nml на пути к лучшему
По умолчанию Re: ИК управление

Сообщение от vtv_terra
На мой взгляд, 3-й вариант самый простой. Что Вы скажете?!
RC5 самое простое. На МК прием его никаких проблем не вызывает. Но тут есть тонкость - а если кто додумается к вашему пульту с "лентяйкой" подойти? И наберет курс себе выгодный

Хотя, конечно, можно просто приемный узел жвачкой залеплять

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

Ну или - перед изменением - предусмотреть ввод пароля...

А не прорабатывали вариант с обычной компьютерной клавиатурой? Прием с нее не сложнее, разъем - под замок, и все проблемы решены.
nml вне форума  
Непрочитано 26.07.2009, 01:57   #3
vtv_terra
Частый гость
 
Регистрация: 25.09.2007
Сообщений: 10
Сказал спасибо: 3
Сказали Спасибо 4 раз(а) в 4 сообщении(ях)
vtv_terra на пути к лучшему
По умолчанию

›››Но тут есть тонкость - а если кто додумается к вашему пульту с "лентяйкой" подойти? И наберет курс себе выгодный ....... Ну или - перед изменением - предусмотреть ввод пароля...

Да именно так. Допустим кнопку "Power" такая красная, удерживаешь в течение 20-30 сек -› переходишь в режим ввода пароля -› вводишь пароль -› и если правильный изменяешь значения, а если нет переход в обычный режим. проблем не будет.

Планирую делать на avr? так вот в appnote avr-410 есть уже пример по стандарту rc-5 - проблем не вижу.

Но меня интересует описание стандарта RC-6???


Что касается клавиатуры, думал, но не подходит. Если табло находится внутри помещения, то можно закрыть глаза на торчащую клавиатуру из табло, хотя не очень. А если табло находится на улице - абсолютно неприемлемо.
vtv_terra вне форума  
Непрочитано 26.07.2009, 02:16   #4
AndreiVV
Гражданин KAZUS.RU
 
Регистрация: 29.06.2006
Сообщений: 638
Сказал спасибо: 37
Сказали Спасибо 56 раз(а) в 41 сообщении(ях)
AndreiVV на пути к лучшему
По умолчанию

RC6 это немного измененый RC5, у меня такой же пульт о котором вы говорили работал с телеком у которого родной пульт RC5 вышел из строя, только вот некоторые кнопки не воспринимались.
Как говорил nml действительно пульты они имеют адрес который указывает для какого устройства предназначен пульт (тв,двд...)
здесь сам протокол
AndreiVV вне форума  
Непрочитано 26.07.2009, 03:11   #5
vtv_terra
Частый гость
 
Регистрация: 25.09.2007
Сообщений: 10
Сказал спасибо: 3
Сказали Спасибо 4 раз(а) в 4 сообщении(ях)
vtv_terra на пути к лучшему
По умолчанию

AndreiVV Спасибо. Буду разбираться.


У меня еще тема. О подходе к программированию. У меня есть опыт на asm и на си для uC.
Пришел к такому заключению.
Программа делиться на:
1. Init – Инициализацию
2. Executive – Исполнитель
3. Uninstall – Деинсталляцию
Вид:
__C_task void main (void)
{
unsigned char _Main_Sequence=0;
for (;
{
switch (_Main_Sequence)
{
case 0:
{// Инициализация
Init_System_Timer;
Init_Buzzer;
Init_SPI;
Init_EEPROM();
Init_KEYS();
Init_LCD();
Init_WAKE_M();
__SEI;
_Main_Sequence++;
//----------------------------------------------
// Предварительная установка параметров
//----------------------------------------------
}
break;
case 1:
{// Основной исполнитель
Executive_System_Timer;
Executive_Buzzer();
Executive_EEPROM();
Executive_KEYS ();
Executive_LCD ();
if (System_Error)_Main_Sequence++;
}
break;


case 2:
{// Uninstall
// Для правильной остановки узла машины
}
break;
*/
}
}
}

Что касается Executive_######();
void Executive_EEPROM (void)
{
if (Executive_EEPROM_Enable)
{
.......
}
}
Если они небольшие, то использовать через #define, а если нет, тогда как функция.
Эти Executive_######(); построены по при принципу switch - case и бывают двух типов:
- ведомые (управляются другими Executive_######());
1. с автоматическим завершением. Например, запись байта в память - этот исполнитель записал байт, а потом сам себя заблокировал, что бы не занимать процессорное время - Executive_EEPROM_Enable = 0.
2. без автоматического завершения - полностью управляется другими функциями - ведущими.
- ведущие - основной исполнитель
Основной исполнитель. Например в моих проектах - с LCD и клавиатурой это был Executive_MENU (). Который отслеживает текущий пункт меню и разрешает выполнение того или иного процесса - сохранить параметры, активировать узел A, B или С? ну и запустить или остановить машину.

Представим себе машину из трех конвейеров, который транспортирует - еще горячие котлеты . Машина имеет два режима Режим ожидания и Режим работы. В режиме ОЖИДАНИЯ можно запускать и останавливать отдельно каждый конвейер. А в режиме Работы - они все работают одновременно, но если попалась холодная котлета (по датчику), то ее необходимо отбраковать. Так вот, в режиме ОЖИДАНИЯ Основной исполнитель использует ВЕДОМЫЕ исполнители без автозавершения, а в режиме РАБОТЫ использует ВЕДОМЫЕ исполнители с автозавершением.

Еще пример.
Необходимо упаковать 70 грамм семечек в пакетик и выполнить его контрольную проверку на выходе.
1. Выполнение дозирования дозатором в бункер, который взвешивается.
2. Подготовка упаковочной пленки и ТЭНов для спайки - ТЭНы вывести в исходное положение.
3. Из бункера высыпать в сформированный пакетик (только одна сторона не запаяна).
4. Прижать ТЭНы: спаять незапаяную сторону и отрезать пакетик.
5. Пропустить пакетик через машину динамического взвешивания - вращается конвейер на тензодатчике, через который пропускается пакетик, и пока пакетик находиться на нем происходит анализ его веса, и если плохой (значительно больше или меньше 70 г.) - отбраковать.
Так вот ОСНОВНОЙ ИСПОЛНИТЕЛЬ выполняет функцию слежения за всем процессом и поочередного включения (отключения) ведомого исполнителя на каждом этапе.
Просто и удобно, быстро понимаешь работу машины, если это чужой исходник. Быстро можешь изменить тот или иной исполнитель, т.к. он имеет минимальную завязку (общие переменные, параметры и т.д) с другими исполнителями.

Почему я пишу об этом, просто смотришь на исходники, которые даются в книгах по микроконтроллерах, то просто голову срывает, как оно работает, или где находиться то или другое. Целая куча комментов, все сбросано в одну функцию или наоборот все в разных и т.д. Если сразу научить начинающего к какой-то структуре, то все становиться на много проще.
Что вы можете сказать и какой Ваш подход, хотя бы в общем???
vtv_terra вне форума  
Непрочитано 27.07.2009, 18:51   #6
Ironium
Гражданин KAZUS.RU
 
Аватар для Ironium
 
Регистрация: 02.03.2005
Сообщений: 923
Сказал спасибо: 155
Сказали Спасибо 444 раз(а) в 202 сообщении(ях)
Ironium на пути к лучшему
По умолчанию

Не нашли инфу по RC5? Попробуйте поисковик гугль поюзать, очень хороший поисковик. Посмотрите апноты на используемые Вами мку, как правило, там есть примеры приемника и передатчика RC5. Если Вы решили использовать АРМ7, может не хватить ресурсов, пробуйте АРМ9. Категорически не рекомендуется использовать 8 разр мку, тем более писать софт на асм - это не модно.
Ironium вне форума  
Непрочитано 28.07.2009, 09:05   #7
vtv_terra
Частый гость
 
Регистрация: 25.09.2007
Сообщений: 10
Сказал спасибо: 3
Сказали Спасибо 4 раз(а) в 4 сообщении(ях)
vtv_terra на пути к лучшему
По умолчанию

Уважаемый Ironium. На мой взгляд лучше 8 разрядного AVR mega нет, именно для этого приложения, а использовать ARM7 или даже ARM9/ это то же самое что идти на рыбалку с ядерной бомбой 8O .
Что касается asm, его должен знать каждый уважающий себя программист-embedded, без него ни куда. Я использую СИ-компилятор IAR AVR 5.30, но с asm вставками.

И еще Ironium можешь обосновать почему не надо использовать 8-ми разрядный мк!?
Для изменения состояния, предварительно установленного OUTPUTS, в avr необходимо 1 команда, а в том же arm7 - 3 команды. Напряжение +5В, а не +3.3В, повышенная помехоустойчивость. И так сплошь и рядом, я сам перехожу на arm7 это нужно, но нужно и четко понимать где его применять. Если нужен быстрый исполнитель, то 8-bit, а если нужны мозги, то 32-bit. Это, конечно, мое личное мнение.

Мне нужен был datasheet на RC-6 протокол, я его нашел, всем сп, но меня интересует подход в программировании??. Если эта тема обсуждалась, то подскажите где?, если нет почему бы необсудить :P
vtv_terra вне форума  
Непрочитано 28.07.2009, 10:52   #8
Ironium
Гражданин KAZUS.RU
 
Аватар для Ironium
 
Регистрация: 02.03.2005
Сообщений: 923
Сказал спасибо: 155
Сказали Спасибо 444 раз(а) в 202 сообщении(ях)
Ironium на пути к лучшему
По умолчанию

Сообщение от vtv_terra
Что касается asm, его должен знать каждый уважающий себя программист-embedded, без него ни куда.
Полностью поддерживаю, когда встречаю реализацию протоколов последовательной передачи данных на си, слов не хватает. Автор подобного чуда жаловался на неустойчивую работу, но так и не посмотрел(не смог посмотреть?), что же ему компилятор наваял. Некоторые конструкции в асме выглядели как бред сумасшедшего, нужно хоть немного смотреть? Немного вставок на асме и все прекрасно заработало.

Незнания асма приводят к стрельбе из пушек по воробьям. Тут уже нет и речи о надежности кода.
Ironium вне форума  
Закрытая тема

Закладки


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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Управление ISD1420? maxNTF Цифровые сигнальные процессоры 2 18.08.2008 07:42
Управление индикатором. day177 Микроконтроллеры, АЦП, память и т.д 14 13.02.2008 11:25
Программное управление alkapone Источники питания и свет 2 10.02.2008 17:50
Управление LM317? maxNTF Источники питания и свет 2 12.11.2007 18:14
кнопочное управление БП lafa Источники питания и свет 1 04.12.2006 08:57


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


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot