AVR микроконтроллеры

Обсуждаем контроллеры компании Atmel.
Аватара пользователя
СКАЗОЧНИК
Идёт направо - песнь заводит, Налево - сказку говорит.
Сообщения: 5000
Зарегистрирован: Чт апр 21, 2011 17:55:50
Откуда: Иркутск

Re: AVR микроконтроллеры

Сообщение СКАЗОЧНИК »

Бля... почему же я думал, что они за один такт???!!! :facepalm: :facepalm: :facepalm: Дебил бля. Точно посмотрел в справке, за два такта... :oops: :facepalm:

Благодарю.
Точная частота сильно не волнует, главное почему я на 8 делил... вот это была проблема.
Станислав
Аватара пользователя
Z_h_e
Собутыльник Кота
Сообщения: 2708
Зарегистрирован: Сб май 14, 2011 21:16:04
Откуда: г. Чайковский

Re: AVR микроконтроллеры

Сообщение Z_h_e »

СКАЗОЧНИК писал(а):Благодарю.
Да не за что.

Точная частота сильно не волнует
Судя по коду Вы вроде как с датчиком температуры DS1820 собрались работать, там важны временные интервалы.
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.
CB1
Прорезались зубы
Сообщения: 232
Зарегистрирован: Чт янв 01, 2015 13:44:12

Re: AVR микроконтроллеры

Сообщение CB1 »

Доброго времени суток! В описании микроконтроллера Atmega8 написано что он может работать при частотах 0-16МГц http://www.gaw.ru/html.cgi/txt/ic/Atmel ... tmega8.htm . Если я использую внутренний генератор тактовой частоты, то в прошивке можно задавать любую частоту из этого предела или нужно задавать какие то фиксированные значения частоты?
Все гениальное - просто
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18544
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Re: AVR микроконтроллеры

Сообщение ARV »

"в прошивке" (вы, наверное, имели ввиду "в программе"?) нужно указывать ту частоту, на которой МК будет работать в реальности.
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Аватара пользователя
СКАЗОЧНИК
Идёт направо - песнь заводит, Налево - сказку говорит.
Сообщения: 5000
Зарегистрирован: Чт апр 21, 2011 17:55:50
Откуда: Иркутск

Re: AVR микроконтроллеры

Сообщение СКАЗОЧНИК »

CB1 писал(а):Если я использую внутренний генератор тактовой частоты, то в прошивке можно задавать любую частоту из этого предела или нужно задавать какие то фиксированные значения частоты?

Фиксированные. 1, 2, 4, 8 МГц.
Работать на 16 МГц или другой будет от внешнего кварцевого резонатора. А также от любого генератора. или от внешней RC цепочки.
Станислав
CB1
Прорезались зубы
Сообщения: 232
Зарегистрирован: Чт янв 01, 2015 13:44:12

Re: AVR микроконтроллеры

Сообщение CB1 »

Спасибо за ответ! Получается при использовании внутреннего генератора максимальная частота будет 8МГц?
Все гениальное - просто
Аватара пользователя
СКАЗОЧНИК
Идёт направо - песнь заводит, Налево - сказку говорит.
Сообщения: 5000
Зарегистрирован: Чт апр 21, 2011 17:55:50
Откуда: Иркутск

Re: AVR микроконтроллеры

Сообщение СКАЗОЧНИК »

Да. :roll: Еще ее можно подстраивать в некоторых приделах. Процента на 2 где-то.

В других микроконтроллерах, могут быть и другие диапазоны, у АТтини13, например есть 9,6 МГц. :)
Станислав
Аватара пользователя
Z_h_e
Собутыльник Кота
Сообщения: 2708
Зарегистрирован: Сб май 14, 2011 21:16:04
Откуда: г. Чайковский

Re: AVR микроконтроллеры

Сообщение Z_h_e »

The calibrated internal RC Oscillator provides a fixed 1.0MHz, 2.0MHz, 4.0MHz, or 8.0MHz
clock.
Кроме того почитайте про регистр OSCCAL и обратите внимание что контроллер загружает его при старте для частоты 1МГц. Для других частот его надо загружать ручками. Хотя я этого не делал (по незнанию) и UART все равно работал без сбоев, а он привязан к временным интервалам.

