Проблема с DS1307.

Вопросы настройки, программирования, прошивки микроконтроллеров и микросхем программируемой логики
Закрыто
Аватара пользователя
vitalyadm
Мучитель микросхем
Сообщения: 433
Зарегистрирован: Пт янв 14, 2011 13:27:12
Откуда: Калуга

Проблема с DS1307.

Сообщение vitalyadm »

Люди добрые! Прошу вас, помогите мне разобраться с моей проблемой!! Не сплю вторую неделю. :cry:
Для вступления: Гуру языка и т.п. я себя совсем не считаю, просто с детства хобби ради увлекаюсь «паяльным» делом, дома я содержу аквариум, так сказать для души, вот решил своим питомцам своять некоторый с позволения сказать компутер их жизнеобеспечения. Использовать продаваемых «китайцев» просто не хочу, тем более так чтоб всё в одном я не встречал, а то, что вообще можно найти стоит очень много, правда там функционала конечно больше, но зачем козе баян, да и всё же своё оно куда приятней. Поискав по просторам интернета, почитав литературу принялся за дело, в протеусе (используемая версия: 7.7 SP2) спроектировал будущую (всё таки я надеюсь) схемку, написал в CodeVisionAVR (используемая версия: 1.25.9) прошивку и к удивлению в протеусе она заработала, но увы, радость была не долгой.
Суть проблемы заключается в том, что как только делаешь пуск симуляции всё начинает работать так, как мне и нужно, но через НЕОПРЕДЕЛЁННЫЙ промежуток времени (это может быть минута, 5 минут, 10, 20 секунд, в общем через сколько- то) у часов (DS1307) сносит кукушку , при чём тоже по разному, на экране может отобразиться вместо текущего времени или даты, или даже того и другого вместе что угодно, например 85:85, или 165-165-165, при чём это не просто глюки преобразования полученных значений из микрушки, в свою очередь в протеусовском окошке отображения текущего времени DS- ки видно, что значения даты или времени или того и другого вместе также изменились, при чём, на какую- то ересь вроде 11-115-2114. Из логов протеуса видно, что сей глюк появляется тогда, когда в лог добавляется строка: «Simulation is not running in real time due to excessive CPU load.» (хотя могу ошибаться) Само собой обратно уже значения не восстанавливаются и поэтому можно сделать вывод, что устройство просто не работает, а чего- то я не понимаю) С датчиком температуры проблем нет, да и вообще со всем остальным всё нормально.

Вкратце по проекту:
D1- подсветка индикатора
D2- выполняет роль термостата, держит температуру не ниже выставленной.
D3-D5 - включают/выключают нагрузку в указанное время.
D6- зачем- то хотел использовать, но мыргает пока без дела.
D9- временный
D8-D7- индикация включения реле, есть желание использовать двух цветный светодиод
По кнопкам, забыл обозначить, извиняюсь
Не в меню: кнопка та что средняя включает/выключает подсветку индикатора, нижняя включает/выключает реле. Для вкл или выкл нужно нажать и держать соответствующую кнопку в районе 1 сек.
Заход в меню также удерживанием верхней кнопки, после захода в меню верхняя кнопка играет роль перехода на следующий пункт менюшки, кнопка средняя становится плюсом, нижняя минусом.
D2-D5- это будующие МОС- ы.

Прошивку, схему конечно прилагаю. В общем, пожалуйста, помогите чем можете, только умоляю не нужно писать что- то вроде читай доки, листай интернет, пользуй готовое…. Ничего толкового я найти так и не смог по решению этой проблемы.
За ранее благодарю, на все вопросы отвечу почему так или не так с удовольствием. :beer:
Вложения
02.jpg
После контузии.
(60.1 КБ) 861 скачивание
01.jpg
В нормальном, рабочем состоянии.
(69.96 КБ) 966 скачиваний
Последний раз редактировалось vitalyadm Сб фев 12, 2011 20:27:19, всего редактировалось 3 раза.
ut1wpr
Вымогатель припоя
Сообщения: 581
Зарегистрирован: Ср янв 05, 2011 10:03:18

Re: Пожалуйста, помогите с проектом!!!!

Сообщение ut1wpr »

