Помогите понять проект написанный в AlgorithmBuilder

Обсуждаем контроллеры компании Atmel.
Ответить
Первый раз сказал Мяу!
Сообщения: 23
Зарегистрирован: Ср фев 23, 2022 15:40:56

Сообщение PE4ENbKA_173 »

Попал мне в руки проект с ИК датчиком приближения на attiny13.
Суть в том, что я хочу внести изменения в программу и понять принцип работы. НО, она написана не в AVR или Atmel студии, а в графическом виде при помощи Algorithm builder. Мне не понятно как это представить в классическом виде, кодом, а не рисунками в программе которая к тому же не может собрать проект воедино.
Меня в частности интересуют три части программы:
Настройка 0-го таймера, пакеты которые формируются, как принимаются пакеты.
Программу для работы можно найти тут:
Спойлерhttp://www.getchip.net/posts/sreda-prog ... m-builder/
Снимки экрана из программы:
Спойлерпервая часть
Изображение
вторая часть
Изображение
В общем я хочу сделать ИК датчик приближения с применением приемника TSOP1738 или его аналоге. Это приемник демодулятор.
Нужно передать модулированный сигнал и принять его же, как это сделать мне не до конца понятно.
В интернете я смотрел многое, вариант на ассемблере мне точно не подходит, этого ЯП не знаю, все остальные проекты просто готовый HEX файл. А тк же прошерстил всего радиокота но не нашел по ключевым словам, если ткнете мордой в миску буду благодарен.
Источники моего вдохновения:
Спойлерhttp://www.getchip.net/posts/094-datchi ... -attiny13/ тут же взял проект в билдере
https://simple-devices.ru/prj/6-automat ... -ir-sensor из полезного только схема, никаких не скомпилированных проектов.
PS
если будете открывать проект в редакторе то файл .alp является главным файлом проекта.
Вложения
Proximity_Sensor_Source.zip
проект
(12.82 КБ) 184 скачивания
Реклама
Друг Кота
Аватара пользователя
Сообщения: 20092
Зарегистрирован: Чт сен 18, 2008 12:27:21
Откуда: Столица Мира Санкт-Петербург

Сообщение Gudd-Head »

Там памяти-то всего 1 кбайт (≈500 инструкций).
Если никак с дизассемблированием, может с нуля написать?
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
Реклама
Это не хвост, это антенна
Сообщения: 1480
Зарегистрирован: Ср июн 25, 2008 15:19:44

Сообщение Demiurg »

Надо не проект понимать, а как работать с TSOP. В интернете полно примеров. Достаточно забить в поисковик. Например: так
Контактная информация:
VNS
Говорящий с текстолитом
Аватара пользователя
Сообщения: 1627
Зарегистрирован: Пт дек 10, 2021 12:48:46
Откуда: Тюмень

Сообщение VNS »

[uquote="PE4ENbKA_173",url="/forum/viewtopic.php?p=4229575#p4229575"]Суть в том, что я хочу внести изменения в программу[/uquote]
Какие, если не секрет?
Меня в частности интересуют три части программы:
Настройка 0-го таймера
Таймер0 тактируется без предделителя, на тактовой частоте МК (9,6 МГц). Режим работы Normal (WGM0 = 0). В регистр OCR0B записывается десятичное значение 150.
Прерывания по таймеру в регистре (TIMSK) настроено :
одно - по переполнению регистра TCNT0.
1.png
(13.98 КБ) 70 скачиваний
другое – по совпадению регистра сравнения OCR0B.
2.png
(15.25 КБ) 64 скачивания
пакеты которые формируются
Формирование пачек импульсов, формирование сообщений, формирование пауз между сообщениями, производится в прерывании по совпадению. Если без подробностей, то в данном прерывании производится включение светодиода, а в прерывании по переполнению этот светодиод выключается.
как принимаются пакеты
Принимаются пакеты по внешнему прерыванию (INT0) с контролем перехода с 1 в 0 от TSOP. Принятый пакет сравнивается с кодом записанным в EEPROM. Если он совпадает дважды подряд (если я не ошибся), то производится управление выводами МК (РВ0 и РВ2).
В общем я хочу сделать ИК датчик приближения с применением приемника TSOP1738 или его аналоге. Это приемник демодулятор.
А что мешает его применить в данном датчике? Думаю он вполне подойдёт для приведённой конструкции датчика.
Нужно передать модулированный сигнал и принять его же, как это сделать мне не до конца понятно.
Данный алгоритм как раз этим и занимается… по умолчанию в EEPROM загружается константа (некая последовательность импульсов). Но в алгоритме предусмотрено при желании записать свою индивидуальную посылку, на которую в дальнейшем будет отрабатывать датчик. Всё это (как это делается) описано в статье блога автора.
http://www.getchip.net/posts/094-datchi ... -attiny13/
Реклама
Эиком - электронные компоненты и радиодетали
Первый раз сказал Мяу!
Сообщения: 23
Зарегистрирован: Ср фев 23, 2022 15:40:56

