Задавайте вопросы по статье или оставляйте пожелания.
объясните пожалуйста:
#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
};
}
Я пишу программы на Ассемблере,поскольку для микроконтроллера ATtiny13 на котором выполнен проект с флеш памятью размером 1 К на языке Си писать не рационально.
Все просто, при прерывании по переполнению таймера0, выполняется void timer0_ovf_isr(void), которая делает:
// Reinitialize Timer 0 value
TCNT0=0xFF;
// Place your code here
т.е. записывает значение в счетчик таймера, непонятно правда почему максимально значение (может интервалы маленькие отсчитывает). И выполняется код пользователя (// Place your code here), например, установка флагов или мат. операция.
Спасибо я уже разобрался, вот ссылка мож. посмотрите, посоветуете чего? https://radioded.ru/forum/viewtopic.php?f=4&t=660
Добрый день. Скажите возможно сделать чтобы светодиод в дежурном режиме моргал не 1 раз в секунду а 1 раз в минуту? Я запитал Ваш таймер от батареек и хотелось бы с экономить энергию. Зарарание спасибо.
vikpl,
Да полагаю,что можно,
надо подумать ,как это будет выглядеть,модифицировать программу.
если ,что получится
Я информирую Вас о результате.
mag58, большое спасибо за скорый ответ буду ждать с нетерпеньем. Вчера запустил Ваш таймер на smd элементах, запустился но есть маленький глюк, пока не могу понять с чем связан, он выражается в само призвольном включении насоса не через 24 часа а всего 2,5......думаю может наводки и контроллер перезапускается или какие то утечки по плате, вообщем пока наблюдаю.
vikpl
Спасибо, что заметили, там действительно был "глюк" в программе небольшая ошибка,
(я 24 часа не проверял)
перепишу программу,устраню ошибку,и прошивку вышлю вам,
да и на сайте надо поменять заодно,
(видимо в спешке пропустил этот момент)
извиняюсь за неудобство,но это моя невнимательность,а не по злому умыслу..)
Да ничего страшного, нормальный рабочий процесс :-), надо тока мне подумать как вернуть к жизне контроллер. изза низкой частоты программатор понипрог не видит его.
vikpl
Ну я полагаю Вы в курсе, статьи "реаниматор" который может вернуть чип в исходное состояние
вот ссылка:
https://radioded.ru/content/view/134/1/
придётся сделать,или где либо ,перепрограммировать в режиме высоковольтного параллельного программирования.
проект сделал с исправлением ошибки и вариант с вашим пожеланием,чтобы в период паузы,мигал 1 раз в минуту,
напишите мне письмо,на
vladimir@radioded.ru
(а то не знаю,как тут прикрепить файл)
я Вам вышлю обе прошивки, одну исправленную
и вторую изменённую с учётом исправления индикации мигания светодиода по вашему пожеланию.
mag58, я отправил Вам письмо. :-) спасибо
Здравствуйте! Я хотел бы использовать этот таймер для внесения удобрений в аквариум, но шаг в 5 секунд слишком большой. Дозатор подаёт 1мл в секунду, а нужно вливать 7, то есть нужен шаг в 1 секунду. В дозаторе есть три ёмкости, для этого хотел собрать три таких таймера. Но если у Вас есть возможность и желание не могли бы Вы мне помочь? Заранее спасибо.
Ashats.
ну уже кое что вразумительное)) речь об аквариуме, Интересное применение,
но понимаете, мне нужно знать ,(повторюсь) диапазон временных интервалов,
от 1 секунды я понял а до скольки максимум?(для аквариума на практике вам приходится или это опытным путём подбирается, но всё же..минута,две?) у меня рыбок нет и аквариума тоже,поэтому вы,как пользователь должны уточнить
ну хорошо сделаю я дискретность 1 сек, попробую поменять программу,
но хотелось бы знать программу максимум. что бы Вам ещё хотелось там автоматизировать?
какой дозатор вы используете? кнструкция его,что там за механизм? моторчик ли? соленоид ли?(электромагнит) на какое напряжение?, самодельный или промышленного изготовления?
ну пока ,что ясно из написанного вами про одну секунду дискретность..
ладно пока буду думать,как изменить программу,с этим вашим требованием
но и вы подумайте, что ещё надо автоматизировать для аквариума попутно.
а помочь Вам...,
ну а для чего по- вашему я задаю столько вопросов?..))
попробуем с Вами сообща забабахать что нить эдакое..)
как будет результат,отпишусь позже.