Таймер для полива р...
 
Уведомления
Очистить все

Таймер для полива растений

46 Посты
11 Пользователи
0 Likes
62.9 Тыс. Просмотры
Radioded
(@sergey)
Estimable Member Admin
Присоединился: 5 лет назад
Сообщения: 184
Topic starter  

Задавайте вопросы по статье или оставляйте пожелания.


Цитата
Vova0306
(@vova0306)
Active Member
Присоединился: 13 лет назад
Сообщения: 10
 

объясните пожалуйста:
#include <mega16.h>

// Timer 0 overflow interrupt service routine
interrupt [TIM0_OVF] void timer0_ovf_isr(void) //могу ли я использовать эту функцию для счёта циклов, или я всё неверно понимаю, она не может возвращать значения в основную функцию, или как? не могу разобраться с таймером : как организовать прерывания (язык С , CVAVR), кусок кода отсутствует
{
// Reinitialize Timer 0 value
TCNT0=0xFF;
// Place your code here

}

// Declare your global variables here

void main(void)
{

// Global enable interrupts
#asm("sei")

while (1)
{
// Place your code here

};
}


ОтветитьЦитата
mag58
(@mag58)
Trusted Member
Присоединился: 14 лет назад
Сообщения: 69
 

Я пишу программы на Ассемблере,поскольку для микроконтроллера ATtiny13 на котором выполнен проект с флеш памятью размером 1 К на языке Си писать не рационально.


ОтветитьЦитата
Radioded
(@sergey)
Estimable Member Admin
Присоединился: 5 лет назад
Сообщения: 184
Topic starter  

Все просто, при прерывании по переполнению таймера0, выполняется void timer0_ovf_isr(void), которая делает:

// Reinitialize Timer 0 value
TCNT0=0xFF;
// Place your code here

т.е. записывает значение в счетчик таймера, непонятно правда почему максимально значение (может интервалы маленькие отсчитывает). И выполняется код пользователя (// Place your code here), например, установка флагов или мат. операция.


ОтветитьЦитата
Vova0306
(@vova0306)
Active Member
Присоединился: 13 лет назад
Сообщения: 10
 

Спасибо я уже разобрался, вот ссылка мож. посмотрите, посоветуете чего? https://radioded.ru/forum/viewtopic.php?f=4&t=660


ОтветитьЦитата
vikpl
(@vikpl)
Active Member
Присоединился: 13 лет назад
Сообщения: 5
 

Добрый день. Скажите возможно сделать чтобы светодиод в дежурном режиме моргал не 1 раз в секунду а 1 раз в минуту? Я запитал Ваш таймер от батареек и хотелось бы с экономить энергию. Зарарание спасибо.


ОтветитьЦитата
mag58
(@mag58)
Trusted Member
Присоединился: 14 лет назад
Сообщения: 69
 

vikpl,
Да полагаю,что можно,
надо подумать ,как это будет выглядеть,модифицировать программу.
если ,что получится
Я информирую Вас о результате.


ОтветитьЦитата
vikpl
(@vikpl)
Active Member
Присоединился: 13 лет назад
Сообщения: 5
 

mag58, большое спасибо за скорый ответ буду ждать с нетерпеньем. Вчера запустил Ваш таймер на smd элементах, запустился но есть маленький глюк, пока не могу понять с чем связан, он выражается в само призвольном включении насоса не через 24 часа а всего 2,5......думаю может наводки и контроллер перезапускается или какие то утечки по плате, вообщем пока наблюдаю.


ОтветитьЦитата
mag58
(@mag58)
Trusted Member
Присоединился: 14 лет назад
Сообщения: 69
 

vikpl
Спасибо, что заметили, там действительно был "глюк" в программе небольшая ошибка,
(я 24 часа не проверял)
перепишу программу,устраню ошибку,и прошивку вышлю вам,
да и на сайте надо поменять заодно,
(видимо в спешке пропустил этот момент)
извиняюсь за неудобство,но это моя невнимательность,а не по злому умыслу..)


ОтветитьЦитата
vikpl
(@vikpl)
Active Member
Присоединился: 13 лет назад
Сообщения: 5
 

Да ничего страшного, нормальный рабочий процесс :-), надо тока мне подумать как вернуть к жизне контроллер. изза низкой частоты программатор понипрог не видит его.


ОтветитьЦитата
mag58
(@mag58)
Trusted Member
Присоединился: 14 лет назад
Сообщения: 69
 

vikpl
Ну я полагаю Вы в курсе, статьи "реаниматор" который может вернуть чип в исходное состояние
вот ссылка:
https://radioded.ru/content/view/134/1/
придётся сделать,или где либо ,перепрограммировать в режиме высоковольтного параллельного программирования.
проект сделал с исправлением ошибки и вариант с вашим пожеланием,чтобы в период паузы,мигал 1 раз в минуту,
напишите мне письмо,на
vladimir@radioded.ru
(а то не знаю,как тут прикрепить файл)
я Вам вышлю обе прошивки, одну исправленную
и вторую изменённую с учётом исправления индикации мигания светодиода по вашему пожеланию.


ОтветитьЦитата
vikpl
(@vikpl)
Active Member
Присоединился: 13 лет назад
Сообщения: 5
 

mag58, я отправил Вам письмо. :-) спасибо


ОтветитьЦитата
mag58
(@mag58)
Trusted Member
Присоединился: 14 лет назад
Сообщения: 69
 

выкладываю архив с прошивками к проекту.


ОтветитьЦитата
Ashats..
(@ashats)
Active Member
Присоединился: 13 лет назад
Сообщения: 6
 

Здравствуйте! Я хотел бы использовать этот таймер для внесения удобрений в аквариум, но шаг в 5 секунд слишком большой. Дозатор подаёт 1мл в секунду, а нужно вливать 7, то есть нужен шаг в 1 секунду. В дозаторе есть три ёмкости, для этого хотел собрать три таких таймера. Но если у Вас есть возможность и желание не могли бы Вы мне помочь? Заранее спасибо.


ОтветитьЦитата
mag58
(@mag58)
Trusted Member
Присоединился: 14 лет назад
Сообщения: 69
 

Ashats.
ну уже кое что вразумительное)) речь об аквариуме, Интересное применение,
но понимаете, мне нужно знать ,(повторюсь) диапазон временных интервалов,
от 1 секунды я понял а до скольки максимум?(для аквариума на практике вам приходится или это опытным путём подбирается, но всё же..минута,две?) у меня рыбок нет и аквариума тоже,поэтому вы,как пользователь должны уточнить
ну хорошо сделаю я дискретность 1 сек, попробую поменять программу,
но хотелось бы знать программу максимум. что бы Вам ещё хотелось там автоматизировать?

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


ОтветитьЦитата
Страница 1 / 4