vitalyadm писал(а):когда в лог добавляется строка: «Simulation is not running in real time due to excessive CPU load.»
Лечится постановкой более мощного процессора в комплекте с бОльшей памятью. И то не всегда. Рекомендую не "подсаживаться" на Протезус, больно слазить будет. Симуляция никогда не была равнозначной заменой железу.
С уважением,
Виктор.
Аватара пользователя
vitalyadm
Мучитель микросхем
Сообщения: 433
Зарегистрирован: Пт янв 14, 2011 13:27:12
Откуда: Калуга

Re: Пожалуйста, помогите с проектом!!!!

Сообщение vitalyadm »

Увы, но не в загрузке процессора проблема, вот например очередной скриншот, видно что в логах всё чисто, кстати значения в самой дс- ке не изменились, но за то на экране не то что нужно.

Симуляция никогда не была равнозначной заменой железу


Не совсем понятна мысль. Т.е в реальном железе может всё работать без проблем?
Вложения
04.jpg
Глюк.
(174.3 КБ) 1161 скачивание
Аватара пользователя
O-LED
Мудрый кот
Сообщения: 1800
Зарегистрирован: Вт окт 05, 2010 01:08:57
Контактная информация:

Re: Проблема с DS1307.

Сообщение O-LED »

У вас принципиальная схема уже сложилась? Тогда соберите в железе, и до отладьте в нем. Я не говорю что протеус виноват, но исключать это не стоит, и вероятность не маленькая. Был у меня случай, я два месяца не мог понять в чем глюк, со злости спаял в железе, и все сразу и чудно заработало.......
KIT
Аватара пользователя
Danko
Сверлит текстолит когтями
Сообщения: 1287
Зарегистрирован: Пн окт 13, 2008 11:45:54
Откуда: РФ, Крым, г.Бахчисарай
Контактная информация:

Re: Проблема с DS1307.

Сообщение Danko »

void setup_mode(void)
{
while (1)
{//1
Жуть!!! Вечный цикл внутри функции :(



rtc_get_time(&h,&m,&test_s); // через 1,5 сек. считать еще раз
if (test_s == s) // если через 1,5 сек. время не изменилось значит таймер не запущен :)) :)) :))
Кстати есть более простой и быстрый способ.
Первое, что привлекает в программировании, объяснить просто: ты говоришь компьютеру что то сделать, и он это делает. Безошибочно. Всегда. Без возражений.
---------------------
Линус Торвальдс. "Just for fun. Рассказ нечаянного революционера"
Аватара пользователя
simpleX
Первый раз сказал Мяу!
Сообщения: 39
Зарегистрирован: Сб май 30, 2009 00:51:42
Откуда: Россия, г. Курск
Контактная информация:

Re: Проблема с DS1307.

Сообщение simpleX »

дак посмотрите в протеусе регистры МК, что читается из ds-ки
"Никогда не опускайся чего б тебе ни стоило, как бы ни было плохо.
А если отступил и сдал немного, то, считай, душа продалась и сдохла!
Честь и кровь - сохрани свою совесть, свобода и любовь - вот она русская гордость"
Аватара пользователя
Danko
Сверлит текстолит когтями
Сообщения: 1287
Зарегистрирован: Пн окт 13, 2008 11:45:54
Откуда: РФ, Крым, г.Бахчисарай
Контактная информация:

Re: Проблема с DS1307.

Сообщение Danko »

Запустил в Протуесе и на первых же секундах вылетело Simulation is not running in real time due to excessive CPU load.

После того как "почистил" проект строка в логе исчезла.

vitalyadm, попробуйте удалить из проекта все лишнее:
1. 7805
2. кварц и батарейка с DS1307
3. лишняя обвязка на LCD (первые три вывода)
4. МОСФЕТ и все, что с ним связано.
Первое, что привлекает в программировании, объяснить просто: ты говоришь компьютеру что то сделать, и он это делает. Безошибочно. Всегда. Без возражений.
---------------------
Линус Торвальдс. "Just for fun. Рассказ нечаянного революционера"
Аватара пользователя
vitalyadm
Мучитель микросхем
Сообщения: 433
Зарегистрирован: Пт янв 14, 2011 13:27:12
Откуда: Калуга

Re: Проблема с DS1307.

Сообщение vitalyadm »

На всякий случай, вдруг кто- то когда- то столкнётся с подобной проблемой. Я конечно поискал ещё ответ, естественно ничего так и не нашёл, в конечном итоге решил всё это дело своять на монтажной платке, как и рекомендовал мне O-LED и к моему удивлению всё заработало и даже очень хорошо заработало, в тестовом режиме устройство пролежало порядка 3- х дней и ни единого "глюка" так и не наблюдалось :))
Не хочу ругать протеус, но ошибок в нём хватает. Проверено.
Вложения
IMG_5935.jpg
(174.41 КБ) 1090 скачиваний
Аватара пользователя
zhu4er
Вымогатель припоя
Сообщения: 544
Зарегистрирован: Пт июн 04, 2010 17:40:13
Откуда: Непокорный город-герой Севастополь

Re: Проблема с DS1307.

Сообщение zhu4er »

vitalyadm писал(а):На всякий случай, вдруг кто- то когда- то столкнётся с подобной проблемой. Я конечно поискал ещё ответ, естественно ничего так и не нашёл, в конечном итоге решил всё это дело своять на монтажной платке, как и рекомендовал мне O-LED и к моему удивлению всё заработало и даже очень хорошо заработало, в тестовом режиме устройство пролежало порядка 3- х дней и ни единого "глюка" так и не наблюдалось :))
Не хочу ругать протеус, но ошибок в нём хватает. Проверено.

