Timer는 일정 시간 이후에 1회 실행될 작업, 매 일정 시간마다 실행될 작업 등을 위한 기능입니다.  
 More...
#include <Timer.hpp>
Timer는 일정 시간 이후에 1회 실행될 작업, 매 일정 시간마다 실행될 작업 등을 위한 기능입니다. 
Timer는 MCU에 내장된 하드웨어 타이머의 기능을 소프트웨어에서 사용하기 위한 API를 제공합니다. 
 
◆ isOneShot()
      
        
          | bool Timer::isOneShot  | 
          ( | 
          void  | 
           | ) | 
           | 
        
      
 
Timer가 1회성인지 확인합니다. 
- Returns
 - 작업함수를 1회만 호출하면 true 를, 반복적으로 호출하면 false 를 반환합니다. 
 
 
 
◆ isRunning()
      
        
          | bool Timer::isRunning  | 
          ( | 
           | ) | 
           | 
        
      
 
Timer가 활성화된 상태인지 확인한다. 
- Returns
 - 현재 활성화된 상태면 true 를, 아니면 false 를 반환합니다. 
 
 
 
◆ onFired()
      
        
          | void Timer::onFired  | 
          ( | 
          void(*)(void *)  | 
          func,  | 
        
        
           | 
           | 
          void *  | 
          args = nullptr  | 
        
        
           | 
          ) | 
           |  | 
        
      
 
타이머 만료시 실행시킬 작업함수를 지정합니다. 
작업함수 func 는 args 인자와 함께 호출됩니다.
- Parameters
 - 
  
    | func | 작업함수의 포인터  | 
    | args | 작업함수의 인자로 호출될 파라미터  | 
  
   
 
 
◆ startOneShot()
      
        
          | bool Timer::startOneShot  | 
          ( | 
          uint32_t  | 
          millis,  | 
        
        
           | 
           | 
          bool  | 
          interrupt = false  | 
        
        
           | 
          ) | 
           |  | 
        
      
 
작업함수를 millis 밀리초 이후 1회 실행합니다. 
- Parameters
 - 
  
    | millis | 작업을 실행하기 까지의 대기 시간(단위:밀리초). 최대 값은 4294967 밀리초입니다.  | 
    | interrupt | true 이면, 작업을 실행할 때 interrupt 모드에서 바로 실행합니다. 현재 실행 중인 작업을 중단하고 해당 작업을 실행하므로 타이밍이 중요한 응용에서 사용할 수 있습니다. false 이면, 스케줄러에 작업을 등록하고 현재 실행 중인 작업이 완료된 후 실행합니다. | 
  
   
- Returns
 - 타이머 등록 성공 여부 
 
- Warning
 - 인터럽트 모드에서는 다른 인터럽트의 실행이 불가능할 수도 있습니다. 따라서 인터럽트 모드를 사용하여 타이머를 실행할 경우, 시간이 오래걸리는 작업, I/O 등의 제어를 최소화하고 가능한 빨리 종료하여야 합니다. 
 
 
 
◆ startOneShotMicros()
      
        
          | bool Timer::startOneShotMicros  | 
          ( | 
          uint32_t  | 
          micros,  | 
        
        
           | 
           | 
          bool  | 
          interrupt = false  | 
        
        
           | 
          ) | 
           |  | 
        
      
 
작업함수를 micros 마이크로초 이후 1회 실행합니다. 
- Parameters
 - 
  
    | micros | 작업을 실행하기 까지의 대기 시간(단위: 마이크로초). 최대 값은 4294967295 마이크로초 입니다.  | 
    | interrupt | true 이면, 작업을 실행할 때 interrupt 모드에서 바로 실행합니다. 현재 실행 중인 작업을 중단하고 해당 작업을 실행하므로 타이밍이 중요한 응용에서 사용할 수 있습니다. false 이면, 스케줄러에 작업을 등록하고 현재 실행 중인 작업이 완료된 후 실행합니다. | 
  
   
- Returns
 - 타이머 등록 성공 여부 
 
- Warning
 - 인터럽트 모드에서는 다른 인터럽트의 실행이 불가능할 수도 있습니다. 따라서 인터럽트 모드를 사용하여 타이머를 실행할 경우, 시간이 오래걸리는 작업, I/O 등의 제어를 최소화하고 가능한 빨리 종료하여야 합니다. 
 
 
 
◆ startPeriodic()
      
        
          | bool Timer::startPeriodic  | 
          ( | 
          uint32_t  | 
          millis,  | 
        
        
           | 
           | 
          bool  | 
          interrupt = false  | 
        
        
           | 
          ) | 
           |  | 
        
      
 
작업함수를 매 millis 밀리초 주기로 반복하여 실행합니다. 
- Parameters
 - 
  
    | millis | 작업을 실행할 주기(단위:밀리초). 최대 값은 4294967 밀리초입니다.  | 
    | interrupt | true 이면, 작업을 실행할 때 interrupt 모드에서 바로 실행합니다. 현재 실행 중인 작업을 중단하고 해당 작업을 실행하므로 타이밍이 중요한 응용에서 사용할 수 있습니다. false 이면, 스케줄러에 작업을 등록하고 현재 실행 중인 작업이 완료된 후 실행합니다. | 
  
   
- Returns
 - 타이머 등록 성공 여부 
 
- Warning
 - 인터럽트 모드에서는 다른 인터럽트의 실행이 불가능할 수도 있습니다. 따라서 인터럽트 모드를 사용하여 타이머를 실행할 경우, 시간이 오래걸리는 작업, I/O 등의 제어를 최소화하고 가능한 빨리 종료하여야 합니다. 
 
 
 
◆ startPeriodicMicros()
      
        
          | bool Timer::startPeriodicMicros  | 
          ( | 
          uint32_t  | 
          micros,  | 
        
        
           | 
           | 
          bool  | 
          interrupt = false  | 
        
        
           | 
          ) | 
           |  | 
        
      
 
작업함수를 매 micros 마이크로초 주기로 반복하여 실행합니다. 
- Parameters
 - 
  
    | micros | 작업을 실행할 주기(단위: 마이크로초). 최대 값은 4294967295 마이크로초 입니다.  | 
    | interrupt | true 이면, 작업을 실행할 때 interrupt 모드에서 바로 실행합니다. 현재 실행 중인 작업을 중단하고 해당 작업을 실행하므로 타이밍이 중요한 응용에서 사용할 수 있습니다. false 이면, 스케줄러에 작업을 등록하고 현재 실행 중인 작업이 완료된 후 실행합니다. | 
  
   
- Returns
 - 타이머 등록 성공 여부 
 
- Warning
 - 인터럽트 모드에서는 다른 인터럽트의 실행이 불가능할 수도 있습니다. 따라서 인터럽트 모드를 사용하여 타이머를 실행할 경우, 시간이 오래걸리는 작업, I/O 등의 제어를 최소화하고 가능한 빨리 종료하여야 합니다. 
 
 
 
The documentation for this class was generated from the following file:
- libnola-publisher/libnola-common/include/Timer.hpp