Например TDA7294

Форум РадиоКот • Просмотр темы - Программирование ATtiny13
Форум РадиоКот
Здесь можно немножко помяукать :)



Текущее время: Ср сен 30, 2020 11:09:02

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 124 ]    , , , 4, , ,  
Автор Сообщение
Не в сети
 Заголовок сообщения: Re: Программирование ATtiny13
СообщениеДобавлено: Чт дек 12, 2019 00:29:32 
Поставщик валерьянки для Кота
Аватар пользователя

Карма: 64
Рейтинг сообщений: 857
Зарегистрирован: Пт мар 29, 2019 10:45:58
Сообщений: 2099
Откуда: Тюмень
Рейтинг сообщения: 0
для тини13, у меня две кнопки пин3 и пин4 и один выход порт 0. Нужно при нажатом пин3 горит светодиод на порту0 а при отпускании гаснет, следующий алгоритм при нажатом пине3 нажимаем пин4 и светодиод на порту 0 через 20сек должен погаснуть

Вот прошивка по твоему алгоритму... МК тактируется на заводских установках (фьюзы прошивать не нужно).
Вложение:
ATiny13.hex [1.02 KiB]
Скачиваний: 146


Добавлено after 15 minutes 27 seconds:
У меня такая проблема. Я хочу на тиньке 13 (сабж) сделать небольшую программулю, наподобии той что хотел ТС, но даже проще.

Т.е нажимаю на кнопку, загорается диод, нажимаю еще раз - диод гаснет. Все.

Для тини13, кнопка на РВ3, светик на РВ0… с фьзами как и в предыдущем варианте – не прошивать.
Вложение:
ATiny13_V2.hex [598 байт]
Скачиваний: 136

_________________
Профессия нужна человеку, чтобы заниматься любимым делом, применять свои таланты и знания, приносить пользу другим людям.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Программирование ATtiny13
СообщениеДобавлено: Чт дек 12, 2019 01:23:18 
Друг Кота

Карма: -9
Рейтинг сообщений: -186
Зарегистрирован: Вт мар 13, 2012 12:16:13
Сообщений: 3885
Откуда: Россия
Рейтинг сообщения: 0
olegue писал(а):
В общих чертах, что такое протокол?

В общих чертах... слишком большое понятие... )) Протокол - это некое соглашение.
Конкретно протокол передачи данных — набор соглашений интерфейса логического уровня, которые определяют обмен данными между различными программами - https://ru.wikipedia.org/wiki/Протокол
NStorm писал(а):
Банально функции написать для отправки бита и пакета... Таймеры освойте... попробуйте на _аппаратном_ ШИМ...

Какие ещё функции... ШИМ... и т.д.
Это я специально для olegue написал, который ещё не до конца разобрался как вообще работает порт в МК.
olegue писал(а):
это мой уровень - это 100% попадание.

NStorm писал(а):
А вот принять сложнее будет. Надо будет выделить сигнал из мусора.

Вообще не проблема))
NStorm писал(а):
А еще нужна какая-то последовательность, для отделения данных от мусора.

Не нужна. В радиоэфире нет мусора. В радиоэфире есть шум))
NStorm писал(а):
Можно ИК-протокол какой-нибудь за основу взять.

Нельзя. Точнее можно, но будет работать через жопу.))
Ни один ИК-протокол не соответствует требованиям передачи по радиоканалу.
olegue писал(а):
не могу дать профессиональную оценку как NStorm

Эта типа шутка такая ? )) Да, смешно))
olegue писал(а):
получаю сигнал, измеряю длительность,
если длительность соответствует, запоминаю в переменную
получаю слещущий измеряю длительность....

Всё верно.
olegue писал(а):
а потом сравниваю с тем, кодом который должен быть.

Не потом, а сразу. Потом поздно будет))

1-получаю сигнал, измеряю длительность импульса: Если длительность соответствует, прибавляю в переменную +1. Если не соответствует, записываем в переменную 0 и переходим к пункту 1. Начинаем всё с начала))
2-получаю сигнал, измеряю длительность импульса: Если длительность соответствует, прибавляю в переменную +1. Если не соответствует, записываем в переменную 0 и переходим к пункту 1. Начинаем всё с начала))
...
...
и т.д.
...
...
когда в переменной будет число равное количеству "правильных" импульсов, выполняем команду (включаем реле) записываем в переменную 0 и переходим к пункту 1. Начинаем всё с начала))

