roboforum.ru

Технический форум по робототехнике.

Неправильные KY-032

Re: Неправильные KY-032

ol82 » 10 сен 2016, 20:15

А T13 нельзя вернуть к жизни? Типа подать извне что-нибудь? Деешевка, но когда еще они у меня появятся.

Re: Неправильные KY-032

Dmitry__ » 10 сен 2016, 20:32

Я не мега спец по avr, но думаю программно нельзя убить чип. Нужен нормальный программатор, его еще называют высоковольтный, параллельный. Думаю таким программатором ожно сбросить любые биты конфигурации.
http://ra4nal.qrz.ru/stk500.shtml

Добавлено спустя 4 минуты 1 секунду:
Во, Реаниматор для ATtiny13
И еще:
https://www.drive2.ru/b/1089984/

Re: Неправильные KY-032

ol82 » 10 сен 2016, 22:15


Это я видел, но нужна вторая - исправная.
Ладно, будем ждать China-13.

Re: Неправильные KY-032

Dmitry__ » 10 сен 2016, 22:44

А ардуино катит?
https://geektimes.ru/post/255396/

Re: Неправильные KY-032

ol82 » 12 сен 2016, 21:43

Dmitry__ писал(а):А ардуино катит?
https://geektimes.ru/post/255396/

Нет, не катит, ничего не получается, хотя схему 10 раз проверил. И мутно описано:
"Поэтому следуем алгоритму:
Собираем схему; - сделал,
Подаем питание на Arduino подключив к юсб; подаю,
Подаём +12В на транзистор; подаю,
Восстанавливаем микроконтроллер; А вот это что значит? Какие действия? (Я нажимал reset, типа чтоб скетч выполнить).
Отключаем +12В." Отключаю. AVRDUDE не видит контру. Мама, я лузер...
Что-то с Тинькой не то, иначе бы мой Fuse Doctor спас ее. Наверное, перелечил. :)

Re: Неправильные KY-032

Dmitry__ » 13 сен 2016, 02:11

ol82 писал(а):А вот это что значит? Какие действия?

Судя по программе, надо что-нибудь в сериал порт послать. Открой терминалку, законекться к ардуине и пошли любой символ...
Код: Выделить всёРазвернуть
if (Serial.available() > 0) {


Добавлено спустя 1 час 31 минуту 51 секунду:
Кста, в видео об этом говорится :)
Да еще и информацию в терминалку выдает.

Re: Неправильные KY-032

ol82 » 13 сен 2016, 08:29

Выдало вот это. Подозреваю, что с такой сигнатурой контроллеров нет.
Вложения
9600.png
9600.png (4.29 КиБ) Просмотров: 2449

Re: Неправильные KY-032

Dmitry__ » 13 сен 2016, 13:59

Похоже мертвецкий совсем, код "FF" - это все "1", т.е. всегда выдается единичный уровень от подтянутого резистора к плюсу питания. Вощем забей, не делай культа из железа, ждем затоваривания тиньками :)

Re: Неправильные KY-032

ol82 » 13 сен 2016, 18:31

Придеться отложить. Жду Китай.

Re: Неправильные KY-032

Madf » 14 сен 2016, 13:00

да купите их мешок и жгите на здоровье)

Re: Неправильные KY-032

ol82 » 11 окт 2016, 21:01

Здравствуйте все. Наконец пришли тиньки, но слегка в другом корпусе (S1). Пока ждал, попалась на глаза еще схема (1) http://forum.primuss3.com/viewtopic.php?f=23&t=593&start=0. Но она у меня что-то не пошла, несмотря на танцы с бубнами. Пришлось вернуться к старой схеме (2). Схемы похожие и платку не пришлось переделывать, только в AVR Studio поменял вывод 3 на вывод 6. Все работает, причем ТСОП у меня на 38кгц, а прога залита на 36, но дальности все равно за глаза, около полуметра. Для моих целей вполне хватает.
И опять челом бью к Дмитрию и другим, какие волшебные слова нужно дописать в коде (ir_locator.asm), чтоб одновременно 2 выхода МК выдавали инверсные логические уровни, как на схеме (1). Бывает удобно для разных целей. Мне, например, нужен логический 0 при срабатывании.
По поводу оптической развязки правильно писАли тут умные люди; да, чувствительность зверская, засвечивает ТСОП конкретно. Мне всякая термоусадка нифига не помогла, пришлось из пластика черного лепить крышечку для ТСОПа и чувствительность зарезать резистором на 100ом в цепи ИК-диода, жалею что переменник не развел.
Окончательная схема - ir_locator3
Вложения
IR L2.jpg
(1).GIF
(1).GIF (8.63 КиБ) Просмотров: 2367
(2).gif
(2).gif (5.46 КиБ) Просмотров: 2357
ir_locator 3.gif
ir_locator 3.gif (5.45 КиБ) Просмотров: 2369

