Добрый день, уважаемые коллеги!
Пришлось мне сделать "умную" кнопку включения на ATTINY13. За основу взял проект из сети. Алгоритм такой: устройство находится в Спящем режиме, при нажатии кнопки (вывод 6 PORT PB1) и удержании ее в течение 1 секунды логическая единица появляется на выводе 5 , а затем через еще через секунду на выводе 2. При повторном нажатии на кнопку и ее удержании в течение 1 секунды на выходах появляется лог. 0 и устройство уходит в спячку. Так работает прошивка из архива (проект CVAVR)
Коллеги, прошу помочь: заменить вывод 5 (PORT PB0) на вывод 7 (PORT PB2). Т.е сначала лог.1 появляется на выводе 7, а затем на выводе 2. В остальном все выводы и алгоритм включения остается как есть. К сожалению, моих познаний в программировании недостаточно
Прошу помочь с проектом на ATTINY13
- Реклама
Re: Прошу помочь с проектом на ATTINY13
В С пока не спец, но рискну ответить, раз молчание в теме.
Попробуйте так:
строчку DDRB=0x01; заменить на
DDRB=1<<PB3|1<<PB2; PB2 и PB3 на выход.
И, далее, все PORTB.0 заменить на PORTB.2.
Попробуйте так:
строчку DDRB=0x01; заменить на
DDRB=1<<PB3|1<<PB2; PB2 и PB3 на выход.
И, далее, все PORTB.0 заменить на PORTB.2.
Re: Прошу помочь с проектом на ATTINY13
Большое спасибо.
Схема заработала, но есть одно но. К выходам 7 и 2 контроллера я подключаю светодиоды через резисторы 200 Ом. И теперь они включаются с очень малой яркостью, как будто выходной ток этих портов ограничен. Ранее такого не было, светодиоды включались с полной яркостью
Схема заработала, но есть одно но. К выходам 7 и 2 контроллера я подключаю светодиоды через резисторы 200 Ом. И теперь они включаются с очень малой яркостью, как будто выходной ток этих портов ограничен. Ранее такого не было, светодиоды включались с полной яркостью
Re: Прошу помочь с проектом на ATTINY13
Если есть осцилл - глянь что на них происходит. Может быть, программа творит там "незапланированную ШИМ".
А без осцилла заниматься МК - это как брачная ночь без невесты
А без осцилла заниматься МК - это как брачная ночь без невесты
Re: Прошу помочь с проектом на ATTINY13
Проверил осциллографом - нет ШИМа на обоих выходах. Напряжение лог.1 - 1.8 Вольт с подключенным красным светодиодом независимо от напряжения питания, если отключить светодиод, то напряжение лог 1 увеличивается до нормального значения, равного напряжению питания. Похоже что выходы работают в режиме источника тока?
- Реклама
-
veso74
- Поставщик валерьянки для Кота
- Сообщения: 1907
- Зарегистрирован: Сб май 05, 2012 20:24:52
- Откуда: KN34PC, Болгария
- Контактная информация:
Re: Прошу помочь с проектом на ATTINY13
SP634, первая догадка:включили подтягивающие резисторы вместо того, чтобы вывод стал выходом. Дайте полный код после редактирования.
Re: Прошу помочь с проектом на ATTINY13
[uquote="SP634",url="/forum/viewtopic.php?p=4591784#p4591784"]Большое спасибо.
Схема заработала, но есть одно но. К выходам 7 и 2 контроллера я подключаю светодиоды через резисторы 200 Ом. И теперь они включаются с очень малой яркостью, как будто выходной ток этих портов ограничен. Ранее такого не было, светодиоды включались с полной яркостью[/uquote]
DDR не инициализированы.. Походу дело в скобках DDRB=(1<<PB3)|(1<<PB2);
Сильно не пинать, С только осваиваю.
Можно и так попробовать: DDRB=0x0C
Схема заработала, но есть одно но. К выходам 7 и 2 контроллера я подключаю светодиоды через резисторы 200 Ом. И теперь они включаются с очень малой яркостью, как будто выходной ток этих портов ограничен. Ранее такого не было, светодиоды включались с полной яркостью[/uquote]
DDR не инициализированы.. Походу дело в скобках DDRB=(1<<PB3)|(1<<PB2);
Сильно не пинать, С только осваиваю.
Можно и так попробовать: DDRB=0x0C
Последний раз редактировалось Игорь_396 Вс июн 16, 2024 14:33:32, всего редактировалось 1 раз.
Re: Прошу помочь с проектом на ATTINY13
Похоже на то. При этом лог 0 =0,65 В. Просто светодиод не светится при таком напряжении. Лог.1 с подключенным светодиодом =1,65 В
Архив с проектом Добавлено after 3 minutes 23 seconds:
Эту строку переписал так: DDRB=1<<PORTB.3|1<<PORTB.2|1<<PORTB.0|1<<PORTB.4;
Иначе не проходила компиляция
Добавлено after 2 minutes 36 seconds:
[uquote="veso74",url="/forum/viewtopic.php?p=4591798#p4591798"]SP634, первая догадка:включили подтягивающие резисторы вместо того, чтобы вывод стал выходом. Дайте полный код после редактирования.[/uquote] очень похоже на то. Архив с проектом выложил
Добавлено after 47 minutes 47 seconds:
Заработало.
Огромное спасибо
Архив с проектом Добавлено after 3 minutes 23 seconds:
Эту строку переписал так: DDRB=1<<PORTB.3|1<<PORTB.2|1<<PORTB.0|1<<PORTB.4;
Иначе не проходила компиляция
Добавлено after 2 minutes 36 seconds:
[uquote="veso74",url="/forum/viewtopic.php?p=4591798#p4591798"]SP634, первая догадка:включили подтягивающие резисторы вместо того, чтобы вывод стал выходом. Дайте полный код после редактирования.[/uquote] очень похоже на то. Архив с проектом выложил
Добавлено after 47 minutes 47 seconds:
Попробовал.Игорь_396 писал(а):Можно и так попробовать: DDRB=0x0C
Заработало.
Огромное спасибо