P.S. Программа работает в цикле. Анализирует каждый входящий импульс.
Типа поточный алгоритм - https://ru.wikipedia.org/wiki/Поточный_алгоритм
Вложение:
код.png [42.12 KiB]
Скачиваний: 182

Вложение:
код ошибка.png [34.57 KiB]
Скачиваний: 201

Поправка)) В начале пакета нужна преамбула. Типа 101010101... Нафига ? А чтоб тинька сбросила переменную в 0 и перешла к пункту 1. В начало. А то ещё застрянет посередине цикла... и пропустит нужный пакет)) Ну или како-нибудь спец символ.
Только это не разделитель данных. У нас данных нет. Это составная часть пакета. Хотя нет. Это скорее заголовок пакета. Так будет правильней)) :roll:

всё)) :tea:

короче... мы расписали работу обычного цифрового радиомодуля)) ничего нового мы не изобрели)) :)))


Вернуться наверх
 
JLCPCB, всего $2 за прототип печатной платы! Цвет - любой!

Отличное качество, подтвержденное более чем 600,000 пользователей! Более 10,000 заказов в день.

Зарегистрируйтесь и получите два купона по 5$ каждый:https://jlcpcb.com/quote

Не в сети
 Заголовок сообщения: Re: Программирование ATtiny13
СообщениеДобавлено: Чт дек 12, 2019 10:49:02 
Поставщик валерьянки для Кота
Аватар пользователя

Карма: 13
Рейтинг сообщений: 57
Зарегистрирован: Сб май 21, 2016 11:04:52
Сообщений: 2105
Откуда: Беларусь
Рейтинг сообщения: 0
Буду пробовать. Счас нужно понять как посчитать длительность входящего импульса
Как раз думал заняться таймерами на тиньке. Вот с прицелом на это и буду их рассматривать.

Добавлено after 3 minutes 36 seconds:
NStorm,

Цитата:
olegue, ну вот, например: https://cxem.net/mc/mc315.php


отличный пример. Спасибо. Я то гуглил гуглил.... ничгео подходящего не нашлось.


Вернуться наверх
 
PCBWay - всего $5 за 10 печатных плат, первый заказ для новых клиентов БЕСПЛАТЕН

Сборка печатных плат от $30 + БЕСПЛАТНАЯ доставка по всему миру + трафарет

Онлайн просмотровщик Gerber-файлов от PCBWay + Шестое юбилейное мероприятие в процессе
Не в сети
 Заголовок сообщения: Re: Программирование ATtiny13
СообщениеДобавлено: Чт дек 12, 2019 11:20:47 
Электрический кот

Карма: 3
Рейтинг сообщений: 261
Зарегистрирован: Ср июл 17, 2013 13:55:57
Сообщений: 1031
Рейтинг сообщения: 0
Цитата:
Нельзя. Точнее можно, но будет работать через жопу.))
Ни один ИК-протокол не соответствует требованиям передачи по радиоканалу.

Я не говорил 1 в 1 взять. Но ту же самую идею с преамбулой и коцном передачи можно взять.

Цитата:
Какие ещё функции... ШИМ... и т.д.
Это я специально для olegue написал, который ещё не до конца разобрался как вообще работает порт в МК.

И поэтому советовать как писать НЕ надо? Ардуино-стайл повторяющихся blink-delay? Надо сразу учиться нормально делать, а не через одно место. Функции элементарно освоить, они уже были тут местами в теме.
Код:
void send_bit(char in) {
  PORTB.1=1;
  delay_ms(in ? 1 : 2);
  PORTB.1=0;
  delay_ms(in ? 1 : 2);
}

Если уж CVAVR. И простыня уже в разы меньше. А если уж send_byte/send_packet дальше дописать, то и вообще нормальный вид будет.


Вернуться наверх
 
Драйверы MOSFET/IGBT Infineon – силой нужно управлять!

Специалисты Infineon усовершенствовали традиционные кремниевые MOSFET и IGBT и выпустили компоненты на базе принципиально иных материалов – нитрида галлия и карбида кремния. Мы создали подборку полезных материалов, чтобы вы разобрались во всех тонкостях и стали экспертом по управлению силовыми приборами нового поколения CoolMOS, CoolGaN, CoolSiC!

Подробнее>>
Не в сети
 Заголовок сообщения: Re: Программирование ATtiny13
