Ассемблер (ASM) для AVR в вопросах и ответах

Обсуждаем контроллеры компании Atmel.
Ответить
Встал на лапы
Сообщения: 106
Зарегистрирован: Чт сен 10, 2015 06:59:03
Откуда: Гродно, BY

Сообщение trofim2 »

Да
Реклама
Друг Кота
Аватара пользователя
Сообщения: 7016
Зарегистрирован: Вс июл 12, 2009 19:15:29
Откуда: Ижевск

Сообщение pyzhman »

trofim2 писал(а):
akl писал(а):
Так вы изменяете алгоритм программы. У вопрошающего при появлении "1" выставляется "1" и речь идёт про реакцию на вход Reset. В ваших же предложениях сигнал передается один в один и ни слова про железо.
Docendo discimus
Контактная информация:
Реклама
akl
Друг Кота
Сообщения: 4473
Зарегистрирован: Пт мар 07, 2008 06:54:43
Откуда: Ижевск

Сообщение akl »

"...начинает работать только после того как ресет на землю замыкаешь, а затем размыкаешь"
Возможно, Вы не так прочитали. Возможно, trofim2 и я поняли вопрос не так.
Подождём ответа igor741986
Друг Кота
Аватара пользователя
Сообщения: 7016
Зарегистрирован: Вс июл 12, 2009 19:15:29
Откуда: Ижевск

Сообщение pyzhman »

+
Docendo discimus
Контактная информация:
Реклама
Эиком - электронные компоненты и радиодетали
Родился
Сообщения: 13
Зарегистрирован: Пн мар 06, 2017 15:17:48
Откуда: Башкортостан

Сообщение igor741986 »

pyzhman писал(а):Значит у вас цепь сброса криво организована/спаян.
Если пин1 заземлить до включения питания, то будет долгожданный сигнал на выходе. Но если мы его освободим, то сигнал пропадет и появится только после рессета, но стоит опять разомкнуть и сигнал пропадает. Это я выяснил), опытным путем. Но мне то надо подать на вход короткий сигнал, а на выходе должен появится постоянный, который уйдет при другом условии).
Я еще не волшебник, а только учусь)
Реклама
Держит паяльник хвостом
Сообщения: 933
Зарегистрирован: Ср апр 13, 2011 11:09:20
Откуда: Екатеринбург

Сообщение Alkul »

igor741986 писал(а):Если пин1 заземлить до включения питания, то будет долгожданный сигнал на выходе. Но если мы его освободим, то сигнал пропадет и появится только после рессета, но стоит опять разомкнуть и сигнал пропадает.
Возможно, у Вас МК постоянно ресетится (перезапускается).
Вы же спрашивали в другой теме про свою автоматизацию колодца и бака, какой смысл в новой теме начинать беседу? Думаете, что-то изменится?
Вернитесь в ту тему и дайте, наконец, то, о чем Вас там просили - ПОЛНУЮ схему устройства, фото монтажа, ну и программу, включая фьюзы.
Реклама
Друг Кота
Аватара пользователя
Сообщения: 7016
Зарегистрирован: Вс июл 12, 2009 19:15:29
Откуда: Ижевск

Сообщение pyzhman »

igor741986 писал(а):...
Если пин1 заземлить до включения питания, то будет долгожданный сигнал на выходе..
Как?! Ведь команда sbic заставит пропустить следующую за ней sbi.
Схему и весь проект сюда.
Docendo discimus
Контактная информация:
Родился
Сообщения: 13
Зарегистрирован: Пн мар 06, 2017 15:17:48
Откуда: Башкортостан

Сообщение igor741986 »

Alkul писал(а):
igor741986 писал(а):Если пин1 заземлить до включения питания, то будет долгожданный сигнал на выходе. Но если мы его освободим, то сигнал пропадет и появится только после рессета, но стоит опять разомкнуть и сигнал пропадает.
Возможно, у Вас МК постоянно ресетится (перезапускается).
Вы же спрашивали в другой теме про свою автоматизацию колодца и бака, какой смысл в новой теме начинать беседу? Думаете, что-то изменится?
Вернитесь в ту тему и дайте, наконец, то, о чем Вас там просили - ПОЛНУЮ схему устройства, фото монтажа, ну и программу, включая фьюзы.
Ничего не рессетится и не понимаю от куда вы берете все это). Там схема вам нужна, а здесь нет схемы, один контролер с ногами и все равно вам этого мало). И кода две строки, там вам время тратить не охота, а здесь и с двумя строками разобраться не можем, предлагаем какую то ерунду. Я о вашем коде:

main:
sbic PINB,1
sbi PORTD,0
sbis PINB,1
cbi PORTD,0
rjmp main

Конечно он работает, но мне не надо чтоб он включался при замыкании и выключался при размыкании. Вообще я быстрей сам дойду, как реализовать эту функцию.

Добавлено after 10 minutes 48 seconds:
Каким должен быть код, что бы нажав кратковременно на кнопку, загорелась и горела лампочка? Коснулся и свет включился. Реализация в железе не интересна. Задача сугубо теоретическая. Мы уже выяснили код, при котором можно удерживать кнопку и на это время будет гореть свет.
Я еще не волшебник, а только учусь)
Держит паяльник хвостом
Сообщения: 933
Зарегистрирован: Ср апр 13, 2011 11:09:20
Откуда: Екатеринбург

Сообщение Alkul »

igor741986 писал(а): Я о вашем коде:
main:
sbic PINB,1
sbi PORTD,0
sbis PINB,1
cbi PORTD,0
rjmp main
Это не мой код, этот код предложил trofim2
igor741986 писал(а):Там схема вам нужна, а здесь нет схемы, один контролер с ногами и все равно вам этого мало).
Один "контроллер с ногами" бывает только в протеусной симуляции. У настоящих схем есть питание, есть цепи сброса, есть блокировочные конденсаторы, есть источник тактирования и правильные фьюзы, есть (вернее, должна быть) правильно собранная схема, наконец.

