Микроконтролери и електроника
http://mcu-bg.com/mcu_site/

Таймер в Борланд С++
http://mcu-bg.com/mcu_site/viewtopic.php?f=7&t=6920
Страница 1 от 1

Автор:  RM [ Нед Юни 21, 2009 2:44 pm ]
Заглавие:  Таймер в Борланд С++

Не можах да намеря друг начин за реализиране на закъснение в билдера освен със създаване на таймер. Няма ли нещо от рода delay_ms(100); :D
Код:
#include <time.h>
#include <stdlib.h>

void delay(time_t seconds)
{
    time_t start=time(NULL);
    time_t end=0;
    seconds++;  /* account for partial second  */
    for(;;)
    {
      end=time(NULL);
      if(seconds + end >= start) break;       
    }
}


Ако използвам това , има ли опасност да ми зацикли програмата.

Автор:  Ники [ Нед Юни 21, 2009 4:15 pm ]
Заглавие: 

за делфи ползвам това sleep(x); x e в милисекунди.
въпреки че времената не винаги са стабилно фиксирани, според зависи кефа на виндовс, но върши работа

Автор:  RM [ Нед Юни 21, 2009 7:52 pm ]
Заглавие: 

Имам проблеми с празните цикли в програмата. Циклите от рода While(1){ if(timer_end)break;}; или for(;; ){ if(timer_end)break;}; ми създават главоболия. Като taimer_end го пиша 1 в Timer1. Когато свърши контера на таймера би следвало да ми сетне променливата в 1 и да ми излезе от цикъла, да ама не, цикъла се върти и таимера не работи през това време и не ми сетва променливата. Когато не влизам в безкраен цикъл таймера ми бачка.Трябва ми некво решение което да ми стопира програмата определено време и след това да продължава от там от където е спряна, нещо като пауза. Ще пробвам sleep();
И става..... Меси много!!!
Но трябва да видя как ще се държат евънтите от комуникацийте с ком порта.

Страница 1 от 1 Часовете са според зоната UTC + 2 часа [ DST ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/