СообщениеДобавлено: Чт дек 12, 2019 15:01:52 
Друг Кота

Карма: -9
Рейтинг сообщений: -186
Зарегистрирован: Вт мар 13, 2012 12:16:13
Сообщений: 3885
Откуда: Россия
Рейтинг сообщения: 0
NStorm писал(а):
Но ту же самую идею с преамбулой и коцном передачи можно взять.

ну тогда просто взять из даташита любого радиомодуля))
Вложение:
1.jpg [20.72 KiB]
Скачиваний: 141

А если уж send_byte/send_packet дальше дописать, то и вообще нормальный вид будет.

Вид будет... а работать плохо будет)) Будет куча функций... функции выполняются за разное количество тактов процессора, в зависимости от выполнений условий... и т.д.
А для передачи по радио в идеале нужно чёткий сигнал - постоянная длительность и пауза между импульсами, с высокой точностью.
Это короче придётся ломать себе голову и считать такты процессора... писать на асме... добавлять всякие NOP... и т.д.

Пипец... нафиг оно надо)) :)))
Для таких задач есть аппаратный ШИМ. Который работает от кварца и не зависит от тактов процессора. На выходе имеем сигнал с абсолютной точностью (постоянная длительность и пауза между импульсами).


Вернуться наверх
 
Снижена цена на DC/DC и AC/DC преобразователи Mornsun в Компэл!

Хорошие новости для покупателей источников питания! Компэл снизил цены на всю продукцию Mornsun. В ассортименте – как широко известные и популярные позиции, так и новинки. Доступны AC/DC, неизолированные DC/DC-преобразователи или импульсные стабилизаторы (семейство K78/R3), изолированные DC/DC, и новейшее поколение R4.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: Программирование ATtiny13
СообщениеДобавлено: Чт дек 12, 2019 17:31:29 
Электрический кот

Карма: 3
Рейтинг сообщений: 261
Зарегистрирован: Ср июл 17, 2013 13:55:57
Сообщений: 1031
Рейтинг сообщения: 0
Бред какой-то. Функции за разное количество тактов... а delay_ms при этом используем. Сначала давай ногодрый простыней, какой там ШИМ аппаратный! А теперь функции говно, потому что ногодрыг, надо только аппаратный ШИМ. Где логика?


Вернуться наверх
 


Не в сети
 Заголовок сообщения: Re: Программирование ATtiny13
СообщениеДобавлено: Пн дек 16, 2019 14:37:56 
Поставщик валерьянки для Кота
Аватар пользователя

Карма: 13
Рейтинг сообщений: 57
Зарегистрирован: Сб май 21, 2016 11:04:52
Сообщений: 2105
Откуда: Беларусь
Рейтинг сообщения: 0
У меня по работе с портами есть вопрос.

Вот есть кнопка настроенная на прерывание, по нажатию которой включается (инвертируется ) светодиод.

А если я вместо кнопки подам сигнал с генератора на к155ла3 , будет ли светодиод мигать реагируя на импульсы генератора?
Если я нажимаю на кнопку то уровень на этой ножке меняется с высокого на низкий

А если подам с генератора, то на ногу придет либо высокий, либо его отсутсвие (высокого). Будет ли отсутсвие выского уровня расценено Тинькой как низкий?


Вернуться наверх
 


Не в сети
 Заголовок сообщения: Re: Программирование ATtiny13
СообщениеДобавлено: Пн дек 16, 2019 14:49:35 
Поставщик валерьянки для Кота
Аватар пользователя

Карма: 64
Рейтинг сообщений: 857
Зарегистрирован: Пт мар 29, 2019 10:45:58
Сообщений: 2099
Откуда: Тюмень
Рейтинг сообщения: 0
Цитата:
А если подам с генератора, то на ногу придет либо высокий, либо его отсутсвие (высокого). Будет ли отсутсвие выского уровня расценено Тинькой как низкий?

Выход у 155ЛА3 не может формировать Z-состояние… на выходе или лог 1, или лог 0. А значит МК будет реагировать на выход ЛА3 (генератор) как и на кнопку.

PS. Зачем реализовывать генератор на дополнительной микросхеме, когда МК и сам может формировать данный сигнал «генератора»? :dont_know:

_________________
Профессия нужна человеку, чтобы заниматься любимым делом, применять свои таланты и знания, приносить пользу другим людям.


Вернуться наверх
 
