BASCOM AVR в вопросах и ответах

Обсуждаем контроллеры компании Atmel.
Ответить
Открыл глаза
Сообщения: 68
Зарегистрирован: Пт окт 25, 2013 17:13:03

Сообщение goldskif »

[uquote="kip96",url="/forum/viewtopic.php?p=3243141#p3243141"]Та всё нормально. Соль тоже нельзя жрать. Но если знаешь сколько, то можно.
На счёт таймера, то не нужен доп. Там один и тот же таймер может вызывать прерывание и по совпадению и прерыванию. Код не сильно увеличиться. Внимательно смотрите пример.

Добавлено after 7 minutes 26 seconds:
Кроме того, код можно существенно сократить, если в прерывании не сохранять все регистры, а только нужные. Сделать это очень просто. Открывайте проект в протеусе, запуск\пауза, находите кусок кода с прерыванием. включаем Дизасемблер. Увидите в начале прерывание сохранение всех регистров, в конце восстановление. В теле прерывания смотрите какие регистры используются,записываете. Остальные все удаляете из \сохранения и востановления\. Для 2313 сокращение будет существенно. Не забудьте в конфигурацию таймера добавить "nosave"
з.ы.
зачем сообщение удалили про доп таймер. Мне тоже ответ удалять?[/uquote]
Зачем удалять? Ваша информация полезна, в отличие от моих постов.
--
Все влезло, всем респект и уважуха..!
Реклама
Мудрый кот
Сообщения: 1706
Зарегистрирован: Вт янв 05, 2016 10:14:25
Откуда: поселок Мелеуз

Сообщение Novice user »

[uquote="kip96",url="/forum/viewtopic.php?p=3243141#p3243141"]...Там один и тот же таймер может вызывать прерывание и по совпадению и прерыванию. ...[/uquote]
а вот это ценная информация,спасибо!
проще говоря по прерыванию по совпадению гасим индикатор,по переполнению включаем нужный индикатор?
Реклама
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2255
Зарегистрирован: Вт апр 21, 2009 22:24:10
Откуда: Иркутск

Сообщение edm2007 »

На предыдущей странице мой пример посмотрите. Обычная работа одного таймера с двумя прерываниями.
"Слишком много людей ломаются, даже не подозревая о том, насколько близки к успеху они были в тот момент, когда упали духом". Томас Алва Эдисон
Контактная информация:
Потрогал лапой паяльник
Аватара пользователя
Сообщения: 328
Зарегистрирован: Сб июл 27, 2013 03:46:14
Откуда: Р Крым

Сообщение imon220 »

Здравствуйте.
Если не сложно может кто-то сделать простенькую прошивку на эту схему.
12 постоянно на вых транзистора Q1
При подачи 1 на P3 12в, напряжение на выходе должно упасть ну где-то до 7в и возвращаться когда на выходе P3 0
Вложения
P71128-153246(1).jpg
(56.87 КБ) 316 скачиваний
Реклама
Эиком - электронные компоненты и радиодетали
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2255
Зарегистрирован: Вт апр 21, 2009 22:24:10
Откуда: Иркутск

Сообщение edm2007 »

Здравствуйте.

А как Вы определили, что она простенькая? :tea:
"Слишком много людей ломаются, даже не подозревая о том, насколько близки к успеху они были в тот момент, когда упали духом". Томас Алва Эдисон
Контактная информация:
Реклама
akl
Друг Кота
Сообщения: 4450
Зарегистрирован: Пт мар 07, 2008 06:54:43
Откуда: Ижевск

Сообщение akl »

[uquote="imon220",url="/forum/viewtopic.php?p=3245068#p3245068"]...12 постоянно на вых транзистора Q1
При подачи 1 на P3 12в, напряжение на выходе должно упасть ну где-то до 7в и возвращаться когда на выходе P3 0[/uquote]Замкните R2 и базу транзистора перемычкой.
Реклама
Потрогал лапой паяльник
Аватара пользователя
Сообщения: 328
Зарегистрирован: Сб июл 27, 2013 03:46:14
Откуда: Р Крым

Сообщение imon220 »

Ну там вроде ничего нет прям такого сложного.
Стабилизатор и мк
Я года два назад простенькую прошивку писал на bascom. Но сейчас в использовании телефон только и уже не помню.
Если кинуть перемычку, то можно сделать когда на portb. 3 у нас 1 то на portb. 2 у нас 0
Схема должна идти на часы в машине. Чтобы индикатор тускнел при вкл габаритов
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2255
Зарегистрирован: Вт апр 21, 2009 22:24:10
Откуда: Иркутск

Сообщение edm2007 »

Ну, собственно, к тому я и клоню, что тема "вопросах и ответах". И здорово, когда человек задает вопросы, получает ответы, делает устройство и в итоге гордится собой. :)
"Слишком много людей ломаются, даже не подозревая о том, насколько близки к успеху они были в тот момент, когда упали духом". Томас Алва Эдисон
Контактная информация:
Потрогал лапой паяльник
Аватара пользователя
Сообщения: 328
Зарегистрирован: Сб июл 27, 2013 03:46:14
Откуда: Р Крым

Сообщение imon220 »

