http://forum.getchip.net/

Mod#079 (IR-удлиннитель для UART на ATtiny13) на ассемблере
http://forum.getchip.net/viewtopic.php?f=24&t=207
Страница 1 из 1

Автор:  Sergey1600 [ 08 апр 2012, 23:55 ]
Заголовок сообщения:  Mod#079 (IR-удлиннитель для UART на ATtiny13) на ассемблере

Всем доброго времени суток!

Хочу представить свою модификацию удлинителя IR - UART, представленного в статье #079. Основную задачу, которую я себе поставил - уменьшить размеры модуля. Был сделан большой шаг в сторону от унверсальности платы, разработанной уважаемым GetChiper'ом. На плате я оставил только 4 контакта для подключения ( питание, земля, TX и RX), поскольку предполагается однократное программирование кристалла. За счет применения резисторов 0805 плата получилась довольно компактной 16х16 мм, одна нога тиньки осталась незадействованной.
На скриншоте из Sprtint Layout показана моя плата в сравнении с универсальной платой.


Для программирования я припаял два провода (RESET и SCK):


Как обычно сделал ошибку при разводке платы - забыл подвести землю к TSOP, выкрутился проводком под платой


За неимением низкомных резисторов, пришлось использовать 150 омный типоразмера 1206 (встал на место для 0805), дальность с ИК диодом TSAL 6200 при этом около 2 метров.



При программировании за основу была взята идея GetChiper'а с диспетчером задач. Тупление в код на АВ мало чем помогло, поэтому в результате пятидневных мучений был изобретен следующий велосипед:
-устройство формирует посылку 1W-IR сети (статья #075)
-частота импульсов примерно 37 кГц (зависит от внутренного RC генератора)
-адрес устройства равен 0х0000
-CRC8 вычисляется с помощью полинома 0х31
-если у принятой посылки CRC ненулевой, то она игнорируется
-для начала передачи по ИК устройству необходимо передать 2 байта по UART
-имеется буфер на передачу по ИК на 16 байт (то есть 8 посылок)
-параметры UART: 2400 бод, 8 бит, бит четности нет, один стоп бит
-устройство может одновременно передавать ИК сигнал, принимать и передавать по UART
-по прошествии 0.6 сек после подачи питания устройство отдает по UART число 0х58 (впрочем можно любое другое или вообще убрать отправку)

При переполнении приемного буфера UART следующие байты игнорируются - вряд ли он успеет заполниться до конца передачи ИК посылки. Одновременные прием и передача ИК сигнала отсутствуют т.к. из-за отражений от предметов принимаемая посылка будет искажаться той посылкой, что передает устройство.

Компоненты:
-желательно использовать ATtiny13A (у тиньки без буквы нет прерываний PCINT)
-ИК диод TSAL6200
-ИК приемник TSOP2136 (отличается от 4836 другим расположением ног)
-транзистор BC847C
-кучка резисторов:)
-конденасторы керамический(0.1мкФ) и полярный (1-10мкФ)

В схеме ничего необычного и нового


FUSE биты для Sinaprog (оставил заводские, кроме галки на CKDIV8, т.е. тактовая частота на 8 не делится)


В прикрепленном архиве исходник на асме (AVR Studio) и hex файл.
MOD_IR.rar [77 КБ]
Скачиваний: 803

Автор:  dimaris [ 13 фев 2014, 15:16 ]
Заголовок сообщения:  Re: Мод #079 (IR-удлиннитель для UART на ATtiny13)

Здравствуйте!
Меня заинтересовал этот IR-удлинитель. Хочу его применить для беспроводной заливки скетча по UART в ардуино.
Вот только для программирования ардуино по мимо сигналов RX и TX нужен еще RESET который используется для перезагрузки в нужный момент для загрузки ботлоадера. Можно ли это реализовать с помощью IR-удлинителя?
Для связи ардуино с компьютером по UART используется преобразователь FTDI FT232BM.

Автор:  GetChiper [ 15 фев 2014, 23:57 ]
Заголовок сообщения:  Re: Мод #079 (IR-удлиннитель для UART на ATtiny13) на ассемб

Sergey1600, отличная работа :OK:


то dimaris
Боюсь это устройство немного не подходит для таких целей, по причине малой скорости передачи. Прошивка будет заливаться минут десять...

Автор:  Гость [ 16 ноя 2017, 21:30 ]
Заголовок сообщения:  Re: Mod#079 (IR-удлиннитель для UART на ATtiny13) на ассембл

Добрый день, может вы можете мне что то подсказать. Мне надо через uart jack научить устройство пр ним ать сигналы с ИК пульта

Автор:  GetChiper [ 26 ноя 2017, 21:27 ]
Заголовок сообщения:  Re: Mod#079 (IR-удлиннитель для UART на ATtiny13) на ассембл

С этого устройства http://www.getchip.net/topics/seasons/ можно взять модули

Страница 1 из 1 Часовой пояс: UTC + 3 часа [ Летнее время ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/