помогите с задержкой

Вопросы настройки, программирования, прошивки микроконтроллеров и микросхем программируемой логики
Закрыто
viktor110668
Открыл глаза
Сообщения: 45
Зарегистрирован: Пн мар 09, 2009 08:06:49

помогите с задержкой

Сообщение viktor110668 »

скажите как можно заменить в переменной задержки с миллисекунд на секунды
Вложения
main.rar
(708 байт) 153 скачивания
dimm1985
Первый раз сказал Мяу!
Сообщения: 39
Зарегистрирован: Вс мар 20, 2011 17:09:31
Откуда: Киев

Re: помогите с задержкой

Сообщение dimm1985 »

создать библиотеку delay_s.h, сохранить в C:\cvavr\inc

delay_s.h
Код:

#ifndef DELAY_S_H
#define DELAY_S_H

#include <util/delay.h>

static inline void delay_s(float s)
{
uint16_t i = s * 100;
if(i) do _delay_ms(10); while(--i);
}
#endif

потом в программе

#include "delay_s.h"

void main(void)
{
delay_s(3.5); // 3,5 sek
delay_s(5); //5 sek
}
Аватара пользователя
ChipKiller
Сверлит текстолит когтями
Сообщения: 1163
Зарегистрирован: Ср янв 05, 2011 16:25:15

Re: помогите с задержкой

Сообщение ChipKiller »

как можно заменить в переменной задержки с миллисекунд на секунды
1 сек = 1000 мсек .... :) только зачем так издеваться над МК
viktor110668
Открыл глаза
Сообщения: 45
Зарегистрирован: Пн мар 09, 2009 08:06:49

Re: помогите с задержкой

Сообщение viktor110668 »

в блокноте могу сделать ?


у меня в проекте есть две кнопочки + и - вот чтобы не гнать с 5000 по одной единице
устанешь кнопкой щелкать в итоге сломаешь кнопку
viktor110668
Открыл глаза
Сообщения: 45
Зарегистрирован: Пн мар 09, 2009 08:06:49

Re: помогите с задержкой

Сообщение viktor110668 »

всем спасибо я разобрался
как сделать очень просто без включения файлов
ksv82
Первый раз сказал Мяу!
Сообщения: 25
Зарегистрирован: Пт мар 18, 2011 12:41:09

Re: помогите с задержкой

Сообщение ksv82 »

Я б на вашем месте все таки про таймеры подумал... а то пока кода да функций в проге мало такие задержки еще прокатывают, а вот когда функционала станет побольше, такие извращения будут оочень сильно мешаться.
viktor110668
Открыл глаза
Сообщения: 45
Зарегистрирован: Пн мар 09, 2009 08:06:49

Re: помогите с задержкой

Сообщение viktor110668 »

код буден увеличен на 5 строк если будет задача сделать расширенный код тогда придется
ломать голову над таймерами
dimm1985
Первый раз сказал Мяу!
Сообщения: 39
Зарегистрирован: Вс мар 20, 2011 17:09:31
Откуда: Киев

Re: помогите с задержкой

Сообщение dimm1985 »

в блокноте и надо, только сохранить не как .txt а .h

И как в итоге победил? Поделись, сам иногда с секундами и минутами дело имею.
viktor110668
Открыл глаза
Сообщения: 45
Зарегистрирован: Пн мар 09, 2009 08:06:49

Re: помогите с задержкой

Сообщение viktor110668 »

а очень просто
if (PINB.0==0) { //
delay_ms(50); //
PINC.0=1 ;
delay_ms(tmp*10);// вот тут переменную умножил на 10 и все
PINC.0=0;
while(PINB.2==0) {}; //
delay_ms(5); //
Закрыто

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