Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Proteus+timers+1wire-помогите разобраться
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > AVR
de220175
Уважаемые форумчане, прошу помощи с проектом ведомого устройства на шине 1wire.
К топику прикрепил файлы с проектом для протеуса и Code Vision AVR.
Проблема состоит в следующем - Формирую задержку в мкс за счет таймера, в окошке осциллографа она разительным образом отличается от указанной в коде.
Подскажите где может быть ошибка!
СПАСИБО!
hd44780
Цитата(de220175 @ Aug 29 2012, 11:00) *
Проблема состоит в следующем - Формирую задержку в мкс за счет таймера, в окошке осциллографа она разительным образом отличается от


Проблема протеуса.
Вы попробуйте в протеусе банальную светодиодную мигалку с паузами типа 250ms сделать sm.gif

CODE

// Светодиоды
#define LED1 PORTD.4
#define LED2 PORTD.5
#define LED3 PORTD.6
#define LED4 PORTD.7

..............
LED1=1;
delay_ms (250);
LED1=0;
LED2=1;
delay_ms (250);
LED2=0;
LED3=1;
delay_ms (250);
LED3=0;
LED4=1;
delay_ms (250);
LED4=0;


Это кусок из кода, прекрасно работающего в железе.
А в протеусе паузы секунда-2 вместо указанных. И эта байда сопровождается издевательским пояснением типа "проект работает не в реальном времени".
После этого у меня мнение о протеусе весьма отрицательное.

Мой Вам совет - забудьте протеус, делайте в железе. Сэкономите массу сил и времени.
_Pasha
Вроде бы у Вас CKSEL неправильно выставлены, должно либо соответствовать выбранному кварцу либо, если Вы ставите 8МГц, то == 0100, а у Вас 0010
de220175
Спасибо всем!!! Я конечно подозревал что протеус глючный, но что он на столько глючный!
_Pasha
Цитата(de220175 @ Aug 29 2012, 12:28) *
Спасибо всем!!! Я конечно подозревал что протеус глючный, но что он на столько глючный!

Смотря что в нем делать... У меня, например, для проверки работы 1wire, включался лог от ds18b20, зная что некоторые команды модель "ниасиливает" - в дебаг таргете проверяем только то, что есть, остальное выносим на железо. Итд итп
Все равно, протеус - хороший sm.gif
ARV
Цитата(hd44780 @ Aug 29 2012, 12:49) *
А в протеусе паузы секунда-2 вместо указанных. И эта байда сопровождается издевательским пояснением типа "проект работает не в реальном времени".
на компьютере достаточной мощности код, подобный вашему, выполняется как раз практически в реальном времени. на стареньких компах тормозит, не скрою, однако в его собственной системе отсчета времени отлично можно отлаживать все, сильно экономя реальное время sm.gif

P.S. как раз код slave-1-wire я отлаживал в протеусе, и он впоследствии более-менее работал в реальности (желания детально исследовать работу кода не было, ограничился тем, что устройство обнаруживалось при поиске адресов).
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.