----------
Подстройка может быть до 200%, но изменение частоты более 10% не гарантирует запись EEPROM и FLASH
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.
Аватара пользователя
СКАЗОЧНИК
Идёт направо - песнь заводит, Налево - сказку говорит.
Сообщения: 5000
Зарегистрирован: Чт апр 21, 2011 17:55:50
Откуда: Иркутск

Re: AVR микроконтроллеры

Сообщение СКАЗОЧНИК »

Доброго всем дня!
Очередной вопрос у меня возник... Собрал я термометр (термостат) на ТИНИ2313 и 7-сегментном четырехразрядном индикаторе и DS18B20. Прошивку писал всю сам. И все работает, температуру показывает, нагрузку включает, настройки в ЭСППЗУ сохраняет.
Но! Проблема в том, что включается через раз. втыкаешь к нему 12 Вольт, и запускается только со второго, а то и больше количества раз.
Цепь сброса RESET стоит (резистор и конденсатор), как и везде.
Еще не сталкивался с такой хренью.
Мало того, спаял второй такой термометр - аналогичная хрень, но там я вместо цепи сброса поставил СУПЕРВИЗОР на 4,5 Вольта!!!
Ничего не понимаю. Чего еще можно сделать? :kill:
Станислав
Аватара пользователя
Z_h_e
Собутыльник Кота
Сообщения: 2708
Зарегистрирован: Сб май 14, 2011 21:16:04
Откуда: г. Чайковский

Re: AVR микроконтроллеры

Сообщение Z_h_e »

СКАЗОЧНИК, ну что же Вы? Ни схемы, ни кода. На такой вопрос можно только ответить - у Вас где-то ошибка.
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.
Аватара пользователя
СКАЗОЧНИК
Идёт направо - песнь заводит, Налево - сказку говорит.
Сообщения: 5000
Зарегистрирован: Чт апр 21, 2011 17:55:50
Откуда: Иркутск

Re: AVR микроконтроллеры

Сообщение СКАЗОЧНИК »

Так там и схемы то нет как таковой.... Всего три детальки. ))) А код - работает, но могу и выложить.

З.Ы. Сейчас поставлю Протеус и нарисую схему.
Хм... может быть и в коде.. Если прерывания гонят...
Вложения
Temper.zip
Код. АВРСтудио 4.19
(15.78 КБ) 144 скачивания
Станислав
Аватара пользователя
Z_h_e
Собутыльник Кота
Сообщения: 2708
Зарегистрирован: Сб май 14, 2011 21:16:04
Откуда: г. Чайковский

Re: AVR микроконтроллеры

Сообщение Z_h_e »

Код: Выделить всё

---------- начальные значения переменных, массивы ----------
          
                 ;   0     1     2     3     4     5     6     7     8     9     o     -           C        
         Cifri: .db 0xFC, 0x60, 0xDA, 0xF2, 0x66, 0xB6, 0xBE, 0xE0, 0xFE, 0xF6, 0xC6, 0x02, 0x00, 0x9C
               ;   0     1      2     3      4     5      6     7      8     9       10     11   12     13   

;           ----- конфигурация прерываний, стека, аналогового компаратора, таймеров -----


Вот это у Вас зачем прямо в исполняемом коде? Контроллер их как некие команды обработает. Если так важно поставить в этом месте, перепрыгните RJMP ом этот массив.
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.
Аватара пользователя
СКАЗОЧНИК
Идёт направо - песнь заводит, Налево - сказку говорит.
Сообщения: 5000
Зарегистрирован: Чт апр 21, 2011 17:55:50
Откуда: Иркутск

Re: AVR микроконтроллеры

Сообщение СКАЗОЧНИК »

Хорошо, что у меня дома есть экземпляр этого термометра. Щаз буду пробовать переносить и перепрошивать.
Убрать в конец? (Раньше на это не часы, не мигалки, ни этот термометр не жаловались...)
Станислав
Аватара пользователя
Z_h_e
Собутыльник Кота
Сообщения: 2708
Зарегистрирован: Сб май 14, 2011 21:16:04
Откуда: г. Чайковский

Re: AVR микроконтроллеры

Сообщение Z_h_e »