Бытовой пирометр АКИП-9312 – просто удобно!

Диапазон 35 °С ...42°С (температура тела) погрешность 0,3 °С
Диапазон 0 °С ...100°С (бытовая сфера) погрешность 1,0 °С
Не в сети
 Заголовок сообщения: Re: Программирование ATtiny13
СообщениеДобавлено: Пн дек 16, 2019 15:54:57 
Поставщик валерьянки для Кота
Аватар пользователя

Карма: 13
Рейтинг сообщений: 57
Зарегистрирован: Сб май 21, 2016 11:04:52
Сообщений: 2105
Откуда: Беларусь
Рейтинг сообщения: 0
olegue писал(а):
Выход у 155ЛА3 не может формировать Z-состояние… на выходе или лог 1, или лог 0.


с вашей подачи почитал немножко про z состояние, но z состояние можно расспатривать как обрыв, т.е не включенную кнопку. Не понял для чего это здесь. Поясните.

Самсусамыч писал(а):
Зачем реализовывать генератор на дополнительной микросхеме, когда МК и сам может формировать данный сигнал «генератора»?


да, вопрос из рубрики, "А Что будет если...."

а еще подумал, где взять импульсы, что бы их например посчитать потом


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Программирование ATtiny13
СообщениеДобавлено: Пн дек 16, 2019 15:59:46 
Электрический кот

Карма: 3
Рейтинг сообщений: 261
Зарегистрирован: Ср июл 17, 2013 13:55:57
Сообщений: 1031
Рейтинг сообщения: 0
Ну кнопка и есть "обрыв", пока она не нажата. Подтяжка к питанию или к земле - это уже не часть кнопки.
А тут при том, что если "нет Z-состояния", то нет и "отсутствия высокого уровня". Когда на выходе 0 - это низкий уровень, к земле притягивается вывод. А кнопка в воздухе болтается в отличии от. Поэтому кнопку со стороны МК к + или - питания подтягивают, чтобы от наводок не было шума на входе.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Программирование ATtiny13
СообщениеДобавлено: Пн дек 16, 2019 16:43:28 
Поставщик валерьянки для Кота
Аватар пользователя

Карма: 13
Рейтинг сообщений: 57
Зарегистрирован: Сб май 21, 2016 11:04:52
Сообщений: 2105
Откуда: Беларусь
Рейтинг сообщения: 0
Смоделировал в протеусе к155ла3 в режиме генератора и Тинька с кнопкой в режиме выключения/влючения. Работает эта связка как тригер -делитель на 2.

Добавлено after 8 minutes 53 seconds:
счас хочу импульсы посчитать.

Добавлено after 1 minute 37 seconds:
без привязки по времени, не частоту.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Программирование ATtiny13
СообщениеДобавлено: Пн дек 16, 2019 16:56:19 
Поставщик валерьянки для Кота
Аватар пользователя

Карма: 64
Рейтинг сообщений: 857
Зарегистрирован: Пт мар 29, 2019 10:45:58
Сообщений: 2099
Откуда: Тюмень
Рейтинг сообщения: 0
Поясните.

Вывод порта МК сконфигурированный на вход (далее просто вход) не должен висеть в воздухе. Иначе он будет ловить любые наводки… вход в зависимости от требований необходимо подтянуть через резистор, или к общей шине GND, или к плюсу питания. К общей шине вход можно подтянуть только внешним резистором, а вот к плюсу питания, можно подтянуть как внешним, так и внутренним резистором (на выбор разработчика)… так вот в твоём случае (для кнопки), вход подтянут к плюсу питания и если кнопка не подсоединена или не нажата (что для входа МК одно и тоже), то МК на это не будет и реагировать.
Что касается генератора на 155ЛА3… на выходе логического элемента 2И-НЕ всегда присутствует логический сигнал, или 0, или 1 – другого не дано. Таким образом твоё предположение, что на вход МК от генератора будет приходить «то на ногу придет либо высокий, либо его отсутсвие (высокого)» звучит не корректно, так как на вход МК от генератора на ЛА3 будет приходить периодически 1 и 0. Это говорит о том, что алгоритм будет отрабатываться на МК корректно – светодиод будет мигать.

_________________
Профессия нужна человеку, чтобы заниматься любимым делом, применять свои таланты и знания, приносить пользу другим людям.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Программирование ATtiny13
СообщениеДобавлено: Пн дек 16, 2019 17:11:55 
Электрический кот