Сообщение PE4ENbKA_173 »

[uquote="Gudd-Head",url="/forum/viewtopic.php?p=4229684#p4229684"]Если никак с дизассемблированием, может с нуля написать?[/uquote]
Я это и хочу сделать, мне нужно понять как отправлять пачки импульсов на таймере и потом обрабатывать входящий сигнал (прерыванием). я подозреваю, что просто запустив генерацию на 38кГц +-5% я не получу какой либо сигнал. В любом случае жду заказанные детали, что бы приступить к мучениям в живую.

Добавлено after 1 minute 49 seconds:
[uquote="Demiurg",url="/forum/viewtopic.php?p=4229704#p4229704"]Надо не проект понимать, а как работать с TSOP. В интернете полно примеров. Достаточно забить в поисковик. Например: так[/uquote]
спасибо за направление. но смогу ли я одновременно и передавать и принимать тот же сигнал? Свет он быстрый, отражаться миллисекунду не будет, а практически сразу приходить.

Добавлено after 8 minutes 42 seconds:
[uquote="VNS",url="/forum/viewtopic.php?p=4229771#p4229771"][uquote="PE4ENbKA_173",url="/forum/viewtopic.php?p=4229575#p4229575"]Суть в том, что я хочу внести изменения в программу[/uquote]
Какие, если не секрет?[/uquote]
я хочу избавиться от триггера автора, уменьшить время срабатывания, добавить свои индикаторы выхода. и в целом понять как написать эту программу. ваше объяснение очень подробно и поможет мне добиться результата. спасибо.
слегка торможу, поскольку до этого использовал таймеры атмеги8 максимум для 7seg индикаторов и генерации PWM различных конфигураций.
PS смог управлять адресной LED лентой с написанным собой для нее "драйвером". На атмега 8, без ардуиновских библиотек. Там скучно, 2 клика и все работает.
Реклама
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18675
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

PE4ENbKA_173 писал(а):я подозреваю, что просто запустив генерацию на 38кГц +-5% я не получу какой либо сигнал.
почему не получите? получите непрерывный сигнал :) вам нужно его промодулировать, а это делается включением и выключением таймера. длительность включенного и выключенного состояния можно отсчитывать как самим таймером (или другим), так и "тупыми" задержками - для сигналов ДУ и такой вариант приемлем.

подробности о об одном из вариантов формирования сигнала IR-управления можете посмотреть по моему исходнику (Си) из статьи https://simple-devices.ru/prj/9-electr/ ... te-control

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

Мой уютный бложик... заходите!
Контактная информация:
Реклама
Первый раз сказал Мяу!
Сообщения: 23
Зарегистрирован: Ср фев 23, 2022 15:40:56

Сообщение PE4ENbKA_173 »

[uquote="ARV",url="/forum/viewtopic.php?p=4229936#p4229936"][quote="PE4ENbKA_173"]длительность включенного и выключенного состояния можно отсчитывать как самим таймером (или другим), так и "тупыми" задержками - для сигналов ДУ и такой вариант приемлем.[/uquote]
только я на аттини13 делаю, там всего 1 таймер как я понял. сильно не разгуляться.
Друг Кота
Аватара пользователя
Сообщения: 7077
Зарегистрирован: Пт ноя 11, 2016 05:48:09
Откуда: Сердце Пармы

Сообщение Ivanoff-iv »

