Форум программистов, компьютерный форум, киберфорум
Микроконтроллеры ATmega AVR
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.61/89: Рейтинг темы: голосов - 89, средняя оценка - 4.61
19 / 15 / 7
Регистрация: 23.09.2010
Сообщений: 158

ATmega328 и proteus

19.10.2011, 15:44. Показов 17051. Ответов 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
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
19.10.2011, 15:44
Ответы с готовыми решениями:

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

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

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

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

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

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

Скрин
0
Модератор
Эксперт по электронике
8981 / 6748 / 921
Регистрация: 14.02.2011
Сообщений: 23,871
28.03.2017, 04:46
Цитата Сообщение от MrVik Посмотреть сообщение
в зависимости от свойств "CKSEL Fuses"
и что конкретно ты там выставляешь?
0
1184 / 672 / 113
Регистрация: 15.05.2012
Сообщений: 4,085
28.03.2017, 09:59
Делитель на 8 поставить незапрограммированным. Клокфузы поставить на внешний кварц с частотой от не_помню_скольки до дофига. Строка Clock Frequenses заполнена верно.
1
132 / 158 / 87
Регистрация: 06.04.2016
Сообщений: 992
28.03.2017, 11:14
Цитата Сообщение от MrVik Посмотреть сообщение
Написал тестовую прошивку. Смена цифр от 0-9 с интервалом в 500 мс. на 7-ми сегментном индикаторе.
Пока в прошивке "F_CPU 1000000" (1MHz) симуляция проходит отлично, раз в пол секунды меняется цифр. знак, но как только я меняю "F_CPU" на 16000000 (16MHz) и в Протеусе выставляю 16MHz, смена знаков происходит раз в 4 или 8 сек. в зависимости от свойств "CKSEL Fuses" микроконтролера.
- возможно очень сильно нагружется процессор и из-за этого тормоза.
Внизу в строке состояния отображается нагрузка на процессор: "CPU: 5%". Сколько она у Вас?
1
1 / 1 / 0
Регистрация: 17.03.2016
Сообщений: 32
28.03.2017, 16:40
Цитата Сообщение от pyzhman Посмотреть сообщение
Делитель на 8 поставить незапрограммированным. Клокфузы поставить на внешний кварц
Скрин

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

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

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

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

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

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

Какой из них нужен? Один (1110) ..., другой (1111) ...
0
Модератор
Эксперт по электронике
8981 / 6748 / 921
Регистрация: 14.02.2011
Сообщений: 23,871
28.03.2017, 17:33
Цитата Сообщение от MrVik Посмотреть сообщение
Какой из них нужен?
для протеуса любой
для реальной схемы смотреть надо, последний бит включает усилитель, что увеличивает стабильность кварца но и жрет микросхема больше
1
1 / 1 / 0
Регистрация: 17.03.2016
Сообщений: 32
28.03.2017, 17:49
Ясно, Спасибо!
Спасибо всем, что помогли разобраться.
Теперь могу приступить к написанию ПО. Важно было разобраться с симуляцией в Proteus-е, не хочется шить контроллер по 10 раз. Понимаю что симуляция это не реальные условия, но все же помогает отладит как ПО так и схему.
0
 Аватар для Voland_
1983 / 1276 / 131
Регистрация: 04.01.2010
Сообщений: 4,607
29.03.2017, 09:01
Цитата Сообщение от MrVik Посмотреть сообщение
В чем разница (0110) Ext. Full-swing Crystal и (0111) Ext. Full-swing Crystal?
с этими вопросами откройте перед собой мануал на мегу, и ищите. На стр.28-35 все это есть.
0
1184 / 672 / 113
Регистрация: 15.05.2012
Сообщений: 4,085
29.03.2017, 09:37
Цитата Сообщение от MrVik Посмотреть сообщение
не хочется шить контроллер по 10 раз
Чего париться-то? Иные проекты в процессе отладки и 900 раз шьются. И норм.
0
1 / 1 / 0
Регистрация: 17.03.2016
Сообщений: 32
30.03.2017, 16:17
Цитата Сообщение от Voland_ Посмотреть сообщение
Цитата Сообщение от MrVik Посмотреть сообщение
В чем разница (0110) Ext. Full-swing Crystal и (0111) Ext. Full-swing Crystal?
с этими вопросами откройте перед собой мануал на мегу, и ищите. На стр.28-35 все это есть.
Угу, понял, почитаю.

Цитата Сообщение от pyzhman Посмотреть сообщение
Чего париться-то? Иные проекты в процессе отладки и 900 раз шьются. И норм.
Да, было дело. Собирал одно устройство, шил много раз, пока оттачивал ПО. И как раз во время отладки появилась необходимость немного изменить монтаж, но пришлось оставить как есть, потому как плата уже сделана и переделывать снова не было желания. А вот как раз симуляция например в Proteus-е позволяет избежать таких случаев.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
30.03.2017, 16:17
Помогаю со студенческими работами здесь

ШИМ на Atmega328
Здравствуйте. Собрал ШИМ генератор (двухтактный) МК Atmega328, текст программы написал в Атмел студио. Проверил все работает,но как...

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

Разделение земли на atmega328
Хочу поделиться своими соображениями и решением проблемы. Делаю паяльник с феном T12 на одном мк atmega328 в dip корпусе. Сразу говорю, вся...

Мультиплексор АЦП Atmega328
Всем доброго времени суток. Такое недопонимание у меня возникло: сколько разрядов имеет мельтиплексор АЦП Atmega328? В пособии...

Atmega328 rs485 на прерываниях
Всем привет. Пытаюсь реализовать прием и передачу по rs485 на прерываниях. Тоесть с компьютера отправить массив из 14 байт и получить его...


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

Или воспользуйтесь поиском по форуму:
19
Ответ Создать тему
Новые блоги и статьи
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru