Форум программистов, компьютерный форум, киберфорум
Наши страницы
Микроконтроллеры Atmega AVR
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.57/35: Рейтинг темы: голосов - 35, средняя оценка - 4.57
CRazs
19 / 15 / 7
Регистрация: 23.09.2010
Сообщений: 158
1

ATmega328 и proteus

19.10.2011, 15:44. Просмотров 6899. Ответов 18
Метки нет (Все метки)

Привет, только начал осваивать proteus, сделал схему ATmega328 + LED.
C++
1
2
3
4
5
6
void loop() {
  digitalWrite(13, HIGH);   // зажигаем светодиод
  delay(1000);              // ждем секунду
  digitalWrite(13, LOW);    // выключаем светодиод
  delay(1000);              // ждем секунду
}
должно включаться, ждать 1 секунду и выключаться. но почемуто proteus ждет аж по 16 секунд
вопрос почему??
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.10.2011, 15:44
Ответы с готовыми решениями:

SPI в Atmega328
Помогите разобраться с SPI! Схему собрал и проверил загрузив Ардуиновский код - все работает. А вот...

Atmega328-PU прошить
Собрал намедни ардуино совместимую плату с Atmego328-PU. При прошивке его "параллельным"...

UART (ATMega328)
Добрый день всем. Я не могу добиться нормальной работы UART Atmega 328p. (Для Atmega8 разобрался и...

Фьюзы atmega328
Долгое время игрался с ардуино(otmyko328). Сейчас решил углубиться в изучение данного...

Atmega328, проблемы с АЦП
Здравствуйте, народ. Какие могут быть идеи по следующим симптомам: - всегда 1023 - сам МК...

18
Negor
57 / 56 / 10
Регистрация: 29.03.2010
Сообщений: 289
19.10.2011, 17:37 2
Дело в том что время в мире симуляции(протеуса) может сдорово отличатся от реального времени. В правом нижнем углу видно сколько прошло времени от начала запуска симуляции в мире симулятора(не знаю как правильно это назвать). Так вот, целая часть этого числа - это секунды. На моём прошлом компе за секунду реального времени проходило лишь 10мс в мире симулятора. Может быть дело в этом. Кроме того, возможно, не верно выставлена частота/источник тактирования виртуального МК. Там тоже есть фьюзы
0
Nosaer
1 / 1 / 1
Регистрация: 25.08.2010
Сообщений: 33
19.10.2011, 18:34 3
Может стоит частоту кварца подобрать подобающе.
0
CRazs
19 / 15 / 7
Регистрация: 23.09.2010
Сообщений: 158
19.10.2011, 20:38  [ТС] 4
Цитата Сообщение от Nosaer Посмотреть сообщение
Может стоит частоту кварца подобрать подобающе.
один фиг)

Добавлено через 49 секунд
Цитата Сообщение от Negor Посмотреть сообщение
Дело в том что время в мире симуляции(протеуса) может сдорово отличатся от реального времени. В правом нижнем углу видно сколько прошло времени от начала запуска симуляции в мире симулятора(не знаю как правильно это назвать). Так вот, целая часть этого числа - это секунды. На моём прошлом компе за секунду реального времени проходило лишь 10мс в мире симулятора. Может быть дело в этом. Кроме того, возможно, не верно выставлена частота/источник тактирования виртуального МК. Там тоже есть фьюзы
ну, там время идёт также как обычно, но побарабану ровно 16 сек
0
Negor
57 / 56 / 10
Регистрация: 29.03.2010
Сообщений: 289
19.10.2011, 21:43 5
Ну тогда очень большая вероятность что неправильно выставлены фьюзы. Ведь если ты указал частоту кварца в настройкам МК то ещё не значит что такт будет оттуда. Ведь фузы из коробки стоят на внутренний такт.
0
Use_ful
0 / 0 / 0
Регистрация: 27.10.2011
Сообщений: 7
28.10.2011, 23:23 6
Не доверяй PROTEUSу визуально - у него бывает раз на раз не приходится, порой совсем от балды временные задержки в симуляции делает. Я визуальность (моргает - не моргает) использую только для оценки работоспособности устройства, а для более точного определения временнЫх интервалов пользуюсь виртуальными приборами, чаще - осциллографом. Нередко с его помощью даже подгоняю исходник под нужный интервал!
0
paskal
450 / 299 / 28
Регистрация: 15.08.2011
Сообщений: 928
31.10.2011, 20:55 7
Цитата Сообщение от CRazs Посмотреть сообщение
один фиг)

