Пятница, 19.04.2024, 11:31
Вы вошли как Гость | Группа "Гости"Приветствую Вас Гость | RSS
Главная | система дистанционного управления на ATtiny 2313 "c нуля" - Страница 36 - Форум | Мой профиль | Регистрация | Выход | Вход
Обитель RC-инженера
Форма входа
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Модератор форума: ВитГо  
Форум » Разработка электронных устройств » Разрабатываю ! » система дистанционного управления на ATtiny 2313 "c нуля" (пошаговое изучение строительства систем радиоуправления)
система дистанционного управления на ATtiny 2313 "c нуля"
uwrteyДата: Четверг, 10.01.2013, 11:37 | Сообщение # 526
Генерал-майор
Группа: Администраторы
Сообщений: 3270
Репутация: 11
Статус: Offline
а ссылочки нет случайно на статью DiHalt'а где он про порты рассказывает ?

не успеваю за своими мыслями......
 
ВитГоДата: Пятница, 11.01.2013, 17:58 | Сообщение # 527
Полковник
Группа: Администраторы
Сообщений: 2422
Репутация: 20
Статус: Offline
просто про порты ?
http://easyelectronics.ru/avr-uch....ka.html
http://easyelectronics.ru/avr-uch....da.html

вообще есть у него на сайте AVR. Учебный курс там много полезного !!


Виталий (аka ВитГо)
 
uwrteyДата: Пятница, 11.01.2013, 23:32 | Сообщение # 528
Генерал-майор
Группа: Администраторы
Сообщений: 3270
Репутация: 11
Статус: Offline
о-о, спасибо.. даже с картинками...

Добавлено (11.01.2013, 23:32)
---------------------------------------------
Ну вот, сегодня я закончил монтаж светодиодной матрицы http://s40.radikal.ru/i090/1301/b0/23eef053e73b.jpg
Правда светодиоды у меня разные 10 красных и 10 белых wink

П.С. нужно будет демонтировать кварцы - они ведь теперь не нужны тут...


не успеваю за своими мыслями......

Сообщение отредактировал uwrtey - Пятница, 11.01.2013, 23:59
 
uwrteyДата: Суббота, 12.01.2013, 23:10 | Сообщение # 529
Генерал-майор
Группа: Администраторы
Сообщений: 3270
Репутация: 11
Статус: Offline
вот что у меня получилось
дисплей я отключил. (хотя написал код так, чтобы индикация на дисплей все таки выводилась без ошибок)

вот видос http://www.youtube.com/watch?v=ABosv-_cr4o
сначала я жму первую кнопку, потом жму 17-ую а потом 17+18 (сразу две)

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

но тут есть один нюанс - все дело в том, что я промахнулся в выборе - динамическая индикация тут не поможет
ладно-бы если дело закончилось на светодиодах, но ведь нет! нам же нужно включать различные нагрузки
а это значит, что нужно включать 20 ключевых элементов ( а не мигать ими )
Тут скорее всего нужно на сдвиговых регистрах городить...

Дальность работы радиомодулей я еще не проверял...

Выражаю ОГРОМНУЮ БЛАГОДАРНОСТЬ Горбукову Виталию за неоценимый труд ( тут можно еще очень много слов сказать.)
Я не знаю ни одного человека, кроме ВитГо, который бы стал на протяжении нескольких месяцев БЕСПЛАТНО, каждый день On-Line учить кого-то (меня в данном случае) кодить и не только.....
Прикрепления: no_display.zip (5.7 Kb)


не успеваю за своими мыслями......

Сообщение отредактировал uwrtey - Воскресенье, 13.01.2013, 13:25
 
ВитГоДата: Воскресенье, 13.01.2013, 19:13 | Сообщение # 530
Полковник
Группа: Администраторы
Сообщений: 2422
Репутация: 20
Статус: Offline
кодил ты сам smile

Виталий (аka ВитГо)
 
uwrteyДата: Вторник, 22.01.2013, 14:52 | Сообщение # 531
Генерал-майор
Группа: Администраторы
Сообщений: 3270
Репутация: 11
Статус: Offline
smile не скромничай

Добавлено (22.01.2013, 13:10)
---------------------------------------------
Хочу попробовать на сдвиговом регистре сделать.

Подскажешь куда сходить и где почитать?

Добавлено (22.01.2013, 14:52)
---------------------------------------------
вот что то нашел http://easyelectronics.ru/sdvigovyj-registr.html
и http://easyelectronics.ru/podklyu....ax.html


не успеваю за своими мыслями......

Сообщение отредактировал uwrtey - Вторник, 22.01.2013, 14:05
 
ВитГоДата: Среда, 23.01.2013, 00:12 | Сообщение # 532
Полковник
Группа: Администраторы
Сообщений: 2422
Репутация: 20
Статус: Offline
на сдвиговом все не так просто..
прочитай у Дихалта какой там алгоритм работы....

кстати а у тебя что будет 40 исполнителей?
или все таки 40 команд это например варианты работы 8-10 исполнителей?

пора начать строить исполнителя - и тогда будет ясно как им управлять и какие способы подойдут...


Виталий (аka ВитГо)
 
uwrteyДата: Среда, 23.01.2013, 00:48 | Сообщение # 533
Генерал-майор
Группа: Администраторы
Сообщений: 3270
Репутация: 11
Статус: Offline
ну в обще это 20 команд а не 40 // 40 у нас получилось по тому что 8 бит * 5 столбцов , а реально мы используем только 4 бита из 8 бит ( из байта ) то-есть 4*5=20

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

какие конкретно нагрузки - это не столь важно ( это больше для опыта )

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


не успеваю за своими мыслями......
 
