[[]]
 
Available Languages?:
Table of Contents

OSAcfg.h:

// Р           šÐ            ¾Ð            »Ð            ¸Ð           ¡‡Ð            µÐ           ¡�Р          ¡‚Р           ²Ð            ¾ 8-Р          ¡€Ð            °Ð            ·Ð           ¡€Ð           ¡�Р           ´Ð            ½Ð           ¡‹Ð           ¡… Р          ¡‚Р           °Ð            ¹Ð            ¼Ð            µÐ           ¡€Ð            ¾Ð            ²
#define OS_TIMERS8    5
// Р           šÐ            ¾Ð            »Ð            ¸Ð           ¡‡Ð            µÐ           ¡�Р          ¡‚Р           ²Ð            ¾ 16-Р          ¡€Ð            °Ð            ·Ð           ¡€Ð           ¡�Р           ´Ð            ½Ð           ¡‹Ð           ¡… Р          ¡‚Р           °Ð            ¹Ð            ¼Ð            µÐ           ¡€Ð            ¾Ð            ²
#define OS_TIMERS16   2
// Р           šÐ            ¾Ð            »Ð            ¸Ð           ¡‡Ð            µÐ           ¡�Р          ¡‚Р           ²Ð            ¾ 24-Р          ¡€Ð            °Ð            ·Ð           ¡€Ð           ¡�Р           ´Ð            ½Ð           ¡‹Ð           ¡… Р          ¡‚Р           °Ð            ¹Ð            ¼Ð            µÐ           ¡€Ð            ¾Ð            ²
#define OS_TIMERS24   0
// Р           šÐ            ¾Ð            »Ð            ¸Ð           ¡‡Ð            µÐ           ¡�Р          ¡‚Р           ²Ð            ¾ 32-Р          ¡€Ð            °Ð            ·Ð           ¡€Ð           ¡�Р           ´Ð            ½Ð           ¡‹Ð           ¡… Р          ¡‚Р           °Ð            ¹Ð            ¼Ð            µÐ           ¡€Ð            ¾Ð            ²
#define OS_TIMERS32   1

ID

ID

enum OSA_TIMERS_ENUM
{
            // 8-Р           ±Ð            ¸Ð           ¡‚Р           ½Ð           ¡‹Ð            µ
    T8_TIMER0,
    T8_TIMER1,
    T8_TIMER2,
    T8_TIMER3,
    T8_TIMER4,
            // 16-Р           ±Ð            ¸Ð           ¡‚Р           ½Ð           ¡‹Ð            µ
    T16_TIMER0,
    T16_TIMER1,
            // 24-Р           ±Ð            ¸Ð           ¡‚Р           ½Ð           ¡‹Ð            µ
 
            // 32-Р           ±Ð            ¸Ð           ¡‚Р           ½Ð           ¡‹Ð            µ
    T32_TIMER0
};

IDOS_RunTimerX

OS_Init

// Р           žÐ            Ð          ¡€Ð            µÐ            ´Ð            µÐ            »Ð            µÐ            ½Ð            ¸Ð           ¡� Р           ² OAScfg.h
#define OS_ENABLE_TIMER
#define OS_TIMERS8  1
 
enum OS_TIMERS_ENUM {
   T8_Timer                  // Р           ¢Ð            °Ð            ¹Ð            ¼Ð            µÐ           ¡€ Р           ´Ð            »Ð           ¡� Р           ²Ð           ¡‹Ð            ´Ð            µÐ            »Ð            µÐ            ½Ð            ¸Ð           ¡� Р           ºÐ            ²Ð            °Ð            ½Ð           ¡‚Р           ° Р           ²Ð           ¡€Ð            µÐ            ¼Ð            µÐ            ½Ð            ¸ Р           ·Ð            °Ð            ´Ð            °Ð           ¡‡Ð            µ Р           Ð           ¾Ð            ¸Ð           ¡�Р           ºÐ            °
}
 
----------------------------------------------------------------------
 
// Р           ¤Ð           ¡€Ð            °Ð            ³Ð            ¼Ð            µÐ            ½Ð           ¡‚ Р           Ð          ¡€Ð            ¾Ð            ³Ð           ¡€Ð            °Ð            ¼Ð            ¼Ð           ¡‹ (Р           Ð          ¡€Ð            µÐ            ´Ð            Ð           ¾Ð            »Ð            °Ð            ³Ð            °Ð            µÐ            ¼, Р          ¡‡Ð           ¡‚Р           ¾ Р           ¸Ð            ½Ð           ¡‚Р           µÐ           ¡€Ð            ²Ð            °Ð            » OS_Timer = 1 ms)
OST_MSG msg_cb, msg_cb2;
 
