Обсуждаем контроллеры компании Atmel.
Вс ноя 26, 2017 09:46:50
Та всё нормально. Соль тоже нельзя жрать. Но если знаешь сколько, то можно.
На счёт таймера, то не нужен доп. Там один и тот же таймер может вызывать прерывание и по совпадению и прерыванию. Код не сильно увеличиться. Внимательно смотрите пример.
Добавлено after 7 minutes 26 seconds:
Кроме того, код можно существенно сократить, если в прерывании не сохранять все регистры, а только нужные. Сделать это очень просто. Открывайте проект в протеусе, запуск\пауза, находите кусок кода с прерыванием. включаем Дизасемблер. Увидите в начале прерывание сохранение всех регистров, в конце восстановление. В теле прерывания смотрите какие регистры используются,записываете. Остальные все удаляете из \сохранения и востановления\. Для 2313 сокращение будет существенно. Не забудьте в конфигурацию таймера добавить "nosave"
з.ы.
зачем сообщение удалили про доп таймер. Мне тоже ответ удалять?
Зачем удалять? Ваша информация полезна, в отличие от моих постов.
--
Все влезло, всем респект и уважуха..!
Вс ноя 26, 2017 22:26:29
...Там один и тот же таймер может вызывать прерывание и по совпадению и прерыванию. ...
а вот это ценная информация,спасибо!
проще говоря по прерыванию по совпадению гасим индикатор,по переполнению включаем нужный индикатор?
Пн ноя 27, 2017 05:45:30
На предыдущей странице мой пример посмотрите. Обычная работа одного таймера с двумя прерываниями.
Вт ноя 28, 2017 14:32:03
Здравствуйте.
Если не сложно может кто-то сделать простенькую прошивку на эту схему.
12 постоянно на вых транзистора Q1
При подачи 1 на P3 12в, напряжение на выходе должно упасть ну где-то до 7в и возвращаться когда на выходе P3 0
- Вложения
-
- P71128-153246(1).jpg
- (56.87 KiB) Скачиваний: 287
Вт ноя 28, 2017 14:34:10
Здравствуйте.
А как Вы определили, что она простенькая?
Вт ноя 28, 2017 14:41:08
...12 постоянно на вых транзистора Q1
При подачи 1 на P3 12в, напряжение на выходе должно упасть ну где-то до 7в и возвращаться когда на выходе P3 0
Замкните R2 и базу транзистора перемычкой.
Вт ноя 28, 2017 14:59:28
Ну там вроде ничего нет прям такого сложного.
Стабилизатор и мк
Я года два назад простенькую прошивку писал на bascom. Но сейчас в использовании телефон только и уже не помню.
Если кинуть перемычку, то можно сделать когда на portb. 3 у нас 1 то на portb. 2 у нас 0
Схема должна идти на часы в машине. Чтобы индикатор тускнел при вкл габаритов
Вт ноя 28, 2017 15:08:34
Ну, собственно, к тому я и клоню, что тема "вопросах и ответах". И здорово, когда человек задает вопросы, получает ответы, делает устройство и в итоге гордится собой.
Вт ноя 28, 2017 15:14:37
Я бы вспомнил да написал. Как бы не проблема.
Попросил из за того что есть в наличии только телефон и рабочий mac на который нельзя установить ничего. Онлайн накидал схему. Буду дома только на пару дней, явно не успею.
Просто если кому-то тяжело так и скажите
Вт ноя 28, 2017 15:19:36
Наверное, все это и нужно было сразу написать. Из первого сообщения вообще мало что понятно. Я так понимаю, Вы хотите ШИМ-ить выходной транзистор для регулировки яркости лампы подсветки? При наличии 12В на входном делителе яркость не полная, а при отсутствии - лампа светит в полную яркость? И это точно нужно на контроллере?
Просто если кому-то тяжело так и скажите
Да говорите уж сразу, "в падлу".
Вт ноя 28, 2017 15:36:35
Да правильно. Если на делитель (контакт Р3) приходит 12в
То шим ограничено, примерно на 30% если же нет 12в то 0%
Ну да, как вы подумали. Поэтому и спросил, не впадлу)) кому-то написать. Можно и не на мк.
Просто что-то не придумал схему
Вт ноя 28, 2017 15:59:26
У ATtiny13 два аппаратных канала ШИМ на выводах PB0 и PB1, что позволяет использовать возможности самого таймера для формирования ШИМ. На выводе PB2 такой возможности нет, и для формирования ШИМ необходима программная реализация.
Вт ноя 28, 2017 16:24:58
А без мк можно реализовать это как-то?
Вт ноя 28, 2017 16:48:57
Аппаратная регулировка скважности в прикрепленном архиве. Без МК конечно можно, только тут тема по баскому.
- Вложения
-
- AT13_autoPWM.rar
- (12.17 KiB) Скачиваний: 227
Вт ноя 28, 2017 17:31:53
Да глянул! Спасибо большое)
В схеме перекинул на PB0
В конце месяца буду дома, попробую
Вт ноя 28, 2017 18:45:46
вопрос по среде bascom avr
в программе имеются много переменных,как можно посмотреть их расположение в SRAM?
разобрался,компилируем программу,нажимаем <ctrl> и "w"
Вс дек 10, 2017 00:49:49
Я вот тут задумал еще одни часы сделать. Остались еще детали и Attiny2313. Попробовать с GPS коррекцию точного времени ловить. У кого-нибудь есть пример исходника для поковыряться? А то в инете какой-то шлак. Либо одна прошивка, либо вообще не то. И совет нужен. Там DS1307 видимо можно избежать? Может, внутреннего генератора хватит?
Вс дек 10, 2017 09:25:31
Здесь посмотритеВообще там ещё есть статьи про работу GPS, лень искать
DS1307 вообще хороша только тем, что своя батарейка. Ну и программно разгружает контроллер. Но у 2313, по моему, часы просто не запустить. Надо на Мегах, у них есть асинхронный таймер, там ваще просто. Вот к примеру mk41t56 полный аналог 1307, но есть хороший бит, который позволяет настраивать точность хода часов.
Пт дек 15, 2017 17:37:18
Здравствуйте. Это снова я. )))
Я вот тут со схемой мудрю.
Пытаюсь для приема сигналов по UART освободить место. Сейчас схема обычная, на Attiny2313. PortB используется для управления анодами - 6 выводов. А PORTD - 4 выхода выдают цифры. Выводы RXD/TXD вроде свободны, но использовать я их не могу, потому что в прошивке цифры загоняются кодом
Спойлер
- Код:
Refresh: ' прерывание таймера Т0 (индикация)
Incr Count : If Count > 6 Then Count = 1 ' выбираем какой разряд сейчас включать
Portd = Lookup(i(count) , Digits) ' закидываем в порт код цифры
Select Case Count ' включаем соответствующий разряд индикатора
Case 1 : Set Dig1
Case 2 : Set Dig2
Case 3 : Set Dig3
Case 4 : Set Dig4
Case 5 : Set Dig5
Case 6 : Set Dig6
End Select
Return
--------- а тут ниже массив
Digits: ' это цифры для ИН-12
Data &B0110000 , &B0010000 , &B0001000 , &B0100000 , &B0000100 , &B0101100 , &B0101000 и так далее
причем цифры берутся из массива, который забивает все порты полностью. И вот тут у меня опыт кончился..
Можно как-нибудь все таки выводить данные массива, но при этом не трогать выводы порта TXD/RXD на PORTD? Или пытаться программный UART на PORTB возрождать?
- Вложения
-
- gps.GIF
- (27.12 KiB) Скачиваний: 587
Пт дек 15, 2017 18:07:27
Здравствуйте.
Необходимо сделать "слепок" состояния порта и менять по маске только то, что нужно. На деле задача не очень сложная, это в чистом виде логические операции.
Powered by phpBB © phpBB Group.
phpBB Mobile / SEO by Artodia.