TIMER/COUNTER UNIT
9-18
Example 9-1. Configuring a Real-Time Clock
$mod186
name example_80186_family_timer_code
;FUNCTION:
This function sets up the timer and interrupt controller
;
to cause the timer to generate an interrupt every
;
10 milliseconds and to service interrupts to
;
implement a real time clock.
;
;
Timer 2 is used in this example because no input or
;
output signals are required.
;
;SYNTAX:
extern void far set_time(hour, minute, second, T2Compare)
;
;INPUTS:
hour - hour to set time to.
;
minute - minute to set time to.
;
second - second to set time to.
;
T2Compare - T2CMPA value (see note below)
;
;OUTPUTS:
None
;NOTE:
Parameters are passed on the stack as required by
;
high-level languages
;
;
For a CLKOUT of 16Mhz,
;
;
f(timer2)
= 16Mhz/4
;
= 4Mhz
;
= 0.25us for T2CMPA = 1
;
;
T2CMPA(10ms)
= 10ms/0.25us
;
=
10e-3/0.25e-6
;
= 40000
;substitute register offsets
T2CON
equ xxxxh
;Timer 2 Control register
T2CMPA equ xxxxh
;Timer 2 Compare register
T2CNT
equ xxxxh
;Timer 2 Counter register
TCUCON equ xxxxh
;Int. Control register
EOI
equ xxxxh
;End Of Interrupt register
INTSTS equ xxxxh
;Interrupt Status register
timer_2_int
equ 19
;timer 2:vector type 19
data segment public ’data’
public _hour, _minute, _second, _msec
_hour db ?
_minute db ?
_second db ?
_msec db ?
data ends
Summary of Contents for 80C186EA
Page 1: ...80C186EA 80C188EA Microprocessor User s Manual...
Page 2: ...80C186EA 80C188EA Microprocessor User s Manual 1995...
Page 19: ......
Page 20: ...1 Introduction...
Page 21: ......
Page 28: ...2 Overview of the 80C186 Family Architecture...
Page 29: ......
Page 79: ......
Page 80: ...3 Bus Interface Unit...
Page 81: ......
Page 129: ......
Page 130: ...4 Peripheral Control Block...
Page 131: ......
Page 139: ......
Page 140: ...5 ClockGenerationand Power Management...
Page 141: ......
Page 165: ......
Page 166: ...6 Chip Select Unit...
Page 167: ......
Page 190: ...7 Refresh Control Unit...
Page 191: ......
Page 205: ......
Page 206: ...8 Interrupt Control Unit...
Page 207: ......
Page 239: ...INTERRUPT CONTROL UNIT 8 32...
Page 240: ...9 Timer Counter Unit...
Page 241: ......
Page 265: ......
Page 266: ...10 Direct Memory Access Unit...
Page 267: ......
Page 295: ...DIRECT MEMORY ACCESS UNIT 10 28...
Page 296: ...11 Math Coprocessing...
Page 297: ......
Page 314: ...12 ONCE Mode...
Page 315: ......
Page 318: ...A 80C186 Instruction Set Additions and Extensions...
Page 319: ......
Page 330: ...B Input Synchronization...
Page 331: ......
Page 334: ...C Instruction Set Descriptions...
Page 335: ......
Page 383: ...INSTRUCTION SET DESCRIPTIONS C 48...
Page 384: ...D Instruction Set Opcodes and Clock Cycles...
Page 385: ......
Page 408: ...Index...
Page 409: ......