советую изучить (хоть немного) АлгоритмБилдер (это не сложно и если что - русская справка вызывается по F1) если не работали с ассемблером - скорее всего узнаете про АВР много нового (как и я в свое время... только мне проект позабористей попался, с диспетчером задач и с чтением флешек под тини2313, ничего - за неделю одолел (в основном сложности возникали как-раз с проектом, а не с АБ, который оказался интуитивно понятен) и внес необходимые мне правки, теперь часто сам к АБ прибегаю на проектах под тини)
[uquote="PE4ENbKA_173",url="/forum/viewtopic.php?p=4229974#p4229974"]только я на аттини13 делаю, там всего 1 таймер как я понял. сильно не разгуляться.[/uquote]так и 1 таймер можно использовать сразу в нескольких целях - и для генерации импульсов и для отсчета времени...
Для тех, кто не учил магию мир полон физики :)
Безграмотно вопрошающим про силовую или высоковольтную электронику я не отвечаю, а то ещё посадят за участие в (само)убиении оболтуса...
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18675
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

PE4ENbKA_173 писал(а):только я на аттини13 делаю, там всего 1 таймер как я понял
можно подумать, я вам ссылку дал не на проект с attiny13...
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Контактная информация:
VNS
Говорящий с текстолитом
Аватара пользователя
Сообщения: 1627
Зарегистрирован: Пт дек 10, 2021 12:48:46
Откуда: Тюмень

Сообщение VNS »

[uquote="PE4ENbKA_173",url="/forum/viewtopic.php?p=4229923#p4229923"]я хочу избавиться от триггера автора,[/uquote]
Ну это просто, закомментировать управление данным выводом и всё.
уменьшить время срабатывания,
Тут не совсем понял.
1 Задержка на срабатывание?
2 Или сигнал удержания срабатывания?
Если первое, то там и так всё на минимуме (как я полагаю)… это некий фильтр от ложных срабатываний, некая защита для надёжной работы…
Если второе, то выход статус работает как индикатор – если датчик видит препятствие, то светодиод светится, как только перестал уверенно видеть, светодиод погас. Что тут ещё можно придумать?
добавить свои индикаторы выхода.
По подробнее...
но смогу ли я одновременно и передавать и принимать тот же сигнал? Свет он быстрый, отражаться миллисекунду не будет, а практически сразу приходить.
Тут всё просто… работа алгоритма организована в прерываниях… в основном цикле алгоритма нет – просто ожидание очередного прерывания.
Вот как пример из этого алгоритма:
В прерывании по сравнению включаем ИК светодиод, а в прерывании по переполнению отключаем его. Импульсы работы светодиода видит TSOP и прижимает свой выход к земле. А внешнее прерывание отслеживает этот сигал и реагирует на него… Конечно там ещё имеется куча нюансов, которые необходимо анализировать, но суть примерно такая.
Первый раз сказал Мяу!
Сообщения: 23
Зарегистрирован: Ср фев 23, 2022 15:40:56

Сообщение PE4ENbKA_173 »

[uquote="VNS",url="/forum/viewtopic.php?p=4230023#p4230023"]
уменьшить время срабатывания,
Тут не совсем понял.
1 Задержка на срабатывание?
2 Или сигнал удержания срабатывания?
добавить свои индикаторы выхода.
По подробнее...

Про задержки срабатывания/отпускания да все верно вы поняли, просто защита от помех.

Индикаторы - срабатывание детектора и отдельно статус реле. С реле понятно, "параллельно" нему светодиод сделать со своей землей.
А срабатывание детекторв другой вопрос, т.е. некоторая задержка до включения реле, что бы можно было понимать что препятствие есть но не включать сразу же реле в это время. как это сделать без второго счетчика который бы тики считал я не очень понимаю. Но это не столь важная фича. Важнее что бы более менее точно срабатывал на объект.
Буду собирать и тогда уже на реальном железе посмотрю осциллографом как и что работает. Инфы у меня сейчас очень много, сижу перевариваю.
VNS
Говорящий с текстолитом
Аватара пользователя
Сообщения: 1627
Зарегистрирован: Пт дек 10, 2021 12:48:46
Откуда: Тюмень

Сообщение VNS »

[uquote="PE4ENbKA_173",url="/forum/viewtopic.php?p=4230031#p4230031"]Буду собирать и тогда уже на реальном железе посмотрю осциллографом как и что работает.[/uquote]
То есть на макетке вы датчик не собирали и как он работает по факту вы не видели? А откуда тогда претензии к задержке? :) В начале необходимо проверить в железе, а уже затем принимать решения, что необходимо добавить, а что оставить как есть. Я его в своё время проверял в железе данный алгоритм, претензий не возникало. :)
Друг Кота
Аватара пользователя
Сообщения: 20092
Зарегистрирован: Чт сен 18, 2008 12:27:21
Откуда: Столица Мира Санкт-Петербург

