5
\$\begingroup\$

Let's take MSP430G2553 as an example. If you look at the pinout in datasheet, you'll see:

  • P2.1/TA1.1
  • P2.2/TA1.1

One could think that those TA signals identical and multiplexed twice as a courtesy to folks doing PCB routing, but looking up pins in "Terminal Functions" table, it becomes clear that they are different:

  • P2.1/TA1.1: GPIO; Timer1_A, capture: CCI1A input, compare: Out1 output
  • P2.2/TA1.1: GPIO; Timer1_A, capture: CCI1B input, compare: Out1 output

So, when that capture/compare channel is used in compare mode, they are indeed identical. But for capture mode, they represent 2 different signals to start a capture, which one to use is selected in the control register. So the question is: Why so magic? Can someone decipher a usecase TI engineers had in mind while designing it? Don't get me wrong, it's cool to have twice more capture inputs, but if they're so nice, why don't put twice more real independent C/C channels?

Following up with the questions, suppose I have 6 P2 pins which have such C/C altfuncs (i.e. 3 channels, and 2 capture signals for each channel), and I need to use 3 of them for GPIO - what would be more flexible (future-proof, extensible) arrangement of pins? My obvious guess is that I should leave 3 independent C/C channels, and use "extra capture signal" pins for GPIO, but again, maybe I'm missing something?

\$\endgroup\$
4
\$\begingroup\$

It's just extra flexibility. TI goes to extremes when it comes to alternate functions for a single pin. Some pins on the MSP430G2553 have as many as 9 alternate functions. This is a part of the Timer_A diagram from the MSP430x2xx Family User's Guide (p. 365):

enter image description here

The CCISx select bits allow you to switch between two different timer capture signals.

\$\endgroup\$
  • \$\begingroup\$ So, is there any peculiar usecase when such 2 signals per channels would be useful, or is it just purely to squeeze 2x more capture signals into MCU design? Also, would you agree that leaving 3 independent C/C channels for future use is better, than say 2 channels, but one with both CCInA and CCInB signals available? (again, common sense says that fully independent are always better than ones with context dependencies ("A" and "B" can't be used at the same time, need to be switched sequentially), but I don't have enough HW design experience, so better be wary of missing something ;-) ). \$\endgroup\$ – pfalcon Aug 22 '12 at 11:55
  • \$\begingroup\$ @pfalcon - I agree, use as much as possible independent C/C channels. I don't have a particular use case for the two inputs, but when I would think a while it may come :-). Possibly TI never heard of customers using this either. \$\endgroup\$ – stevenvh Aug 22 '12 at 12:14
2
\$\begingroup\$

It would appear this was their purpose in the link below. I feel like capacitive sensing is a defining application for this range of microcontroller from TI's perspective. More than anything they didn't see a user need for so many compare modules, but depending on the capacitive touch resolution you want, you may be interested in as many capture modules as possible.

http://processors.wiki.ti.com/index.php/MSP430_Low_Cost_PinOsc_Capacitive_Touch_Overview

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.