Title: 5.4 RTOS ??
1Chapter 05???? ????? ?? ????
- 5.1 ????? ??
- 5.2 ???? ????? ??
- 5.3 ??????? ??
- 5.4 RTOS ??
- 5.5 ??? ????? ??? ??
2???? ????? ??
- ????? ???? ?? ??
- ???? ??
- ?????? ???? ?? ??
- Task code
3???? ????? ??? ???? ?? ??
- ??? ?? ???? ??? ???? ????
4????? ??
- ?? ??? ??
- ???? ??? ???? ????? ????? ???? ??? ??
- ??? ?? ????? ?????, ???? ???? ??? ?? ??? ?? ??
- e.g. ??? ????, ??? ??, ????? etc.
5????? ??? ???? ??
- ???? ????? ?? ??? ?? ?? ?? ?? ????? ??? ??
- ??? ??? ? ??? ???? ??
- ? ??? ???? ??
- ?? ??? ??
6??? ?? ??? ?
- void main (void)
-
- while (TRUE)
-
- if (!! I/O ?? A? ???? ?????)
-
- !! I/O ?? A? ?? ??? ?? ????.
- !! ???? I/O ?? A? ????? ????.
-
- if (!! I/O ?? B? ???? ?????)
-
- !! I/O ?? B? ?? ??? ?? ????.
- !! ???? I/O ?? B? ????? ????.
-
.???? . if (!! I/O ?? Z? ???? ?????)
!! I/O ?? Z? ?? ??? ?? ????. !! ???? I/O ??
Z? ????? ????.
7???? ????? ??
- ????? ??? ???? ?? ??
- ????
- ?? ??? ?? ??
- ???? ??? ?? ISR? ??
- ???? ?? ?, ??? Task Code flag ??
- Task Code ??, flag reset
- Task code ?? ? ???? ??? ???? ?? ??
- ??
- ISR? main? task code ???? ??? ?? ??? ??? ? ??
- ?? ??? ???? ??? ????? ???
8???? ????? ??? ?
- ???? ????? ??? ?
- BOOL fDeviceA FALSE
- BOOL fDeviceB FASLSE
- .
- .
- .
- BOOL fDeviceZ FALSE
- Void interrupt vHandleDeviceA (void)
-
- !! I/O ?? A? ????
- fDeviceA TRUE
-
void interrupt vHandleDeviceB (void) !! I/O
?? B? ???? fDeviceB TRUE . . . void
interrupt vHandleDeviceZ (void) !! I/O ?? Z?
???? fDeviceZ TRUE
9???? ????? ??? ? (Contd)
- void main (void)
-
- while (TRUE)
-
- if (fDeviceA)
- fDeviceA FALSE
- !! I/O ?? A? ???? ?? ??? ?? ??
-
-
if (fDeviceB) fDeviceB FALSE
!! I/O ?? B? ???? ?? ??? ?? ??
. . . if (fDeviceZ)
fDeviceZ FALSE !! I/O ?? Z? ???? ??
??? ?? ??
10????? ??? ?? ?? ?? ??
11??????? ??? ??
- ISR? ???? ??? ???? ? ??(??)? ?? ???? ?? ?? ????.
- ?? ??? ?? ???? ??? ???? ????.
- ???? ??? ???? ???? ?? ??? ??? ???? ? ??? ??.
- ?, ?? ??? ???? ??? ????? ??? ??? ? ??.
- ??? ?? ?? ??? ?? ?? ??? ?? ? ??? ?? ?? ISR? ??
?? - ?? ? ??? ? ?? ??? ?, ?? ??? ?? ?? ????? ???? ??
- ?? ?? ??? ??? ??? ????? ???, ?? ?? ??? ??? ?????
??? ? ? ?? (??) - ?? ?? ??? ??? ??? ???? ??? ???? ??(??)
- ??? ?? ??
12??????? ??
- ??????? ??? ?
- !! ?? ????? ?
- void interrupt vHandleDeviceA (void)
-
- !! I/O ?? A? ?? ??? ?? ??
- !! function_A ? ?? ?? ???? ?? ????? ?? ??
-
- void interrupt vHandeDeviceB (void)
-
- !! I/O ?? B? ?? ??? ?? ??
- !! function_B ? ?? ?? ???? ?? ????? ?? ??
void main (void) while (TRUE) while
(!!?? ????? ?? ?? ?? ? ???)
!! ?? ?? ? ?? ?? ?? void
function_A (void) !! ?? A ?? ??? ?? ?? void
function_B (void) !! ?? B ?? ??? ?? ??
135.4 RTOS ??
- RTOS ??? ?
- void interrupt vHandleDeviceA (void)
-
- !! I/O ?? A? ?? ??? ?? ????
- !! ??? X? ????
-
- void interrupt vHandleDeviceB (void)
-
- !! I/O ?? B? ?? ??? ?? ????
- !! ??? Y? ????
-
- .
- .
- .
void Task1 (void) while (TRUE) !! ??? X?
???? !! I/O ?? A??? ???? ??? ?? void Task2
(void) while (TRUE) !! ??? Y? ???? !!
I/O ?? B??? ???? ??? ??
14RTOS(Real-Time Operating System)? ?? ???? ???
- ???? ??? ??? ???? ??? ???? ??? RTOS? ?? (??????
?? ????) - ?? ???? ??? ?? ? ??? ??? ???? ??? ? (?????? ??
????) - ? ??? ?? RTOS? ??? ??? ?
- RTOS? ?? ????? ???? ???, ?? ?? ?? ????? ?? ?? ??
? ?? (RTOS? ??) - RTOS? ISR? ?? ?? ?? ?? ???, ??? ??? ?? ??? ?? ??
15RTOS ??? ??
- RTOS ??? ???? ??
- RTOS ?? ??
- RTOS ??? ???? ???? ??? ?? ??
16RTOS ??? ?? ?? ?? ??
17??? ????? ??? ??
????? ?? ?? ?? ?? ?? ?? ??? ??? ?? ??? ?? ?? ?? ??? ???? ? ??? ??? ???
????? ??? ?? ??? ??? ? ?? ?? ?? ??
???? ????? ????? ?? ???? ???, ?? ?? ?? ??? ?? ??? ?? ?? ??? ??? ?? ??(??? ???? ?? ?? ??) ???? ??? ???? ??, ??? ??? ???? ?? ?? ???? ??? ??? ?? ?? ?? ??? ??? ???? ?
??? ???? ????? ?? ???? ???, ????? ?? ??? ?? ?? ? ??? ?? ?? (??? ???? ??? ?? ??) ????? ?? ?? ??? ??? ???? ??, ?? ?? ??? ??? ???? ?
RTOS ????? ?? ???? ???, ????? ?? ??? ?? ?? ?? ??? ??(???? ??? ????? ??? ?) ?? ?? ?? ??? ???(???? ??? ??? ???? ?? ??? ??)
185.5 ??? ????? ??? ??
- ????? ???? ?? ??? ??? ??? ? ?? ??? ??? ??
- ???? ??? ????? ?? ??? ???? ???, ?? ???? ??? ???
??? ???? ??? ????? ??? ?? ???? ?? - ?? ????? ???? RTOS? ???? ? ??? ?? ?? ??? ??? ???,
RTOS ??? ???? ???? ??? ?? ? - ???? ?? RTOS? ???? ??? ??, ???? ?? ? ? ?? ??? ???
?? ?? - ??? ?? ?? ???(?????, ???? ?????, )? ??? ??? ??
?? ??
19??
- ?? ??? ????? ??? ????? ??? ?? ??? ????.
- ? ?? ????? ?? ??? ??? ? 5.1? ?? ??.
- ?????, ??? ?? ?? ?? ??? ??? ??? ?? ??.
- RTOS ??? ?? ?? ??? RTOS? ?? ????, ?? ??? ????
??? ?? ???? ??? ? ?? ??? ???. - ?? ???? ? ?? ??? ?? ???? ?? ??? ??? ?? ??.