Карма: 3
Рейтинг сообщений: 261
Зарегистрирован: Ср июл 17, 2013 13:55:57
Сообщений: 1031
Рейтинг сообщения: 1
Цитата:
счас хочу импульсы посчитать.

Добавлено after 1 minute 37 seconds:
без привязки по времени, не частоту.

Самое простое - программно в прерывании увеличивать некую переменную.
Можно аппаратно, заведя сигнал на ногу T0 включить таймер на внешний клок и тогда МК аппаратно будет увеличивать регистр TMR0 на один каждый фронт.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Программирование ATtiny13
СообщениеДобавлено: Пн дек 16, 2019 17:17:03 
Поставщик валерьянки для Кота
Аватар пользователя

Карма: 64
Рейтинг сообщений: 857
Зарегистрирован: Пт мар 29, 2019 10:45:58
Сообщений: 2099
Откуда: Тюмень
Рейтинг сообщения: 1
Можно аппаратно, заведя сигнал на ногу T0 включить таймер на внешний клок и тогда МК аппаратно

У тини13 нет внешнего входа Т0. Так что не получится реализовать данный совет.
Вложение:
тини13.png [23.24 KiB]
Скачиваний: 141

_________________
Профессия нужна человеку, чтобы заниматься любимым делом, применять свои таланты и знания, приносить пользу другим людям.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Программирование ATtiny13
СообщениеДобавлено: Пн дек 16, 2019 18:35:23 
Электрический кот

Карма: 3
Рейтинг сообщений: 261
Зарегистрирован: Ср июл 17, 2013 13:55:57
Сообщений: 1031
Рейтинг сообщения: 4
Самсусамыч, есть. На вашем скрине даже. Пин 7 смотрите. И в ДШ прекрасно описан его режим работы по спаду или подъему.

Добавлено after 14 minutes 43 seconds:
Чтобы включить этот режим, надо ногу PB2 (пин 7) переключить на вход и сделать TCCR0B = (1 << CS2) | (1 << CS1) | (1 << CS0);
Это включит режим тиканья таймера по сигналу на PB2 (T0). После этого регистр TCNT0 будет увеличиваться каждый восходящий фронт. На счет переполнения его после 255 сами подумайте )


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Программирование ATtiny13
СообщениеДобавлено: Пн дек 16, 2019 18:52:37 
Поставщик валерьянки для Кота
Аватар пользователя

Карма: 64
Рейтинг сообщений: 857
Зарегистрирован: Пт мар 29, 2019 10:45:58
Сообщений: 2099
Откуда: Тюмень
Рейтинг сообщения: 1
Самсусамыч, есть. На вашем скрине даже. Пин 7 смотрите.

Да, точно есть… :beer: похоже слепой стал – не заметил, а в даташит не полез… каюсь. :oops:

_________________
Профессия нужна человеку, чтобы заниматься любимым делом, применять свои таланты и знания, приносить пользу другим людям.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Программирование ATtiny13
СообщениеДобавлено: Пн дек 16, 2019 20:06:25 
Друг Кота

Карма: -9
Рейтинг сообщений: -186
Зарегистрирован: Вт мар 13, 2012 12:16:13
Сообщений: 3885
Откуда: Россия
Рейтинг сообщения: 1
olegue писал(а):
А если подам с генератора, то на ногу придет либо высокий, либо его отсутсвие (высокого). Будет ли отсутсвие выского уровня расценено Тинькой как низкий?

Откройте схему к155ла3
Вложение:
1-15.gif [8.09 KiB]
Скачиваний: 145

У к155ла3 на выходе два транзистора (верхний и нижний).
-Если верхний открыт , то на выходе высокий уровень.
-Если нижний открыт , то на выходе низкий уровень уровень.

Вывод: на ноге к155ла3 будет или высокий или низкий уровень. Другого не дано))
olegue писал(а):
почитал немножко про z состояние, но z состояние можно расспатривать как обрыв...

В z-состоянии сигнал поступает на затвор полевого транзистор (обычный полевой транзистор с изолированным затвором).
Поэтому входное сопротивление в z-состоянии более 1 МОм (точно не мерил).
А ещё там есть подтягивающий резистор ~33 кОм , который подключается к плюсу питания...
Смотрите и изучайте даташиты))
Вложение:
МК.jpg [152.75 KiB]
Скачиваний: 137