ну, там время идёт также как обычно, но побарабану ровно 16 сек
В AVR по умолчанию включен внутренний RC генератор, и делитель тактовой частоты на 8. Судя по симптомам у тебя они не тронуты.
0
MrVik
0 / 0 / 0
Регистрация: 17.03.2016
Сообщений: 32
27.03.2017, 21:46 8
Доброго времени суток!
Подскажите пожалуйста, кто знает. Как в Proteus-е выставить тактирование от внешнего кварца на 16MHz? Ни чего что-то у меня не получается
Написал тестовую прошивку. Смена цифр от 0-9 с интервалом в 500 мс. на 7-ми сегментном индикаторе.
Пока в прошивке "F_CPU 1000000" (1MHz) симуляция проходит отлично, раз в пол секунды меняется цифр. знак, но как только я меняю "F_CPU" на 16000000 (16MHz) и в протеусе выставляю 16MHz, смена знаков происходит раз в 4 или 8 сек. в зависимости от свойств "CKSEL Fuses" микроконтролера.

Скрин
ATmega328 и proteus
0
ValeryS
Модератор
7446 / 5638 / 716
Регистрация: 14.02.2011
Сообщений: 19,206
Завершенные тесты: 1
28.03.2017, 04:46 9
Цитата Сообщение от MrVik Посмотреть сообщение
в зависимости от свойств "CKSEL Fuses"
и что конкретно ты там выставляешь?
0
pyzhman
791 / 485 / 66
Регистрация: 15.05.2012
Сообщений: 2,748
28.03.2017, 09:59 10
Делитель на 8 поставить незапрограммированным. Клокфузы поставить на внешний кварц с частотой от не_помню_скольки до дофига. Строка Clock Frequenses заполнена верно.
1
DemolitionMan
130 / 156 / 87
Регистрация: 06.04.2016
Сообщений: 992
28.03.2017, 11:14 11
Цитата Сообщение от MrVik Посмотреть сообщение
Написал тестовую прошивку. Смена цифр от 0-9 с интервалом в 500 мс. на 7-ми сегментном индикаторе.
Пока в прошивке "F_CPU 1000000" (1MHz) симуляция проходит отлично, раз в пол секунды меняется цифр. знак, но как только я меняю "F_CPU" на 16000000 (16MHz) и в Протеусе выставляю 16MHz, смена знаков происходит раз в 4 или 8 сек. в зависимости от свойств "CKSEL Fuses" микроконтролера.
- возможно очень сильно нагружется процессор и из-за этого тормоза.
Внизу в строке состояния отображается нагрузка на процессор: "CPU: 5%". Сколько она у Вас?
1
MrVik
0 / 0 / 0
Регистрация: 17.03.2016
Сообщений: 32
28.03.2017, 16:40 12
Цитата Сообщение от pyzhman Посмотреть сообщение
Делитель на 8 поставить незапрограммированным. Клокфузы поставить на внешний кварц
Скрин
ATmega328 и proteus

Выставил свойства вот так, все заработало! Спасибо!

Цитата Сообщение от pyzhman Посмотреть сообщение
с частотой от не_помню_скольки до дофига.
Можно поподробнее?

Может еще что-то нужно изменить?
В чем разница (0110) Ext. Full-swing Crystal и (0111) Ext. Full-swing Crystal?
Или нужно какой-то другой параметр выбрать?

Раньше собирал простые схемы на ATtiny от внутреннего генератора, а сейчас разрабатываю серьезный проект и нужна точность. Так как раньше не использовал внешний кварц, и не приходилось разбираться с тонкостями, а сейчас столкнулся

Цитата Сообщение от DemolitionMan Посмотреть сообщение
Сколько она у Вас?
Нет, это не из-за тормозов, точно.
СкринНазвание: proteus3.jpg
Просмотров: 48