Я бы вспомнил да написал. Как бы не проблема.
Попросил из за того что есть в наличии только телефон и рабочий mac на который нельзя установить ничего. Онлайн накидал схему. Буду дома только на пару дней, явно не успею.
Просто если кому-то тяжело так и скажите
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2255
Зарегистрирован: Вт апр 21, 2009 22:24:10
Откуда: Иркутск

Сообщение edm2007 »

Наверное, все это и нужно было сразу написать. Из первого сообщения вообще мало что понятно. Я так понимаю, Вы хотите ШИМ-ить выходной транзистор для регулировки яркости лампы подсветки? При наличии 12В на входном делителе яркость не полная, а при отсутствии - лампа светит в полную яркость? И это точно нужно на контроллере?
Просто если кому-то тяжело так и скажите
Да говорите уж сразу, "в падлу". :))
"Слишком много людей ломаются, даже не подозревая о том, насколько близки к успеху они были в тот момент, когда упали духом". Томас Алва Эдисон
Контактная информация:
Потрогал лапой паяльник
Аватара пользователя
Сообщения: 328
Зарегистрирован: Сб июл 27, 2013 03:46:14
Откуда: Р Крым

Сообщение imon220 »

Да правильно. Если на делитель (контакт Р3) приходит 12в
То шим ограничено, примерно на 30% если же нет 12в то 0%
Ну да, как вы подумали. Поэтому и спросил, не впадлу)) кому-то написать. Можно и не на мк.
Просто что-то не придумал схему
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2255
Зарегистрирован: Вт апр 21, 2009 22:24:10
Откуда: Иркутск

Сообщение edm2007 »

У ATtiny13 два аппаратных канала ШИМ на выводах PB0 и PB1, что позволяет использовать возможности самого таймера для формирования ШИМ. На выводе PB2 такой возможности нет, и для формирования ШИМ необходима программная реализация.
"Слишком много людей ломаются, даже не подозревая о том, насколько близки к успеху они были в тот момент, когда упали духом". Томас Алва Эдисон
Контактная информация:
Потрогал лапой паяльник
Аватара пользователя
Сообщения: 328
Зарегистрирован: Сб июл 27, 2013 03:46:14
Откуда: Р Крым

Сообщение imon220 »

А без мк можно реализовать это как-то?
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2255
Зарегистрирован: Вт апр 21, 2009 22:24:10
Откуда: Иркутск

Сообщение edm2007 »

Аппаратная регулировка скважности в прикрепленном архиве. Без МК конечно можно, только тут тема по баскому.
Вложения
AT13_autoPWM.rar
(12.17 КБ) 260 скачиваний
"Слишком много людей ломаются, даже не подозревая о том, насколько близки к успеху они были в тот момент, когда упали духом". Томас Алва Эдисон
Контактная информация:
Потрогал лапой паяльник
Аватара пользователя
Сообщения: 328
Зарегистрирован: Сб июл 27, 2013 03:46:14
Откуда: Р Крым

Сообщение imon220 »

Да глянул! Спасибо большое)
В схеме перекинул на PB0
В конце месяца буду дома, попробую
Мудрый кот
Сообщения: 1706
Зарегистрирован: Вт янв 05, 2016 10:14:25
Откуда: поселок Мелеуз

Сообщение Novice user »

вопрос по среде bascom avr
в программе имеются много переменных,как можно посмотреть их расположение в SRAM?

разобрался,компилируем программу,нажимаем <ctrl> и "w"
Открыл глаза
Сообщения: 68
Зарегистрирован: Пт окт 25, 2013 17:13:03

Сообщение goldskif »

Я вот тут задумал еще одни часы сделать. Остались еще детали и Attiny2313. Попробовать с GPS коррекцию точного времени ловить. У кого-нибудь есть пример исходника для поковыряться? А то в инете какой-то шлак. Либо одна прошивка, либо вообще не то. И совет нужен. Там DS1307 видимо можно избежать? Может, внутреннего генератора хватит?
Держит паяльник хвостом
Аватара пользователя
Сообщения: 965
Зарегистрирован: Ср авг 26, 2009 08:24:50
Откуда: 1300км от Пупа

Сообщение kip96 »

Здесь посмотрите
Вообще там ещё есть статьи про работу GPS, лень искать
DS1307 вообще хороша только тем, что своя батарейка. Ну и программно разгружает контроллер. Но у 2313, по моему, часы просто не запустить. Надо на Мегах, у них есть асинхронный таймер, там ваще просто. Вот к примеру mk41t56 полный аналог 1307, но есть хороший бит, который позволяет настраивать точность хода часов.
Все делают ошибки, только мудрецы - новые, а дураки - старые.
Открыл глаза
Сообщения: 68
Зарегистрирован: Пт окт 25, 2013 17:13:03

Сообщение goldskif »

Здравствуйте. Это снова я. )))
Я вот тут со схемой мудрю.
Изображение
Пытаюсь для приема сигналов по 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 КБ) 666 скачиваний
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2255
Зарегистрирован: Вт апр 21, 2009 22:24:10
Откуда: Иркутск

Сообщение edm2007 »

Здравствуйте.

Необходимо сделать "слепок" состояния порта и менять по маске только то, что нужно. На деле задача не очень сложная, это в чистом виде логические операции.
"Слишком много людей ломаются, даже не подозревая о том, насколько близки к успеху они были в тот момент, когда упали духом". Томас Алва Эдисон
Контактная информация:
Ответить

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