Поставте туда, где удобно. Лишь бы контроллер не пробовал выполнять массив как программу.


----------
СКАЗОЧНИК писал(а):(Раньше на это не часы, не мигалки, ни этот термометр не жаловались...)
Повезло просто. Запустите программу в симуляторе Студии. Откройте окно дизаземблера и выполняйте пошагово. И Вам сразу понятно будет что Вы натворили вставив некий массив в тело исполняемого кода.
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.
Аватара пользователя
СКАЗОЧНИК
Идёт направо - песнь заводит, Налево - сказку говорит.
Сообщения: 5000
Зарегистрирован: Чт апр 21, 2011 17:55:50
Откуда: Иркутск

Re: AVR микроконтроллеры

Сообщение СКАЗОЧНИК »

Почему-то, когда втыкаю программатор и запитываюсь от него, то работает без проблем... :dont_know: Даже если включать и отключать - запускается всегда.
Станислав
Аватара пользователя
Z_h_e
Собутыльник Кота
Сообщения: 2708
Зарегистрирован: Сб май 14, 2011 21:16:04
Откуда: г. Чайковский

Re: AVR микроконтроллеры

Сообщение Z_h_e »

Z_h_e писал(а):Поставте туда, где удобно.
Но только чтобы адреса (Cifri*2) и (Cifri*2+12) находились в одной странице флеш памяти кратной 256 байт, раз Вы в "условии типа КЭЙС" ZH не считаете. Может так оказаться что начало массива находится в одной странице, а конец в другой.

Или же после add ZL, RAZ1 прибавте к ZH флаг С. Тогда за местоположение массива в памяти не надо будет переживать.

СКАЗОЧНИК писал(а):Почему-то, когда втыкаю программатор
Ошибок может быть и не одна. И в схеме тоже могут быть.
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.
Аватара пользователя
СКАЗОЧНИК
Идёт направо - песнь заводит, Налево - сказку говорит.
Сообщения: 5000
Зарегистрирован: Чт апр 21, 2011 17:55:50
Откуда: Иркутск

Re: AVR микроконтроллеры

Сообщение СКАЗОЧНИК »

Вот схема.. в протеусе не работает вообще нихрена. Ненавижу его.
По питанию стоит ещестабилизатор 78L05.
Кнопку сброса я сам только что нарисовал (на плате ее нету).
Два индикатора потому, что в схеме у меня нарисован с общим катодом, а в протеусе отказывается работать. :dont_know: :facepalm:

ЗЫ в любом случае склоняюсь, что косяк в программе.

З.З.З. Ну надо же А! Точно, из-за этого массива все страдало херней. Всего лишь его перенес за главный цикл и все. Включается без проблем. :)
Списибо Вам, Z_h_e! Очень признателен!
Вложения
Proteus.zip
Протеус
(34.78 КБ) 140 скачиваний
Станислав
Аватара пользователя
Z_h_e
Собутыльник Кота
Сообщения: 2708
Зарегистрирован: Сб май 14, 2011 21:16:04
Откуда: г. Чайковский

Re: AVR микроконтроллеры

Сообщение Z_h_e »

Ну а код то исправленный где?
----------
Ну раз заработало, то не надо. Не забудте про регистр ZH
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.
Аватара пользователя
СКАЗОЧНИК
Идёт направо - песнь заводит, Налево - сказку говорит.
Сообщения: 5000
Зарегистрирован: Чт апр 21, 2011 17:55:50
Откуда: Иркутск

Re: AVR микроконтроллеры

Сообщение СКАЗОЧНИК »

Вот он. :))) Только в Протеусе все равно не заработал, но в железе пашет прекрасно. :)))

А как в Студии запустить дизассемблер?
Вложения
Temper.zip
Испрвленный
(15.78 КБ) 144 скачивания
Станислав
Аватара пользователя
Z_h_e
Собутыльник Кота
Сообщения: 2708
Зарегистрирован: Сб май 14, 2011 21:16:04
Откуда: г. Чайковский

Re: AVR микроконтроллеры

Сообщение Z_h_e »

Я в 4ой давно не работал. Возможно запустить симуляцию, и пока симуляция на паузе открыть окно дизаземблер. Оно наверное там же где прочие окна, память, регистры и т.д.
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.
Ответить

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