Re: Неправильные KY-032

Dmitry__ » 12 окт 2016, 19:57

ol82 писал(а):какие волшебные слова нужно дописать в коде (ir_locator.asm), чтоб одновременно 2 выхода МК выдавали инверсные логические уровни, как на схеме (1).

Ты бы хоть указывал ссылку на код и обсуждение, думаешь я помню что говорил месяц назад? :)

Добавляем доп. выход в код. Был один выход: "LED на PB0", переименовываем в led1. Добавляем led2:
Код: Выделить всёРазвернуть
;* Определения

   .equ  led1   = 0   ;led1 на PB0
   .equ  led2   = 2   ;led2 на PB2

Программируем пин на выход как и led1:
Было:
Код: Выделить всёРазвернуть
RESET:
   sbi   DDRB, led1   ;подключаем led1 на выход PORTB

Стало:
Код: Выделить всёРазвернуть
RESET:
   sbi   DDRB, led1   ;подключаем led1 и led2
   sbi   DDRB, led2   ;


Кста, в коде забыта предварительная установка пинов, такшта добавляем, теперь получ. так:
Код: Выделить всёРазвернуть
RESET:
   sbi   DDRB, led1   ;подключаем led1 и led2
   sbi   DDRB, led2   ;

   sbi   DDRB, ir_led   ;подключаем IR LED на выход PORTB
      
   cbi   DDRB, tsop   ;подключаем TSOP на вход PORTB
   sbi   PORTB,tsop   ;включаем "подтяжку"

   cbi   PORTB, led1   ;начальные установки выходов: гасим led1 и зажигаем led2
   sbi   PORTB, led2   ;


Осталось добавить обработку 2-го выхода в коде проверки входа TSOP.
Было:
Код: Выделить всёРазвернуть
;когда пачка импульсов выдана - проверяем, есть ли сигнал от TSOP
   
      sbis   PINB, tsop   ;если уровень на выходе TSOP низкий (т.е. сигнал есть)
      rjmp   ledon      ;то идем зажигать led1
      cbi   PORTB, led1   ;иначе гасим led1   
      rjmp   wait_next   ;и переходим к ожиданию следующей пачки

ledon:      sbi   PORTB, led1   ;гасим LED

Стало:
Код: Выделить всёРазвернуть
;когда пачка импульсов выдана - проверяем, есть ли сигнал от TSOP
   
      sbis   PINB, tsop   ;если уровень на выходе TSOP низкий (т.е. сигнал есть)
      rjmp   ledon      ;то идем зажигать led1 и гасить led2
      cbi   PORTB, led1   ;иначе гасим led1 и зажигаем led2    
      sbi   PORTB, led2   ;
      rjmp   wait_next   ;и переходим к ожиданию следующей пачки

ledon:      cbi   PORTB, led2   ;гасим led2 и зажигаем led1
      sbi   PORTB, led1

Кажись все просто? Или не? Прога занимает целых 66 байт. :)
ATtiny13 memory use summary [bytes]:
Segment Begin End Code Data Used Size Use%
---------------------------------------------------------------
[.cseg] 0x000000 0x000042 66 0 66 1024 6.4%
[.dseg] 0x000060 0x000060 0 0 0 64 0.0%
[.eseg] 0x000000 0x000000 0 0 0 64 0.0%

Assembly complete, 0 errors. 0 warnings


Общий код, убрать ".pdf", ибо файлы asm запрещены:
ir_locator.asm.pdf
(2.73 КиБ) Скачиваний: 0


Добавлено спустя 11 минут 42 секунды:
ol82 писал(а):попалась на глаза еще схема (1) http://forum.primuss3.com/viewtopic.php ... 93&start=0. Но она у меня что-то не пошла, несмотря на танцы с бубнами. Пришлось вернуться к старой схеме (2).

Кста, на первый взгляд грамотный код. Есть коррекция ошибок и код на СИ.

Re: Неправильные KY-032

ol82 » 12 окт 2016, 23:12

Dmitry__ писал(а):Кажись все просто? Или не? Прога занимает целых 66 байт. :)

Огромное спасибо! Просто-непросто, у меня не получилось, хотя типа этого пытался что-то сконструировать. Но при компиляции были ошибки. Допилю все-же платку под переменный резистор для регулировки чувствительности и опробую.
ol82 писал(а):Кста, на первый взгляд грамотный код. Есть коррекция ошибок и код на СИ.

ИК-диод моргал с заметными на глаз интервалами, но приема не было.

Re: Неправильные KY-032

linvinus » 12 окт 2016, 23:55


Re: Неправильные KY-032

ol82 » 13 окт 2016, 08:09

linvinus писал(а):а это чем не устроило?

Как-то я пропустил эти сенсоры.
С прошивкой помогли, МК пришли, сделаю сам в этот раз.
(Прям стишок получился :) )


Rambler\'s Top100 Mail.ru counter