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.

TMS320F280049C: HLC not working

Part Number: TMS320F280049C

Tool/software:

Hi Experts,

My customer is using CLB to implement QEP function. Where the Z pulse of QEP is used to trigger HLC interrupt.

However, they found the HLC is not working. 

The use case is like:

HLC input3: external Z pulse (As CLB input 5)

HLC program for intput3: mov C0 to R0; INTR5

1. As we run the program, we observe counter0, R0 and the CLB interrupt Tag(Flag inside the CLB module, not peripheal interrupt flag) ,

We found C0 is increasing but R0 remains 0. And the interrupt Tag remains 0. The HLC still has no effect.

2. Then, we checked the input signal. We routed the Z pulse (CLB input 5) to another counter (Counter1), we set up the Counter1 properly so that it can count the Z pulse rising edge. 

It turns out that the counter1 is increasing as expected as Z pulse comes. However, the HLC still has no effect.

3. Then, we tried the CLB example ex11 which contains HLC functions, and it works normally.

To conclude, every module in CLB is working properly except for the HLC. There should be some initialization problem in CLB.

My question is that what's special about HLC and does it needs extra care in initilization?

If would be very difficult to use ex11 because the customer use coff and a lot of registers structs. We would like to check the CLB status to see if HLC has been initialized properly. Could you share the key registers for HLC to work properly?

  • Hi Hang,

    There should be no special considerations for initializing the HLC. Could you try observing the register differences between CLB example 11 and the customers configuration, specifically related to HLC?

    Did you customer enable the CLB clock?

    Thank you,

    Luke