Найдено 8 результатов

litvinov_san
Пт июл 03, 2009 14:06:31
Форум: Микроконтроллеры и ПЛИС
Тема: Atmega 8: генерация произвольных временных интервалов
Ответы: 13
Просмотры: 3383

Нормально заработал следующий вариант:

i=5; // задаю начальное значение переменной
srand(sec+(rand()));
while (1)
{
if (sec==(i)) // Если счетчик равен сгенерированному числу i +зедержке в 5с,то зажечь светодиод

{
i=0;
PORTB.1=0;
delay_ms(900);
PORTB.1=1;
sec=0;
i=rand()%11 ...
litvinov_san
Пт июл 03, 2009 05:47:32
Форум: Микроконтроллеры и ПЛИС
Тема: Atmega 8: генерация произвольных временных интервалов
Ответы: 13
Просмотры: 3383

А можно как-нибудь реализовать произвольную задержку по времени используя таймер, а не функцию delay? Не хотелось бы просто занимать вычислительные мощности контроллера
litvinov_san
Чт июл 02, 2009 16:24:27
Форум: Микроконтроллеры и ПЛИС
Тема: Atmega 8: генерация произвольных временных интервалов
Ответы: 13
Просмотры: 3383

Спасибо! Попробую
litvinov_san
Чт июл 02, 2009 13:14:36
Форум: Микроконтроллеры и ПЛИС
Тема: Atmega 8: генерация произвольных временных интервалов
Ответы: 13
Просмотры: 3383

Может быть для получения произвольных промежутков времени стоит использовать массив из произвольных чисел забитых ручками? Только как реализовать их перебор по кругу?
litvinov_san
Чт июл 02, 2009 12:49:43
Форум: Микроконтроллеры и ПЛИС
Тема: Atmega 8: генерация произвольных временных интервалов
Ответы: 13
Просмотры: 3383

допишите строчку ограничения интервала сек. If(sec>30)sec=0;

Эффект тот же. Таймер отсчитывает 10 секунд как и положено+ 2с сгенерированные рандомом.Только этот рандом всегда генерирует 2 секунды.Либо сгенерировал один раз и дальше значение не изменяется:(. Пробовал вынести генерацию чисел за ...
litvinov_san
Чт июл 02, 2009 12:33:40
Форум: Микроконтроллеры и ПЛИС
Тема: Atmega 8: генерация произвольных временных интервалов
Ответы: 13
Просмотры: 3383

Пока таймер считает цикл while будет постоянно выполняться, т.е. rand всегда будет выдавать новые числа? Как можно еще реализовать генерацию случайных отрезков времени?
litvinov_san
Чт июл 02, 2009 12:29:18
Форум: Микроконтроллеры и ПЛИС
Тема: Atmega 8: генерация произвольных временных интервалов
Ответы: 13
Просмотры: 3383

В протеусе шагал, светодиод загарается, только загарается всегда через одинаковые промежутки времени. Такое ощущение что я просто не до конца понял как работает функция rand. Она генерирует всегда одно и то же число.

while (1)
{
// организация промежутка времени
srand(9);
i=rand()%11 ...
litvinov_san
Чт июл 02, 2009 10:59:02
Форум: Микроконтроллеры и ПЛИС
Тема: Atmega 8: генерация произвольных временных интервалов
Ответы: 13
Просмотры: 3383

Atmega 8: генерация произвольных временных интервалов

Доброго времени суток, уважаемые! Не могу понять почему не работает программа генератора случайных временных интервалов. Программирую в CodevisionAVR. Суть задачи в следующем: настроил прерывания таймера 1 атмеги на 1 с, по прерыванию увеличиваю переменную. При помощи команды rand генерирую целое ...

Перейти к расширенному поиску