eet 2261 unit 10 enhanced capture timer read almy, chapter 20. homework #10 and lab #10 due next...

54
EET 2261 Unit 10 Enhanced Capture Timer Read Almy, Chapter 20. Homework #10 and Lab #10 due next week. Quiz next week.

Upload: martin-sullivan

Post on 19-Jan-2016

220 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

EET 2261 Unit 10Enhanced Capture Timer

Read Almy, Chapter 20.

Homework #10 and Lab #10 due next week.

Quiz next week.

Page 2: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

• The Enhanced Capture Timer (ECT) block is used to control the timing of events under the HCS12’s control or to measure the timing of external events.

• Figure from p. 6 of textbook or page 23 of Device User Guide).

Enhanced Capture Timer (ECT) Block

Page 4: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

Special-Function Registers Associated with the ECT Block

• The 64 special-function registers located at addresses $0040 to $007F let us control the operation of the ECT block.

• See p. 30 of Device User Guide.

Page 5: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

• Circuits like the HCS12’s ECT are sometimes called timers, and are sometimes called counters (and are sometimes called timer/counters.)

• That’s because timing and counting are basically the same operation.

Is It a Timer or a Counter? It’s Both!

• “Timer” usually implies that we’re counting regularly spaced clock pulses.

• “Counter” suggests that we’re counting events that may be irregularly spaced, such as parts passing a sensor on a conveyor belt.

Page 6: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

• In past weeks we have often used delay loops to control the timing of certain events, such as the rate at which an LED blinks.

• Timers give us a different way to do this. Instead of using a delay loop, we can use a timer to tell when it’s time to toggle the LED.• If we use a delay loop, the CPU can’t do anything else while it’s

executing the delay code. By letting the timer hardware take care of the timing, the CPU can be freed up to do other things.

• From this point onward, we’ll usually use timers instead of delay loops.

An Example of a Timer Application

Page 7: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

Four Common Uses of the ECT

1. Detecting timer overflows.

2. Performing output compare (detecting when the timer reaches a certain value).

3. Performing input capture (recording the time at which an external event occurs).

4. Performing pulse accumulation (counting the number of times an external event occurs).

Page 8: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

Special-Function Registers That Control the Main Timer

• The ECT block actually includes several timer/counters. We’ll look first at the main timer, also known as the free-running timer.

• The following registers are the most important ones for using the main timer:• Timer System Control Register 1 (TSCR1)• Timer Count Register (TCNT)• Timer System Control Register 2 (TSCR2)• Main Timer Interrupt Flag Register 2 (TFLG2)

Page 9: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

Timer System Control Register 1 (TSCR1)

• The Timer Enable (TEN) bit in the TSCR1 register controls whether the main counter is turned on or off.

• Figure from p. 22 of ECT_16B8C Block User Guide, which also provides detailed explanation.

Page 10: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

Timer Count Register (TCNT)• The 16-bit TCNT register is the heart of the

main timer. It counts up from $0000 to $FFFF, then overflows back to $0000, and then repeats.

• Figure from p. 21 of ECT_16B8C Block User Guide, which also provides detailed explanation.

Page 11: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

The Prescaler• How often does the TCNT register count up

by 1? By default, its frequency is the same as the HCS12’s bus clock frequency.

• But a circuit called the prescaler lets us slow down the count rate by a factor of 2, 4, 8, 16, 32, 64, or 128.

• Example: Suppose the HCS12’s bus clock frequency is 24 MHz, and the prescaler is set to a factor of 16. How often does TCNT increase its count?

Page 12: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

Timer System Control Register 2 (TSCR2)

• Bits 0, 1, and 2 of the TSCR2 register control the prescaler.

• Figures from p. 26 of ECT_16B8C Block User Guide.

Page 13: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

Main Timer Interrupt Flag 2 (TFLG2)

• The only implemented bit in this register is the Timer Overflag Flag (TOF), which is automatically set to 1 whenever TCNT overflows from $FFFF to $0000.

• Figure from p. 28 of ECT_16B8C Block User Guide.

Page 14: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

• One way to tell when a timer overflow has occurred is to poll the TOF bit repeatedly until it is set, at which point the program proceeds to take some other action:

Here: BRCLR TFLG2, %10000000, Here

•Another way is to use a Timer Overflow interrupt instead of repeatedly polling the TOF bit.

• If we use polling, the CPU can’t do anything else while it’s polling the flag bit. If we use interrupts, the CPU is freed up to do other things.

Polling Versus Interrupts to Detect Timer Overflows

Page 15: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

• The Timer Overflow interrupt is enabled or disabled by the TOI bit in TSCR2:

• If this interrupt is enabled, then an interrupt will occur whenever the TOF bit is set:

Timer Overflow Interrupt

Page 16: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

• In the interrupt vector table, the word starting at $FFDE is reserved for the starting address of the service routine for Timer Overflow interrupts.

• Remember: the programmer is responsible for setting up the correct address in this vector table.

Interrupt Vector for Timer Overflow Interrupt

From table on page 75 of the Device User Guide. TYPO! This should say TOI, not TOF.

TYPO! This should say TSCR2, not TSRC2.

Page 17: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

Programming a TOF InterruptSkeleton of code for using TOF interrupt:

Page 18: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

Clearing the TOF Bit

• Once the Timer Overflag Flag (TOF) bit is set to 1, how does it get cleared back to 0?

• Whether we use polling or interrupts, it is the programmer’s responsibility to clear the flag bit. We do this by writing a 1 to the flag bit. (Seems odd, but that’s how it works for most flag bits in Freescale processors.)

Example: MOVB #$80, TFLG2

Page 19: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

Some Advice on Interrupts versus Polling

• In any program, choose either polling or interrupts, and stick with your choice. Don’t use both in the same program.

• Polling is usually easier for beginning programmers.

• Be sure not to enable interrupts you’re not planning to use, or else your program will end up in left field.

• Be careful when copy/pasting old code into a new program. Does the code you’re copying enable any interrupts?

Page 20: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

Some Advice on Interrupts versus Polling (continued)

• Whether you’re using polling or interrupts, don’t forget to reset flags after they get set.

• If you use interrupts in one program and then start working on another program, the interrupts you enabled in the first program may still be enabled when you run the second program.

• To avoid this, press RESET between programs. RESET clears most (or all?) interrupt enable bits.

Page 21: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

Some Advice on Interrupts versus Polling (continued)

• If you’re not sure whether your program is ever getting to a certain point when it runs, use a breakpoint.

• Example: Not sure whether the program ever gets to your interrupt service routine? Before you run the program, set a breakpoint on the first instruction in the service routine.

Page 22: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

Four Common Uses of the ECT

1. Detecting timer overflows.

2. Performing output compare (detecting when the timer reaches a certain value).

3. Performing input capture (recording the time at which an external event occurs).

4. Performing pulse accumulation (counting the number of times an external event occurs).

Page 23: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

Output Compare• The TOF bit lets us know when the main

timer overflows from $FFFF to $0000.

• Think of this as similar to an alarm clock that goes off every night at midnight.

• What if we’d like to know when a shorter time interval has passed? We can use the ECT block’s Output Compare channels.

• Think of these as similar to kitchen timers that we can set to beep after a specific amount of time has passed.

• The ECT block gives us eight of these.

Page 24: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

Special-Function Registers For Using the Output Compare Channels

• The following registers are the most important ones for using the output compare channels:• Timer Input/Output Select Register (TIOS)• Timer Input Capture/Output Compare Registers

0-7 (TC0, TC1, …, TC7)• Main Timer Interrupt Flag Register 1 (TFLG1)• Timer Interrupt Enable Register (TIE)• Timer Control Register 1 (TCTL1)• Timer Control Register 2 (TCTL2)

Page 25: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

Timer Input/Output Select Register (TIOS)

• As we’ll see, each output compare channel can also be used as an input capture channel. We use the TIOS register to say how we want to use each channel.

• 0 = input capture; 1 = output compare.

• Figure from p. 19 of ECT_16B8C Block User Guide.

Page 26: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

Timer Input Capture/Output Compare Registers 0-7 (TC0, TC1, …, TC7)

• Each output compare channel has a 16-bit register into which we can load a value. This value is constantly compared to the TCNT value. When the values match, we’ll be alerted that a match has occurred.

• Figure from p. 29 of ECT_16B8C Block User Guide.

Page 27: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

Main Timer Interrupt Flag Register 1 (TFLG1)

• This status register holds a compare flag for each output compare channel. A flag is set to 1 whenever there’s a match between the TCNT value and the value in the corresponding output compare register.

• Figure from p. 27 of ECT_16B8C Block User Guide.

Page 28: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

• One way to tell when an output compare has occurred is to poll a compare flag bit repeatedly until it is set, at which point the program proceeds to take some other action:

Here: BRCLR TFLG1, %00000001, Here

• Another way is to use an interrupt instead of repeatedly polling the compare flag bit.

Polling Versus Interrupts for Output Compare

Page 29: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

• Each timer channel has its own interrupt:

• Enabled or disabled by the bits in TIE:

• If one of these interrupts is enabled, then an interrupt will occur whenever the corresponding flag bit in TFLG1 is set:

Timer Channel Interrupts

Page 30: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

• In the interrupt vector table, eight words are reserved for the starting addresses of the service routines for Timer Overflow interrupts.

• Remember: the programmer is responsible for setting up correct addresses in the vector table.

Interrupt Vectors for Timer Channel Interrupts

From table on page 75 of the Device User Guide.

Page 31: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

Clearing the Compare Flag Bits

• Once a compare flag bit in TFLG1 is set to 1, how does it get cleared back to 0?

• Just as with the TOF bit, it is the programmer’s responsibility to clear the flag bit. (This is true whether we use polling or interrupts.) We do this by writing a 1 to the flag bit.

Example: MOVB #$01, TFLG1

Page 32: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

Outputting a Signal When There’s a Match

• We’ve seen that a match between the TCNT value and the value in an output compare register causes a compare flag bit in TFLG1 to be set to 1 (which may in turn cause an interrupt to occur).

• We can also configure the HCS12 to produce a signal on an I/O pin when there’s a match.

• The ECT block shares I/O pins with Port T.

Page 33: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

Timer Control Registers 1 and 2 (TCTL1 and TCTL2)

• These registers control whether a match causes an output signal, and if so, the nature of that signal.

• Figures from p. 23 of ECT_16B8C Block User Guide.

Page 34: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

Typical Use of the Output Compare Function

• Typically we use the output compare function when we want to be reminded at regular intervals to do something.

• Analogy: Suppose you wanted to use your alarm clock at home to remind yourself to eat a doughnut every 45 minutes. Here’s what you could do:

1. Read the clock to find out what time it is now.

2. Add 45 minutes to the current time, and set the alarm to go off at that time.

3. Do something fun, such as studying EET 2261.

4. When the alarm goes off, eat a doughnut.

5. Repeat by going back to Step 1.

Page 35: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

Steps in Programming the Output Compare Function

1. Initialize TSCR1 and TSCR2 for the free-running timer.

2. (Optional) Enable interrupts from the desired timer channel, and set up an interrupt vector in the vector table.

3. Initialize TIOS to select output compare for the desired channel.

4. Read TCNT to determine the current time.

5. Add the desired number to the value in Step 4, and store the result in the TCn register for the desired channel.

6. Either poll the CnF flag in TFLG1 to determine when TCn matches TCNT, or (if you’re using interrupts) do something else until an interrupt occurs.

7. When an interrupt occurs or your polling code detects that the CnF flag is set, take the desired action. Also clear the flag bit.

8. Repeat by going back to Step 4.

Page 36: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

Review: Four Common Uses of the ECT

1. Detecting timer overflows.

2. Performing output compare (detecting when the timer reaches a certain value).

3. Performing input capture (recording the time at which an external event occurs).

4. Performing pulse accumulation (counting the number of times an external event occurs).

Page 37: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

Input Capture• We can use the HCS12’s timer to record the

time at which external events happen. This lets us measure quantities like period and pulse width of input waveforms.

• To do this, we must configure one or more of the ECT channels as Input Capture channels instead of Output Compare channels.

• As noted earlier, the ECT channels share I/O pins with Port T.

Page 38: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

Special-Function Registers For Using the Input Capture Channels

• The following registers are the most important ones for using the input capture channels:• Timer Input/Output Select Register (TIOS)• Timer Input Capture/Output Compare Registers

0-7 (TC0, TC1, …, TC7)• Timer Control Register 3 (TCTL3)• Timer Control Register 4 (TCTL4)• Main Timer Interrupt Flag Register 1 (TFLG1)• Timer Interrupt Enable Register (TIE)

Page 39: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

Timer Input/Output Select Register (TIOS)

• We saw earlier that each channel has a bit in this register. • Set a bit to 0 if you want to use that channel for

input capture.• Set it to 1 if you want to use the channel for

output compare.

• Figure from p. 19 of ECT_16B8C Block User Guide.

Page 40: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

Timer Input Capture/Output Compare Registers 0-7 (TC0, TC1, …, TC7)

• We saw earlier how these 16-bit registers (one for each channel) are used during output compare. During input capture, when an external event occurs on a channel, the time (from TCNT) is loaded into that channel’s TCn register.

• Figure from p. 29 of ECT_16B8C Block User Guide.

Page 41: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

Timer Control Registers 3 and 4 (TCTL3 and TCTL4)

• These registers let us specify which type of event we’re looking for on input pins.

• Figures from p. 25 of ECT_16B8C Block User Guide.

Page 42: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

Main Timer Interrupt Flag Register 1 (TFLG1)