Вы заметили, что не я один у Вас схему попросил? Потому, что у людей есть опыт и они знают, что кривая схемотехника или ошибочный монтаж могут сделать всю схему как неработоспособной полностью, так и "случайно" глючащей в произвольное время.

Поэтому четко и внятно ответьте на вопрос - у Вас есть схема "в железе", или все гоняется в симуляции?
igor741986 писал(а):Вообще я быстрей сам дойду, как реализовать эту функцию.
Как задаете вопрос, такой и ответ получаете. С такой манерой вести диалог Вам и вправду быстрее дойти самому.
Вам помогут в чем-то конкретном. А решать для Вас задачу со сферическим микроконтроллером в вакууме никто не станет, времени жаль.
Родился
Сообщения: 13
Зарегистрирован: Пн мар 06, 2017 15:17:48
Откуда: Башкортостан

Сообщение igor741986 »

В протеусе работает, в железе не работает, я понимаю что из за сборки бывают проблемы. Но когда лень думать, можно свалить на все что угодно). Я конечно выложу фотки и схему, как разберусь с этим сайтом. Но это никому ни чего не даст).
Я еще не волшебник, а только учусь)
Держит паяльник хвостом
Сообщения: 933
Зарегистрирован: Ср апр 13, 2011 11:09:20
Откуда: Екатеринбург

Сообщение Alkul »

igor741986 писал(а):Но когда лень думать
Для того, чтобы думать, надо исходную информацию иметь. Тут никто никому ничем не обязан. Тратить время на прогон Вашего кода в симуляции, когда проблема, возможно, совсем в ином, мало кому захочется.

А работоспособность в симуляции и неработоспособность в железе в 80% случаев означает, что с логикой программы все в порядке, а проблемы - "аппаратные". Для решения которых нужна схема, фото монтажа. Ну и фьюзы. То, что Вы выложили в основной теме, нечитаемо без микроскопа. Я даже и пытаться не стану, нафиг мне глаза портить.
Встал на лапы
Сообщения: 106
Зарегистрирован: Чт сен 10, 2015 06:59:03
Откуда: Гродно, BY

Сообщение trofim2 »

А я вообще симуляцией не пользуюсь, только железо.
Первый раз сказал Мяу!
Сообщения: 31
Зарегистрирован: Сб сен 17, 2016 18:56:30

Сообщение dimmer »

trofim2 писал(а):А я вообще симуляцией не пользуюсь, только железо.
++
Даже на макетке, без всяких конденсаторов по питанию получаешь большую правдоподобность, чем на симах.
Друг Кота
Аватара пользователя
Сообщения: 15789
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Сообщение BOB51 »

Жаль котяток...
8)
Состояние сигнала на входной линии pinx определяется внешними факторами, ежли порт настроен как входной или состоянием portx, ежли порт настроен как выход.
Посему... непосредственное использование оценки статуса pinx командой условного перехода (без принятия дополнительных мер) в принципе обречено на провал.
:wink:
Первый раз сказал Мяу!
Сообщения: 31
Зарегистрирован: Сб сен 17, 2016 18:56:30

Сообщение dimmer »

BOB51 писал(а):Жаль котяток...
8)
Состояние сигнала на входной линии pinx определяется внешними факторами, ежли порт настроен как входной или состоянием portx, ежли порт настроен как выход.
Посему... непосредственное использование оценки статуса pinx командой условного перехода (без принятия дополнительных мер) в принципе обречено на провал.
:wink:
посему? да некакого посему, если Вы осознаЁте в каком состоянии порт находится после инициализации, то никаких нежданок не будет. Если не хотите заморачиваться с инициализацией портов, или даже более того - хотите соблюсти семантику, то пользуйтесь макросом InitGPIO.
Ассемблер для того и нужен, чтобы полностью контролировать поведение контроллера (извините за тафтологию) с момента подачи питания.
Друг Кота
Аватара пользователя
Сообщения: 15789
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Сообщение BOB51 »

:)))
Первый раз сказал Мяу!
Сообщения: 31
Зарегистрирован: Сб сен 17, 2016 18:56:30

Сообщение dimmer »

ВОВ51, извините за неадекватную реакцию. Был пьян.
Встал на лапы
Сообщения: 106
Зарегистрирован: Чт сен 10, 2015 06:59:03
Откуда: Гродно, BY

Сообщение trofim2 »

Долго отходил
Первый раз сказал Мяу!
Сообщения: 31
Зарегистрирован: Сб сен 17, 2016 18:56:30

Сообщение dimmer »

Возраст, ну и стаж наверное. Что-то тяжело даётся последнее время выход в освобождённое пространство мышления.
Это не хвост, это антенна
Аватара пользователя
Сообщения: 1368
Зарегистрирован: Вс мар 28, 2010 12:52:22
Откуда: Беларусь

Сообщение dr.doc »

Подобное не прогнозируемое поведение можно также списать на банальный непропай вывода PB настроенного на вход. Когда ТС "удерживая сигнал на входе вызывает перезагрузку контроллера" изгибает плату, или еще каким либо образом прижимает ножку контроллера к печатке. Также может реагировать и вывод RESET - при замыкании вывода на плату в случае плохой пайки.
Прозвоните, наконец свои соединения и напишите об этом.
«Еще я хотел бы, чтобы наши ученые изобрели какой-то новый источник энергии, чтобы мы на коленях не ползали даже перед нашими братьями, умоляя их и выпрашивая тонну нефти или кубометр газа», — рассказал белорусский президент.
Ответить

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