void Task1 (void)
{
    OST_MSG msg;
    static unsigned long Data;
    for (;;) {
        ...
        OS_Msg_Send(msg_cb, (OST_MSG)&Data);    // Р           �Р          ¡ƒÐ            ¶Ð            ½Ð            ¾ Р           ½Ð            °Ð            ¹Ð           ¡‚Р           ¸ Р           ´Ð            °Ð            ½Ð            ½Ð           ¡‹Ð            µ Data
        OS_Msg_Wait(msg_cb2, msg);              // Р           –Р           ´Ð            µÐ            ¼ Р           ·Ð            °Ð            ²Ð            µÐ           ¡€Ð           ¡ˆÐ            µÐ            ½Ð            ¸Ð           ¡� Р           Ð           ¾Ð            ¸Ð           ¡�Р           ºÐ            °
        ...
    }
}
 
 
void Task_SearchData (void)
{
    OST_SMSG msg;
    static unsigned long Data;
    static unsigned long Addr;
 
    for (;;) {
       OS_Msg_Wait(msg_cb, msg);
       Data = (unsigned long)(*msg);
 
       OS_RunTimer(T8_Timer, 10);                 // Р           —Р           °Ð            Ð          ¡ƒÐ           ¡�Р          ¡‚Р           ¸Ð           ¡‚Р          ¡Œ Р          ¡‚Р           °Ð            ¹Ð            ¼Ð            µÐ           ¡€ Р           ½Ð            ° 10 Р           ¼Ð           ¡�
       for (Addr = 0; Addr < MAX_ADDRESS; Addr++) {
           if (MemoryRead(Addr) == Data) {        // Р           •Р          ¡�Р           »Ð            ¸ Р           ½Ð            °Ð           ¡ˆÐ            »Ð            ¸ Р           ½Ð           ¡ƒÐ            ¶Ð            ½Ð           ¡‹Ð            µ Р           ´Ð            °Ð            ½Ð            ½Ð           ¡‹Ð            µ,
               OS_Msg_Send(msg_cb2, (OST_MSG)&Addr); // Р           ¾Ð           ¡‚Р           Ð          ¡€Ð            °Ð            ²Ð            ¸Ð           ¡‚Р          ¡Œ Р          ¡�Р           ¾Ð            ¾Ð            ±Ð           ¡‰Ð            µÐ            ½Ð            ¸Ð            µ Р           ¸ Р           ²Ð           ¡‹Ð            ¹Ð           ¡‚Р           ¸ Р           ¸Ð            · Р          ¡†Ð            ¸Ð            ºÐ            »Ð            °
               break;
           }
           if (OS_Oldtimer_Check(T8_Timer)) {         // Р           ¢Ð            °Ð            ¹Ð            ¼Ð            µÐ           ¡€ Р           Ð           µÐ           ¡€Ð            µÐ            Ð           ¾Ð            »Ð            ½Ð            ¸Ð            »Ð           ¡�Р          ¡�?
                OS_Yield();                       // Р           ŸÐ            µÐ           ¡€Ð            µÐ            ´Ð            °Ð           ¡‚Р          ¡Œ Р          ¡ƒÐ            Ð          ¡€Ð            °Ð            ²Ð            »Ð            µÐ            ½Ð            ¸Ð            µ Р           Ð           »Ð            °Ð            ½Ð            ¸Ð           ¡€Ð            ¾Ð            ²Ð           ¡‰Ð            ¸Ð            ºÐ           ¡ƒ
                OS_RunTimer(T8_Timer, 10);        // Р           —Р           °Ð            Ð          ¡ƒÐ           ¡�Р          ¡‚Р           ¸Ð           ¡‚Р          ¡Œ Р          ¡‚Р           °Ð            ¹Ð            ¼Ð            µÐ           ¡€ Р          ¡�Р           ½Ð            ¾Ð            ²Ð            °
           }
       }
       if (Addr == MAX_ADDRESS) {                 // Р           •Р          ¡�Р           »Ð            ¸ Р           ½Ð            µ Р           ½Ð            °Ð           ¡ˆÐ            »Ð            ¸ Р           ´Ð            °Ð            ½Ð            ½Ð           ¡‹Ð           ¡…
            Addr = 0xFFFFFFFF;
            OS_Msg_Send(msg_cb2, (OST_MSG)&Addr);    // Р           žÐ           ¡‚Р           Ð          ¡€Ð            °Ð            ²Ð            »Ð           ¡�Р           µÐ            ¼ -1
       }
    }
}

msg_cbTask_Search

OS_Timer
1 ms
10 ms
18.2 ms
256 us
512 us
1024 us
2048 us
4096 us
8192 us

OS_Oldtimer_Run8 (timer8_id, time) appendix
OS_Oldtimer_Run16 (timer16_id, time) appendix
OS_Oldtimer_Run24 (timer24_id, time) appendix
OS_Oldtimer_Run32 (timer32_id, time) appendix
OS_Oldtimer_Stop (timer_id) appendix
bool OS_Oldtimer_Check (timer_id) appendix
OS_Oldtimer_Wait (timer_id) appendixappendixappendix
 
en/osa/ref/appendix/static_timers_old.txt · Last modified: 07.10.2010 13:58 (external edit)
 
Creative Commons License Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki