В ответ на: СУПЕР-ПУПЕР МЕГАТАЙМЕР 18.05.2012 05:58
Репутация: 11  
Проверьте кто собирал в железе, подправил прошивку.Теперь если год <2012,пропишется 05.05.2012 автоматом, чем должно запустить DS1307. PS. Не ругайте если чего, я только учусь.
Содержимое поста отредактировано: 386processor, в: 18.05.2012 06:09
Топик заблокирован.
#7571
386processor(Пользователь)
Новичок
Постов: 20
В ответ на: СУПЕР-ПУПЕР МЕГАТАЙМЕР 23.05.2012 20:25
Репутация: 11  
Сам собрал-пока не работает в железе,лишь добился включения и однократного вывода на дисплей времени и температуры и не меняется,сами часы идут при повторном вкл. отображается правильное время.На 5 выходе секундные импульсы есть, но походу не срабатывает внешнее прерывание
Code:
ISR(INT1_vect){
// тупо устанавливается флаг обновления дисплея
refresh_display = 1;
// и ведется подсчет задержки для обработки навигации по меню
if(wait) wait--;
}
и переменная refresh_display остаётся с нулевым значением, выставленным здесь
Code:
// если установлен флажок обновления дисплея,
// то получаем текущее время
rtc_get_date(&state.dt.weekday, &state.dt.day, &state.dt.mon, &state.dt.year);
rtc_get_time(&state.dt.hour, &state.dt.min, &state.dt.sec);
refresh_display = 0;
Кажись нашел куда рыть! Выводя на экран маркеры с именами места вставки, получил (после 2-3сек работы по полному циклу), на экране мусор, после обработки функции
Code:
// отрабатываем работу меню
do_user_interface();
Поменяв на
Code:
// НЕ отрабатываем работу меню
// do_user_interface();
Получил часы без кнопок и с температурой 150С. Ищем далее.
Содержимое поста отредактировано: 386processor, в: 26.05.2012 03:07
Топик заблокирован.
#7579
dexron(Пользователь)
Новичок
Постов: 24
В ответ на: СУПЕР-ПУПЕР МЕГАТАЙМЕР 26.05.2012 15:49
Репутация: 0  
386processor (а):
386processor +5
Топик заблокирован.
#7580
riv66(Пользователь)
Посетитель
Постов: 82
В ответ на: СУПЕР-ПУПЕР МЕГАТАЙМЕР 26.05.2012 17:15
Репутация: 2  
386processor писал(а): Кажись нашел куда рыть! Получил часы без кнопок и с температурой 150С. Ищем далее. Что то чем дальше, тем больше хочется сказать, что проект создан далеко не для повторения. Все как у нас, после сборки доработать напильником... Хотя замысел очень хороший и полезный.
Топик заблокирован.
#7581
386processor(Пользователь)
Новичок
Постов: 20
В ответ на: СУПЕР-ПУПЕР МЕГАТАЙМЕР 26.05.2012 19:42
Репутация: 11  
Проект очень перспективный, но для новичка в программировании, вроде меня -тяжеловат. В исходниках много всего, и можно брать за основу для других устройств. Автору респект. Теперь хотелось получить ответ от гуру ARV, в других устройствах (в железе)Вы подключали кнопки параллельно к экрану как здесь, а то похоже при опросе кнопок экранчик и отваливается унося и мегу за собой .
В ответ на: СУПЕР-ПУПЕР МЕГАТАЙМЕР 27.05.2012 00:34
Репутация: 11  
И таки да!!!. Если для отладки заменить в предыдущем коде DDRD на DDRВ, а PORTD на PORTВ, и тем самым перенеся кнопки на порт В,получил тикающие часики, а замкнув выводы 19 и 26 попал в меню(правда и быстро с него вернулся почемуто????). Получается не дружат кнопки с экраном на одном порте. Ищем далее.
Топик заблокирован.
#7596
386processor(Пользователь)
Новичок
Постов: 20
В ответ на: СУПЕР-ПУПЕР МЕГАТАЙМЕР 02.06.2012 22:52
Репутация: 11  
Думаю проблема с определением температуры связана с функцией _delay_ms. Так при _delay_ms(100) прога стопорится на 2 с вместо 0,1.Пробовал ставить
Содержимое поста отредактировано: 386processor, в: 03.06.2012 15:00
Топик заблокирован.
#7598
ARV(Администратор)
Администратор
Постов: 2386
В ответ на: СУПЕР-ПУПЕР МЕГАТАЙМЕР 03.06.2012 00:28
Репутация: 176  
проблема с кнопками, наверное, может иметь место... я не сильно задумывался, когда писал такой код, тем более что протеус вроде как показал положительный результат... думаю, надо обратить внимание на состояние других линий управления дисплеем: опрос кнопок можно делать только при условии, что дисплей не активен, т.е. надо перед опросом сохранить имеющиеся там уровни, затем выставить такие уровни на них, чтобы дисплей и сам молчал, и не воспринимал сигналы от МК, после чего опросить кнопки и восстановить сигналы управления... как минимум, это касается сигнала E
думаю, это решит проблему.
Содержимое поста отредактировано: ARV, в: 03.06.2012 00:30
Не стыдно не знать, стыдно не учиться
Топик заблокирован.
#7610
386processor(Пользователь)
Новичок
Постов: 20
В ответ на: СУПЕР-ПУПЕР МЕГАТАЙМЕР 06.06.2012 16:37
Репутация: 11  
Отключил обработку по внешнему прерыванию, гоняю по кругу и температура пошла!!!. Замучился с задержками добавил функцию delay_ms с обработкой по INT0, для её проверки, при старте и выводятся метки с значениями задержек в миллисекундах. Ну и подправил библиотеку ds1307.c , стартуем с 05.05.12 и если секунд больше 60 то поставить 59. Так стартует и без батарейки, с мусором в ds1307.