Вот почему я ненавижу Протеус. Кто ею пользуется - себя и своё время не уважает и не бережёт. Офигеть - ДВЕ НЕДЕЛИ ломать мозг почему глючит программа - УЖАС!
Даже у стен есть уши...
Аватара пользователя
Dmitry Dubrovenko
Поставщик валерьянки для Кота
Сообщения: 2349
Зарегистрирован: Вс янв 09, 2011 16:51:39
Откуда: Санкт-Ленинград
Контактная информация:

Re: Проблема с DS1307.

Сообщение Dmitry Dubrovenko »

zhu4er писал(а):я ненавижу Протеус
"Вы просто не умеете его готовить". :)))
И хватит уже рассказывать миф о "реальном железе".
ICQ нет, и, в ближайшее время, не будет.
Аватара пользователя
GP1
Поставщик валерьянки для Кота
Сообщения: 2401
Зарегистрирован: Пт май 23, 2008 19:32:22
Откуда: Россия, Волгоград
Контактная информация:

Re: Проблема с DS1307.

Сообщение GP1 »

И все же:
шпротеус и реальное железо - я вам скажу таки две большие разницы...
Чем дальше, тем больше становлюсь занудой...
Изображение
Аватара пользователя
zhu4er
Вымогатель припоя
Сообщения: 544
Зарегистрирован: Пт июн 04, 2010 17:40:13
Откуда: Непокорный город-герой Севастополь

Re: Проблема с DS1307.

Сообщение zhu4er »

Dmitry Dubrovenko писал(а):
zhu4er писал(а):я ненавижу Протеус
"Вы просто не умеете его готовить". :)))
И хватит уже рассказывать миф о "реальном железе".

А при чём тут миф о реальном железе? Я никогда не пользовался симуляцией в протеусе это просто потеря времени. Объясню почему: всем известен ФАКТ глючности и недоделаности данного продукта, в тоже время я спокойно на макетке спаяю данную схему и буду тестить в реальном железе.
Даже у стен есть уши...
Аватара пользователя
O-LED
Мудрый кот
Сообщения: 1800
Зарегистрирован: Вт окт 05, 2010 01:08:57
Контактная информация:

Re: Проблема с DS1307.

Сообщение O-LED »

Главный недостаток эмуляции - когда у вас что то не работает, вы не можете быть уверены на 100% что это действительно не работает. И вот эта постоянная лотерея отбивает желание пользоваться протеусом.
KIT
Аватара пользователя
zhu4er
Вымогатель припоя
Сообщения: 544
Зарегистрирован: Пт июн 04, 2010 17:40:13
Откуда: Непокорный город-герой Севастополь

Re: Проблема с DS1307.

Сообщение zhu4er »

O-LED писал(а):Главный недостаток эмуляции - когда у вас что то не работает, вы не можете быть уверены на 100% что это действительно не работает. И вот эта постоянная лотерея отбивает желание пользоваться протеусом.

