12.07.2015 Views

80C186EB/80C188EB Microprocessor User's Manual - CEUNES

80C186EB/80C188EB Microprocessor User's Manual - CEUNES

80C186EB/80C188EB Microprocessor User's Manual - CEUNES

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.

TIMER/COUNTER UNITsti;enable interruptspop si ;restore saved registerspop dxpop axpop bp ;restore caller’s bpret_set_time endptimer_2_interrupt_routine proc farpush ax ;save registers usedpush dxcmp _msec, 99 ;has 1 sec passed?jae bump_second ;if above or equal...inc _msecjmp short reset_int_ctlbump_second:mov _msec, 0 ;reset millisecondcmp _minute, 59 ;has 1 minute passed?jae bump_minuteinc _secondjmp short reset_int_ctlbump_minute:mov _second, 0 ;reset secondcmp _minute, 59 ;has 1 hour passed?jae bump_hourinc _minutejmp short reset_int_ctlbump_hour:mov _minute, 0 ;reset minutecmp _hour, 12 ;have 12 hours passed?jae reset_hourinc _hourjmp reset_int_ctlreset_hour:mov _hour, 1 ;reset hourreset_int_ctl:mov dx, EOImov ax, 8000h ;non-specific end of interruptout dx, alpop dxpop axirettimer_2_interrupt_routine endplib_80186endsendExample 9-1. Configuring a Real-Time Clock (Continued)9-20

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

Saved successfully!

Ooh no, something went wrong!