ВитГоДата: Среда, 23.01.2013, 05:45 | Сообщение # 534
Полковник
Группа: Администраторы
Сообщений: 2422
Репутация: 20
Статус: Offline
неее, с незакрывающимся транзистором каша выйдет :-)

если тебе так нужно 20 нагрузок, тогда делать на D-триггерах..
брать чтото нашей 555TM9 - это помоему 6 D-триггеров (вот, ссылку нашел)
4 триггера использовать, а вывод C - использовать для выбора триггера

итого 5 выводов на C
4 вывода на данные для триггеров

на выходе будем иметь 20 статических сигналов к которым можно подключать хоть реле, хоть транзисторы...


Виталий (аka ВитГо)
 
uwrteyДата: Понедельник, 28.01.2013, 17:03 | Сообщение # 535
Генерал-майор
Группа: Администраторы
Сообщений: 3270
Репутация: 11
Статус: Offline
ок, спасибо - почитаю..

Добавлено (28.01.2013, 17:03)
---------------------------------------------
появился вопрос

в коде приемника когда мы перенастраиваем фронт прерывания ...

ldi R16,(1<<ISC01)|(1<<ISC00) ; устанавливаем прерывание на нарастающий фронт "INT0"
out MCUCR,R16


и

ldi R16,(1<<ISC01) ; устанавливаем прерывание на падающий фронт "INT0"
out MCUCR,R16


меня смутила запись, когда мы перенастраиваем преывание на падающий фронт.
ISC00 само что ли в ноль встает?

не нужно делать такую запись ?

ldi R16,(1<<ISC01)|(0<<ISC00) ; устанавливаем прерывание на падающий фронт "INT0"
out MCUCR,R16


ну или такую
ldi R16,(2<<ISC00) ; устанавливаем прерывание на падающий фронт "INT0"
out MCUCR,R16


получается что не надо - код работает... surprised


не успеваю за своими мыслями......

Сообщение отредактировал uwrtey - Понедельник, 28.01.2013, 17:15
 
ВитГоДата: Понедельник, 28.01.2013, 17:25 | Сообщение # 536
Полковник
Группа: Администраторы
Сообщений: 2422
Репутация: 20
Статус: Offline
а ты расшифруй запись (1<<ISC01)

ISC01 это число, конкретно можно глянуть в inc файле... например =4

получим 1<<4
или 10000 это в бинари
или 0001 0000 - это результирующий байт который будет в регистре..
поэтому запись (1<<ISC01) равноценна записи (1<<ISC01)|(0<<ISC00)
(ноль сколько не двигай - он нулем так и останется)


Виталий (аka ВитГо)
 
uwrteyДата: Понедельник, 03.02.2014, 21:14 | Сообщение # 537
Генерал-майор
Группа: Администраторы
Сообщений: 3270
Репутация: 11
Статус: Offline
а -а, вот оно как. surprised
ясно посмотрю в inc файле...


не успеваю за своими мыслями......

Сообщение отредактировал uwrtey - Понедельник, 03.02.2014, 22:10
 
uwrteyДата: Понедельник, 03.02.2014, 22:11 | Сообщение # 538
Генерал-майор
Группа: Администраторы
Сообщений: 3270
Репутация: 11
Статус: Offline
Я тут над новым проектом сижу.
А так как набирать код вручную мне лень, то я открываю какой ни-будь старый проект и копипастю код блоками из него.
На этот раз источником кода стал код приемника, который я разрабатывал в этой ветке форума.
И тут я наткнулся вот на такую запись:
Код


; тут мы загрузили какое-то значение в Temp

       andi Temp, 0b11110000  ; где "1" там информация остается, где "0" там сбрасываем ! (маска)      

       in Temp4, PortB

       andi Temp4, 0b00001111  ; где "1" там информация остается, где "0" там сбрасываем ! (маска)       

       OR Temp, Temp4

       out PortB,Temp   ; выводим на строки



Я сразу заметил ошибку:
Код
in Temp4, PortB


Должно быть так:
Код
in Temp4, PinB


Очень странно, но даже с этой ошибкой код работал ? Как ? ( Видимо AVR Студио-4 прощает такие ошибки? )

П.С. : Вот тут еще один прикол узнал:
Цитата
> У некоторый AVR запись "1" в PINx.n меняет уровень на выходе.

Подтверждаю. Если DDRx.n сконфигурирован как «выход», то запись "1" в PINx.n даёт инверсию выхода!

видимо речь идет про такую запись:
OUT PINx.n, 1 или как то так OUT PINx, obnnnnnnnn


не успеваю за своими мыслями......

Сообщение отредактировал uwrtey - Понедельник, 03.02.2014, 23:33
 
444с-с4Дата: Воскресенье, 22.03.2015, 21:37 | Сообщение # 539
Рядовой
Группа: Проверенные
Сообщений: 5
Репутация: 0
Статус: Offline
Нельзя ли задать пару вопросов по теме, или узнать на каких условиях это можно сделать. При непосредственном соединении МКР- кодера с МКР-декодером система работает, а связь через передатчик - приемник 433 мГц - сплошные глюки.
 
uwrteyДата: Воскресенье, 22.03.2015, 21:44 | Сообщение # 540
Генерал-майор
Группа: Администраторы
Сообщений: 3270
Репутация: 11
Статус: Offline
а что вы используете в качестве радиоканала ?

не успеваю за своими мыслями......
 
Форум » Разработка электронных устройств » Разрабатываю ! » система дистанционного управления на ATtiny 2313 "c нуля" (пошаговое изучение строительства систем радиоуправления)
Поиск:


Copyright MyCorp © 2024
Сделать бесплатный сайт с uCoz