This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Timer with TCLKIN external input configuration and frequency

Other Parts Discussed in Thread: ADS1278

Hello;

I am working with CCS v5 and with a Beaglebone Black, running my example into the CortxA8. I am trying to communicate with an 8-channel 24-bit ADC from T.I. (ADS1278). For that, I need to generate a 27 MHz clock in my Beaglebone. I want to do it using one of my DM Timers (Timer4, in this case). As it is impossible to generate that frequency using the internal clocks, I need to introduce an external clock from an oscilator to my beaglebone and reuse it to generate my own timer. However, I am having some troubles with the Starterware programming.

In theory, I have to change DMTimer4ModuleClkConfiguration() to select CM_DPLL_CLKSEL_TIMER3_CLK_CLKSEL_SEL1 instead of CM_DPLL_CLKSEL_TIMER3_CLK_CLKSEL_CLK_M_OSC (the "internal" clock).


Also, I have to configure the muxmode of TCLKIN pin in the P9 connector of the beaglebone. I configure it like this.

Hello;

I am working with CCS v5 and with a Beaglebone Black, running my example into the CortxA8. I am trying to communicate with an 8-channel 24-bit ADC from T.I. (ADS1278). For that, I need to generate a 27 MHz clock in my Beaglebone. I want to do it using one of my DM Timers (Timer4, in this case). As it is impossible to generate that frequency using the internal clocks, I need to introduce an external clock from an oscilator to my beaglebone and reuse it to generate my own timer. However, I am having some troubles with the Starterware programming.

In theory, I have to change DMTimer4ModuleClkConfiguration() to select CM_DPLL_CLKSEL_TIMER3_CLK_CLKSEL_SEL1 instead of CM_DPLL_CLKSEL_TIMER3_CLK_CLKSEL_CLK_M_OSC (the "internal" clock).


Also, I have to configure the muxmode of TCLKIN pin in the P9 connector of the beaglebone. I configure it like this.

    /* Setup up pinmux for TCLK  muxmode 2*/
         HWREG(SOC_CONTROL_REGS + CONTROL_CONF_XDMA_EVENT_INTR(1)) =
                   (2 << CONTROL_CONF_XDMA_EVENT_INTR0_CONF_XDMA_EVENT_INTR0_MMODE_SHIFT)    |
                   (0 << CONTROL_CONF_XDMA_EVENT_INTR0_CONF_XDMA_EVENT_INTR0_PUDEN_SHIFT)    |
                   (1 << CONTROL_CONF_XDMA_EVENT_INTR0_CONF_XDMA_EVENT_INTR0_PUTYPESEL_SHIFT)|
                   (1 << CONTROL_CONF_XDMA_EVENT_INTR0_CONF_XDMA_EVENT_INTR0_RXACTIVE_SHIFT) |
                   (0 << CONTROL_CONF_XDMA_EVENT_INTR0_CONF_XDMA_EVENT_INTR0_SLEWCTRL_SHIFT);


However, with these changes the program does not work. How can I configure the Timer4 to use an external TCLKIN? And, what might be even more important, which are the limits in frequency that can work with the TCLKIN option?