olegue писал(а):
счас хочу импульсы посчитать.

Посчитать к155ла3 не проблема. Можно любым удобным способом)) Через таймер... Через прерывание... как угодно.

P.S. Только не вздумайте подключать счётный таймер к своему приёмнику.)) На выходе приёмника куча помех...
Если надо посчитать импульсы с приёмника , то это делается по другому.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Программирование ATtiny13
СообщениеДобавлено: Пн дек 16, 2019 22:53:08 
Поставщик валерьянки для Кота
Аватар пользователя

Карма: 13
Рейтинг сообщений: 57
Зарегистрирован: Сб май 21, 2016 11:04:52
Сообщений: 2105
Откуда: Беларусь
Рейтинг сообщения: 0
ок, спасибо всем за ответы.

двигаюсь дальше. Изучаю счетчик, и , опять овраги.

Код:
#include <inttypes.h>
#include <avr/io.h>
#include <avr/interrupt.h>
#include <avr/sleep.h>
#include <util/delay.h>


interrupt [TIM0_COMPA] void timer0_compa_isr(void)    {
     TCNT0=0x00;
       
       }

void main(void)
 {
   
 
   
    DDRB=0xFF;
    PORTB=0b00000001;
   
    TCCR0B=0x03;   //Счетный режим таймера с часторой....
    OCR0A=0xF0;    // Заданное число сравления
    TIMSK0=0x04;   //Разрешаем выполнение прерывание по совпадению в OCR0A
   
    sei();
   
   
   
    //PORTB|=(1<<PORTB4);
   // Write your code here
   while (1)
   {
     
   
     


и вот ошибки , ругается на функциию interrupt...

Код:
avr-gcc.exe -Wall -gdwarf-2 -fsigned-char -MD -MP -DF_CPU=1000000 -O1 -mmcu=attiny13  -o "main.o" -c "../main.c"
../main.c:11: error: 'TIM0_COMPA' undeclared here (not in a function)
../main.c:11: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'void'
../main.c:16: warning: return type of 'main' is not 'int'
make: *** [main.o] Error 1

Error code 2


у меня 8-ой протеус, посмотрите в своих протеусах будет ли работать.

WinAVR-20100110

Добавлено after 1 minute 6 seconds:
спасибо заранее


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Программирование ATtiny13
СообщениеДобавлено: Пн дек 16, 2019 23:02:30 
Электрический кот

Карма: 3
Рейтинг сообщений: 261
Зарегистрирован: Ср июл 17, 2013 13:55:57
Сообщений: 1031
Рейтинг сообщения: 0
Вы пример под CVAVR берете и в WinAVR пытаетесь его собрать. Так не будет работать. В avr-gcc прерывания вот так записываются:
ISR(TIM0_COMPA_vect)
Замените на это объявление interrupt [TIM0_COMPA] void timer0_compa_isr(void), так только в CVAVR пишется.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Программирование ATtiny13
СообщениеДобавлено: Вт дек 17, 2019 10:15:26 
Поставщик валерьянки для Кота
Аватар пользователя

Карма: 13
Рейтинг сообщений: 57
Зарегистрирован: Сб май 21, 2016 11:04:52
Сообщений: 2105
Откуда: Беларусь
Рейтинг сообщения: 0
ISR(TIM0_COMPA_vect)


да все завелось. Спасибо.

Код:
void timer_ini(void)
{
   //TCCR0B=0x05;
   TCCR0B|=(1<<CS02);  // УСТАНОВИМ ДЕЛИТЕЛЬ 1024
   TCCR0B|=(1<<CS00);  // Эти 2 бита в 1
   OCR0A=0xFF;  // 255; 1200000/1024=1172 ГЦ и делим на число 0xff (255)= 4.5 гц
   TIMSK0=0x04;   // разрешаем таймер по совпадению с числом в OCR0A
   }


вот получил я скажем 4.5 гц, а как получить 1 гц?

Пробовал гуглить, но ниччего конкретного
Я ведль не могу записать как в Атмеге 2х битное число и скоректировать им на нужную мне частоту.
Например я бы мог запсать в OCR0A 1172 и тогда у меня получился бы 1 гц
Или еще подумал что можно наверно ка-то понизить частоту внутреннего генератора???? Возможно ли это?

Вопрос чисто академичесий, никакого прикладного значения.


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 124 ]    , , , 4, , ,  

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 8


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y