Сообщение Gudd-Head »

[uquote="ARV",url="/forum/viewtopic.php?p=4229936#p4229936"]из статьи https://simple-devices.ru/prj/9-electr/ ... te-control[/uquote]
У меня Каспер режет попытку перейти на сайт.
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
VNS
Говорящий с текстолитом
Аватара пользователя
Сообщения: 1627
Зарегистрирован: Пт дек 10, 2021 12:48:46
Откуда: Тюмень

Сообщение VNS »

NOD32 так же реагирует… пришлось отказаться от входа на сайт.
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18675
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

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

Мой уютный бложик... заходите!
Контактная информация:
Первый раз сказал Мяу!
Сообщения: 23
Зарегистрирован: Ср фев 23, 2022 15:40:56

Сообщение PE4ENbKA_173 »

[uquote="VNS",url="/forum/viewtopic.php?p=4230059#p4230059"][uquote="PE4ENbKA_173",url="/forum/viewtopic.php?p=4230031#p4230031"]Буду собирать и тогда уже на реальном железе посмотрю осциллографом как и что работает.[/uquote]
То есть на макетке вы датчик не собирали и как он работает по факту вы не видели? А откуда тогда претензии к задержке? :) В начале необходимо проверить в железе, а уже затем принимать решения, что необходимо добавить, а что оставить как есть. Я его в своё время проверял в железе данный алгоритм, претензий не возникало. :)[/uquote]
Смотрел в видео на канале автора. Макетка едет, скоро буду на ней реальные тесты делать.

Добавлено after 1 minute 12 seconds:
[uquote="ARV",url="/forum/viewtopic.php?p=4230165#p4230165"]ну вы меня убиваете - хот бы прочтите, что ваши антивирус пишут: обращение https, но сертификат недействителен, т.к. из-за санкций все бесплатные сертификаты, которые раздавали всем желающим, перестали работать, а на платные, судя по всему, денег у хозяина сайта нет... вот оно и пишет, что соединение не шифрованное, хотя как бы должно быть...
не надо бояться, ничего страшного там нет[/uquote]
Товарищи, тут не проблемы антивируса решаются. У меня вообще стоит аваст и ему плевать на вирусы.
Друг Кота
Сообщения: 19495
Зарегистрирован: Чт фев 20, 2014 18:57:55

Сообщение Morroc »

[uquote="PE4ENbKA_173",url="/forum/viewtopic.php?p=4230243#p4230243"]У меня вообще стоит аваст и ему плевать на вирусы.[/uquote]
Как то... неоднозначно. Может снести его раз так ? :))

Может стоит реализовать на более жирном мк, а потом уже оптимизировать если прям очень надо в 13 ?
"Вся военная пропаганда, все крики, ложь и ненависть исходят от людей, которые на эту войну не пойдут !" / Джордж Оруэлл /
"Война - это,когда за интересы других,гибнут совершенно безвинные люди." / Уинстон Черчилль /
Первый раз сказал Мяу!
Сообщения: 23
Зарегистрирован: Ср фев 23, 2022 15:40:56

Сообщение PE4ENbKA_173 »

[uquote="Morroc",url="/forum/viewtopic.php?p=4230421#p4230421"][uquote="PE4ENbKA_173",url="/forum/viewtopic.php?p=4230243#p4230243"]У меня вообще стоит аваст и ему плевать на вирусы.[/uquote]
Как то... неоднозначно. Может снести его раз так ? :))

Может стоит реализовать на более жирном мк, а потом уже оптимизировать если прям очень надо в 13 ?[/uquote]
Это устройство будет выполнять сугубо одну задачу, нет смысла брать что то более крутое. это как в деревню на порше ездить.
Первый раз сказал Мяу!
Сообщения: 23
Зарегистрирован: Ср фев 23, 2022 15:40:56

Сообщение PE4ENbKA_173 »

[uquote="VNS",url="/forum/viewtopic.php?p=4230059#p4230059"]То есть на макетке вы датчик не собирали и как он работает по факту вы не видели?[/uquote]
Теперь у меня есть живой образец!
Изображение
Проверил что схема правда работает. Осталось добиться работы с сигналом своим.
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18675
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

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

Мой уютный бложик... заходите!
Контактная информация:
Ответить

Вернуться в «AVR»