• We saw earlier how this status register is used during output compare. During input capture, when an external event occurs on a channel, the corresponding capture flag in this register is set.

• Figure from p. 27 of ECT_16B8C Block User Guide.

Page 43: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

• As we saw above, we can have an interrupt generated whenever a timer overflow occurs or whenever a compare occurs on an output compare channel.

• Similarly, when we’re using a channel to perform input capture, we can cause an interrupt to be generated whenever the channel captures an event.

Polling Versus Interrupts for Input Compare

Page 44: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

• As we saw earlier, each timer channel has its own interrupt, which is enabled or disabled by the bits in TIE:

• If one of these interrupts is enabled, then an interrupt will occur whenever the corresponding flag bit in TFLG1 is set:

Review: Timer Channel Interrupts

Page 45: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

• In the interrupt vector table, eight words are reserved for the starting addresses of the service routines for Timer Overflow interrupts.

• Remember: the programmer is responsible for setting up correct addresses in the vector table.

Review: Interrupt Vectors for Timer Channel Interrupts

From table on page 75 of the Device User Guide.

Page 46: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

Clearing the Capture Flag Bits

• Once a flag bit in TFLG1 is set to 1, how does it get cleared back to 0?

• Just as with flag bits discussed earlier, it is the programmer’s responsibility to clear the flag bit. (This is true whether we use polling or interrupts.) We do this by writing a 1 to the flag bit.

Example: MOVB #$01, TFLG1

Page 47: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

Steps in Programming the Input Capture Function

1. Initialize TSCR1 and TSCR2 for the free-running timer.

2. (Optional) Enable interrupts from the desired timer channel, and set up an interrupt vector in the vector table.

3. Initialize TIOS to select input capture for the desired channel. To be on the safe side, also initialize DDRT to make sure that the pin you’re using is configured as an input pin.

4. Initialize TCTL3 or TCTL4 to select the edge you wish to detect.

5. Either poll the CnF flag in TFLG1 to determine when an edge has arrived, or (if you’re using interrupts) do something else until an interrupt occurs.

6. Save TCn somewhere for use in a later step. Also clear the flag bit.

7. Either poll the CnF flag in TFLG1 to determine when an edge has arrived, or (if you’re using interrupts) do something else until an interrupt occurs.

8. Subtract the saved TCn value from the current TCn value. The result is the time between the two edges. Also clear the flag bit.

9. Repeat by going back to Step 5.

Page 48: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

Review: Four Common Uses of the ECT

1. Detecting timer overflows.

2. Performing output compare (detecting when the timer reaches a certain value).

3. Performing input capture (recording the time at which an external event occurs).

4. Performing pulse accumulation (counting the number of times an external event occurs).

Page 49: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

Pulse Accumulation• We can use the ECT to count the number of

times an external event happens. This is called pulse accumulation (also know as event counting.)

• The ECT gives us four 8-bit pulse accumulators, which use pins PT0, PT1, PT2, and PT3 as input pins.

• As noted earlier, the ECT shares I/O pins with Port T.

Page 50: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

Special-Function Registers For Using the 8-Bit Pulse Accumulators

• The following registers are the most important ones for using the 8-bit pulse accumulators:• Input Control Pulse Accumulators Register

(ICPAR)• Timer Control Register 4 (TCTL4)• Pulse Accumulator Count Registers 0, 1, 2, and

3 (PACN0, PACN1, PACN2, and PACN3)

Page 51: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

Input Control Pulse Accumulators Register (ICPAR)

• The four enable bits in the ICPAR let us turn on or off each of the 8-bit pulse accumulators.

• Figure from p. 37 of ECT_16B8C Block User Guide.

Page 52: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

Timer Control Register 4 (TCTL4)

• We saw earlier that the TCTL4 register (along with TCTL3) let us specify which type of event we’re looking for on input pins when we do input capture.

• It serves the samepurpose whenwe’re doing pulseaccumulation.

Page 53: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

Pulse Accumulator Count Registers 0, 1, 2, and 3 (PACN0, PACN1, PACN2, and PACN3)

• The PACNn registers hold the actual count for each pulse accumulator.

• Figure from p. 34 of ECT_16B8C Block User Guide.

Page 54: EET 2261 Unit 10 Enhanced Capture Timer  Read Almy, Chapter 20.  Homework #10 and Lab #10 due next week.  Quiz next week

16-Bit Pulse Accumulators• We can combine PACN3 and PACN2

together to form a 16-bit pulse accumulator named PACA.

• And we can combine PACN1 and PACN0 together to form a 16-bit pulse accumulator named PACB.