28.02.2014 Views

Real-Time Programming Languages - Operating Systems

Real-Time Programming Languages - Operating Systems

Real-Time Programming Languages - Operating Systems

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Example: Watchdog<br />

01<br />

02<br />

03<br />

04<br />

05<br />

06<br />

07<br />

08<br />

09<br />

10<br />

11<br />

12<br />

13<br />

14<br />

15<br />

16<br />

protected Watchdog is<br />

pragma Interrupt_Priority (Interrupt_Priority'Last);<br />

entry Alarm_Control;<br />

-- Called by alarm handling task.<br />

procedure Call_In;<br />

-- Called by application code every 50ms if alive.<br />

procedure <strong>Time</strong>r(Event : in out Timing_Event);<br />

-- <strong>Time</strong>r event code, ie the handler.<br />

private<br />

Alarm : Boolean := False;<br />

end Watchdog;<br />

Fifty_Mil_Event : aliased Timing_Event;<br />

TS : <strong>Time</strong>_Span := Milliseconds(50);<br />

Set_Handler(Fifty_Mil_Event, TS, <strong>Time</strong>r);<br />

Burns,<br />

Wellings<br />

Ch. 15.2<br />

Page 364 f.<br />

WS 2013/14 <strong>Real</strong>-<strong>Time</strong> <strong>Systems</strong>, <strong>Real</strong>-<strong>Time</strong> Prog. <strong>Languages</strong> / Hermann Härtig 44

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!