Форумы Modlabs.net: Связь на IR, нужна помощь - Форумы Modlabs.net

Перейти к содержимому

  • (3 Страниц)
  • +
  • 1
  • 2
  • 3
  • Вы не можете создать новую тему
  • Вы не можете ответить в тему

Связь на IR, нужна помощь

#1 Пользователь офлайн   Fusion 

  • Member
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 241
  • Регистрация: 25 Май 04

Отправлено 04 Июнь 2004 - 11:45

Как я уже говорил, собираюсь сделать универсальный, програмируеммый пульт на несколько кнопок...
У меня есть пару вопросов для тех кто в этом хоть что-нибудь шарит:

1. Какую лучше установить минимальную частоту опроса ИК приемника, что бы ничего не пропустить???? То есть я собираюсь просто считывать импульсы посылаемые пультом при нажатии на кнопку и сохранять в EEPROM, а потом воспроизводить его при нажатии на кнопку на своем пульте....

2. Можно ли подключать ИК приемник с встроенным усилителем прямо на вход AVR микросхемы???

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

3. Какая может быть сама большая длина кода кнопки по времени???

Пока все....
Заранее благодарен...

djevis: Название тем начинаем с заглавной буквы - спасибо. . .
0

#2 Пользователь офлайн   BlackAlex 

  • Advanced Member
  • PipPipPipPipPipPipPip
  • Группа: Пользователи
  • Сообщений: 1 458
  • Регистрация: 18 Апрель 03

Отправлено 04 Июнь 2004 - 12:36

приемники как правило на 36кГц, хотя есть и на другую частоту, так что обсалютной универсальности не добится. Подключение - есть схема чеха, там приемник к атмелу 2313, 2323 подрубается, ничего сложного.
0

#3 Пользователь офлайн   AlchemisT 

  • Member
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 452
  • Регистрация: 24 Январь 04

Отправлено 04 Июнь 2004 - 12:39

Fusion Я так думаю, что не больше 8ми байт. Больше-уже нестабильно.
0

#4 Пользователь офлайн   Fusion 

  • Member
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 241
  • Регистрация: 25 Май 04

Отправлено 04 Июнь 2004 - 12:41

BlackAlex
Можешь кинуть мне на мыло схемку???
0

#5 Пользователь офлайн   lexa777 

  • Advanced Member
  • PipPipPipPipPipPipPip
  • Группа: Пользователи
  • Сообщений: 941
  • Регистрация: 06 Июль 03

Отправлено 04 Июнь 2004 - 12:43

А пульт для чего? Если для компа, то схем полно! На юсб тож есть! Сорри, если что пропустил! :-)
0

#6 Пользователь офлайн   Fusion 

  • Member
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 241
  • Регистрация: 25 Май 04

Отправлено 04 Июнь 2004 - 12:43

AlchemisT
Это ты про максимальнуй длину сигнала????
Мне надо бы по времени...

Добавлено спустя 6 минут 34 секунды :

lexa777
Пульт для чего угодно... Програмируется с любого другого пульта (записывает коды кнопок, а потом воспроизводит их)....
Думаю со мной многие согласятся, что в основном используются 4-7 кнопок пульта, по этому решил замутить пульт-брелок...

Добавлено спустя 5 минут 8 секунд :

Люди, исправьте, если я не прав:
Пульт посылает импульсы, а приемник их принимает,и выдает в определенном порядке 0 и 1 (то есть на выходе появляеться напряжение), а то я в этом полный "ноль"...
0

#7 Пользователь офлайн   Fusion 

  • Member
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 241
  • Регистрация: 25 Май 04

Отправлено 07 Июнь 2004 - 09:28

Помогите разобраться с AT90S2313...
Купил на выходных, и решил спаять хоть что нибудь (так как это мой первый микроконтроллер), но ничего не вышло... Если у кого есть какая-то схемка (чотя бы светодиодами помигать) пришлите, плз, на мыло:
mfanta@ukrsotsbank.com
0

#8 Пользователь офлайн   Зинец Виктор 

  • Member
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 204
  • Регистрация: 02 Июнь 03

Отправлено 07 Июнь 2004 - 10:41

вот тебе схема: берешь 2313, берешь кварц на 4 МГц, припаиваешь его к ногам 4 и 5

ногу 20 припаиваешь к +5 В, ногу 10 - к общему

берешь светодиод красный, резистор 300 Ом, припаиваешь светодиод одной ногой к ножке 2, к другой ноге припаиваешь одну ногу резистора, другую ногу резистора соединяешь с общим

все - можешь мигать :D

Изображение

Добавлено спустя 3 минуты 42 секунды :

насчет "как правильно включать светодиод" я сам честно говоря каждый раз узнаю по новому - по моему наросовал правильно... где у него какая нога - я узнаю методом тыка исключительно
0

#9 Пользователь офлайн   Fusion 

  • Member
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 241
  • Регистрация: 25 Май 04

Отправлено 07 Июнь 2004 - 11:27

Как в AVREdit создать HEX файл, для последующей прошивки его в микроконтроллер с помощью PonyProg?????
0

#10 Гость__*

  • Группа: Гости

Отправлено 07 Июнь 2004 - 21:23

а кто такой AVREdit?

я программировал в AVRstudio - компилируешь и в папке проекта получаешь файл *.hex; из icc avr та же песня - после компиляции получаешь файл

не может быть avredit каким-либо редактором для набивания текстов?..
0

#11 Гость_Зинец_*

  • Группа: Гости

Отправлено 07 Июнь 2004 - 21:30

ага, поиск - великая сила:

про avredit: This windows program is not a compiler itself, but an editor / IDE to easily use the free GNU C-compiler avrgcc. It features configurable syntax coloring, a simple file browser, a makefile generator and even a small bitmap-to-array editor.

просто утилита для набивания текста... потом его надо скомпилировать чем-либо, icc avr или gnu-бесплатным чем-то...
0

#12 Пользователь офлайн   Fusion 

  • Member
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 241
  • Регистрация: 25 Май 04

Отправлено 08 Июнь 2004 - 11:09

Согласен, немного лоханулся :(
Скачал AVRStudio4, как в нем сохдавать проэкты на С, у меня можно только на ASM????

Добавлено спустя 9 минут 48 секунд :

Зинец Виктор
Спаял даную тобой схемку...
Не получаеться мигать.... Могу либо зажечь светодиод, либо погасить...
Кварц 4MHz... Компилятор ошибок не выдает...

Делаю так:
#include <avr/io.h>
void Delay();
void main()
{
sbi(DDRD, DDD0);//назначаем линию 0 порта D на выход
while(1)
{
sbi(PORTD,PD0);//зажигаем
Delay();
cbi(PORTD,PD0);//гасим
Delay();
}
}
//Функция Delay() цикл ничего не делать
void Delay()
{
int i;
for(i=4000000;i>0;i--)
{
}
}

...
0

#13 Гость_Зинец_*

  • Группа: Гости

Отправлено 08 Июнь 2004 - 15:20

а в avrstudio на с писать нельзя (имхо) - только на асм... а вот написанное на с (в icc avr например) можно отлаживать в avrstudio (в хелпе почитать про это можно)

по поводу "не мигает"... не знаю, вроде должно (если умный компилятор ничего не сделал с твоим циклом, раз он пустой)...
0

#14 Пользователь офлайн   ProniX 

  • Advanced Member
  • PipPipPipPipPipPipPip
  • Группа: Пользователи
  • Сообщений: 1 744
  • Регистрация: 25 Ноябрь 03

Отправлено 08 Июнь 2004 - 17:16

Йопт... :D Уже и для простейших пиков на сишке стали писать... Да можно, можно, только зачем??? На асме в чтыре раза короче и проще получается такая программа :)
0

#15 Пользователь офлайн   listener 

  • Advanced Member
  • PipPipPipPipPipPipPip
  • Группа: Пользователи
  • Сообщений: 618
  • Регистрация: 08 Май 03

Отправлено 08 Июнь 2004 - 17:35

ProniX
Дыкъ! AVR - еще сложный камень, под него можно на асме писать. А вот попробуй под те же hc08 попиши (учитывая, что одна сишная строчка может запросто развернуться на пол-килобайта кода).

Чтобы не ходить далеко за примерами:

mask16_Bh[*data & 0xF]&mask16_Ch[*data >> 4]


Кроме того, контроллеров развелось, как собак. Гораздо проще написать один раз на C, и компилировать потом под что угодно.
Жизнь слишком коротка, чтобы писать на асме.
0

#16 Пользователь офлайн   ДМ 

  • Member
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 179
  • Регистрация: 11 Август 03

Отправлено 09 Июнь 2004 - 07:01

2 Fusion - Я тоже собрал схему на AT90S2323 8dip
работает нормально.

Стандартный программатор не пашет !

Пришлось AVReal'm пользоваться , да еще и длииииииииННыый BAT-файл писать ! :)

Добавлено спустя 2 минуты 20 секунд :

Fusion делай на 90S2323 - у него 8 ног всего !!! :)
0

#17 Пользователь офлайн   Fusion 

  • Member
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 241
  • Регистрация: 25 Май 04

Отправлено 09 Июнь 2004 - 08:35

ДМ

Я уже купил AT90S2313, пока разбираюсь с программирование микроконтроллеров вообще..... А на чем конкретно делать - потом посмотрим (но за совет списибо)
0

#18 Пользователь офлайн   Зинец Виктор 

  • Member
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 204
  • Регистрация: 02 Июнь 03

Отправлено 09 Июнь 2004 - 09:48

ща его вопросы потонут под битвой "С vs ASM"

[имхо]
он же не родился умным, он им становится; нашел пример для начала и пробует - ну он на си был; нашел бы пример на асме - разбирался с асмом...

он же в теории хочет 1) захватывать посылку с пульта ДУ 2) запомнить ее в eeprom 3) воспроизвести потом ее - на С это сделать будет проще (в смысле - не убив неск. лет на оттачивание мастерства писания на асм)
[/имхо]

а вот чего у него пауза в 1 сек не получается?? может компилятор сотимизировать чего-то там?
0

#19 Пользователь офлайн   Fusion 

  • Member
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 241
  • Регистрация: 25 Май 04

Отправлено 09 Июнь 2004 - 10:36

Зинец Виктор
Спасибо за поддержку...

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

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

Как считать выборочные пины порта, что бы потом их с чем-то сравнить???

Как обрабатывать таймер?? (Желательно пример кода, можно на мыло mfanta@ukrsotsbank.com)
Заранее спасибо...


PS Кому интересно, можете почитать мои статьи по изготовлению акустической полки для ВАЗ 21150 и пульта ДУ на руль http://mfanta.nm.ru/projects.html ...
0

#20 Пользователь офлайн   Зинец Виктор 

  • Member
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 204
  • Регистрация: 02 Июнь 03

Отправлено 09 Июнь 2004 - 12:42

2mail
0

Поделиться темой:


  • (3 Страниц)
  • +
  • 1
  • 2
  • 3
  • Вы не можете создать новую тему
  • Вы не можете ответить в тему

1 человек читают эту тему
0 members, 1 guests, 0 anonymous users