поддерживаю :beer:
Даже у стен есть уши...
Аватара пользователя
Danko
Сверлит текстолит когтями
Сообщения: 1287
Зарегистрирован: Пн окт 13, 2008 11:45:54
Откуда: РФ, Крым, г.Бахчисарай
Контактная информация:

Re: Проблема с DS1307.

Сообщение Danko »

Вы не любите кошек? Да вы просто не умеете их готовить. :))

А почему последовательность должна быть именно такой:
Протеус -> набитые шишки -> проект в железе.

Я поступаю по другому:
Проект на макетке -> настройка проекта в протеусе.

Да именно настройка. Нужно подобрать(подогнать интервалы, поменять текст выводимый на LCD и пр.). Посмотреть четырехканальным осциллографом, померять напругу...

Ну в общем, а почему должно быть все черным или белым? Да и, что кроме протеуса других симуляторов нет? Например VMLAB. Хоть и мало камней и инструментарий не велик, но ведь это тоже инструмент.

И вообще: если вы изучите все тонкости и особенности Протеуса, то в последующем сможете использовать его даже и в первой, указанной мною, последовательности.

А кто не хочет изучать тонкости, так тонкости нужно изучать всего. И что никто не работал цифровым и аналоговым (стрелочным) мультиметрами ?
Первое, что привлекает в программировании, объяснить просто: ты говоришь компьютеру что то сделать, и он это делает. Безошибочно. Всегда. Без возражений.
---------------------
Линус Торвальдс. "Just for fun. Рассказ нечаянного революционера"
Аватара пользователя
O-LED
Мудрый кот
Сообщения: 1800
Зарегистрирован: Вт окт 05, 2010 01:08:57
Контактная информация:

Re: Проблема с DS1307.

Сообщение O-LED »

Ну в общем, а почему должно быть все черным или белым?
Вот с этим согласен. Поэтому начинать полезно с эмулятора, когда еще и кода минимум, и схема не сложилась. И если все гладко - можно и закончить в нем же. Но как только ловишь крупную "непонятку" которой по всем предпосылкам не должно быть, - лучше перейти на железо.
А с быстрым программатором вообще разница между железом и эмулятором невелика. 10кб залетает за 1-2 сек. примерно столько же времени нужно чтоб в эмуляторе "обовить прошивку"
KIT
Аватара пользователя
Dmitry Dubrovenko
Поставщик валерьянки для Кота
Сообщения: 2349
Зарегистрирован: Вс янв 09, 2011 16:51:39
Откуда: Санкт-Ленинград
Контактная информация:

Re: Проблема с DS1307.

Сообщение Dmitry Dubrovenko »

zhu4er писал(а):А при чём тут миф о реальном железе?
А при том, что это самое "реальное" железо вовсе не такое реальное.
Сами же говорите: "На макетке", а потом вставите куда-нибудь в электроустановку, и будете гадать, от чего сбои.
Или, допустим, надо Вам отладить PIC16F628, а у него нет отладчика. Что будете делать? Отрабатывать на том, где есть, а потом переносить в 628? Это будет реальное железо?
Кроме того, даже партии МК могут отличаться. В этом плане, очень памятно, как один товарищ точно так же ругал Протеус, за то, что он не воспроизводит глюк, который был выявлен в МК по причине ошибки производителя.
Так вот, Протеус делает так, как должно быть по правилам. Лично я не встречал ни одной программы, отлаженной в Протеусе, которая не работала бы в реальном железе. А вот наоборот, сплошь и рядом. Пример - программа топикстартера. Написанная на крякнутом КодеВижене, программа отказывается работать в симуляторе. Оно и понятно.
А идеологию: "В железе же работает", я называю "китайской". Таких изделий у нас сейчас пруд пруди. Очень часто, они даже гарантийый срок отрабатывают. Зато дёшево.
А невозможность использования пары портов в отладчике?
А отсутствие синхронизации внутренних и внешних процессов?
И т.д.
Конечно, есть и у Протеуса недостатки. Но вообще-то, это недостатки не Протеуса, а моделей. А вот не задумывались почему производитель вместе с даташитом не распространяет модель девайса? А кто же тогда будет покупать "реальные отладчики"? Бизнес...
Собственно Danko уже всё чётко и конкретно сформулировал, посему заканчиваю этот жуткий оффтоп. :))
ICQ нет, и, в ближайшее время, не будет.
Закрыто

Вернуться в «Микроконтроллеры и ПЛИС»