Размер: 6.5 Кб
0
DemolitionMan
130 / 156 / 87
Регистрация: 06.04.2016
Сообщений: 992
28.03.2017, 17:04 13
Цитата Сообщение от MrVik Посмотреть сообщение
Можно поподробнее?
- это он имеет ввиду последнюю строчку в выпадающем списке "CKSEL Fuses". Там написано: частота от 8MHz до своего максимального значения(16 или 20MHz, не помню уже), внешний кварц.
1
MrVik
0 / 0 / 0
Регистрация: 17.03.2016
Сообщений: 32
28.03.2017, 17:27 14
Цитата Сообщение от DemolitionMan Посмотреть сообщение
- это он имеет ввиду последнюю строчку в выпадающем списке "CKSEL Fuses". Там написано: частота от 8MHz до своего максимального значения(16 или 20MHz, не помню уже), внешний кварц.
У меня есть два варианта. Proteus 8.5
Скрин
ATmega328 и proteus

Какой из них нужен? Один (1110) ..., другой (1111) ...
0
ValeryS
Модератор
7446 / 5638 / 716
Регистрация: 14.02.2011
Сообщений: 19,206
Завершенные тесты: 1
28.03.2017, 17:33 15
Цитата Сообщение от MrVik Посмотреть сообщение
Какой из них нужен?
для протеуса любой
для реальной схемы смотреть надо, последний бит включает усилитель, что увеличивает стабильность кварца но и жрет микросхема больше
1
MrVik
0 / 0 / 0
Регистрация: 17.03.2016
Сообщений: 32
28.03.2017, 17:49 16
Ясно, Спасибо!
Спасибо всем, что помогли разобраться.
Теперь могу приступить к написанию ПО. Важно было разобраться с симуляцией в Proteus-е, не хочется шить контроллер по 10 раз. Понимаю что симуляция это не реальные условия, но все же помогает отладит как ПО так и схему.
0
Voland_
1688 / 1033 / 97
Регистрация: 04.01.2010
Сообщений: 3,482
29.03.2017, 09:01 17
Цитата Сообщение от MrVik Посмотреть сообщение
В чем разница (0110) Ext. Full-swing Crystal и (0111) Ext. Full-swing Crystal?
с этими вопросами откройте перед собой мануал на мегу, и ищите. На стр.28-35 все это есть.
0
pyzhman
791 / 485 / 66
Регистрация: 15.05.2012
Сообщений: 2,748
29.03.2017, 09:37 18
Цитата Сообщение от MrVik Посмотреть сообщение
не хочется шить контроллер по 10 раз
Чего париться-то? Иные проекты в процессе отладки и 900 раз шьются. И норм.
0
MrVik
0 / 0 / 0
Регистрация: 17.03.2016
Сообщений: 32
30.03.2017, 16:17 19
Цитата Сообщение от Voland_ Посмотреть сообщение
Цитата Сообщение от MrVik Посмотреть сообщение
В чем разница (0110) Ext. Full-swing Crystal и (0111) Ext. Full-swing Crystal?
с этими вопросами откройте перед собой мануал на мегу, и ищите. На стр.28-35 все это есть.
Угу, понял, почитаю.

Цитата Сообщение от pyzhman Посмотреть сообщение
Чего париться-то? Иные проекты в процессе отладки и 900 раз шьются. И норм.
Да, было дело. Собирал одно устройство, шил много раз, пока оттачивал ПО. И как раз во время отладки появилась необходимость немного изменить монтаж, но пришлось оставить как есть, потому как плата уже сделана и переделывать снова не было желания. А вот как раз симуляция например в Proteus-е позволяет избежать таких случаев.
0
30.03.2017, 16:17
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.03.2017, 16:17

Начало работы с atmega328
Здравствуйте, помогите подобрать программатор для прошивки otmyko328P. Интересует, сколько стоит,...

Работа с UART (ATMega328)
Всем привет. Сижу мучаю атмегу и понять не могу что не так. Мне надо сделать uart c ехом. Но это...

V-USB, Atmega328 и 16MHz
Здравия желаю, Имеем: Arduino pro mini 16MHz/5V Схема подключения: <Изображение удалено>...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
19
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru