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.

TMS570LC4357: PCNT in HWAG

Part Number: TMS570LC4357
Other Parts Discussed in Thread: LAUNCHXL2-570LC43

Hi team,

Referenced doc: spnu653a, and the development board LAUNCHXL2-570LC43 is being used.

1) The HWAPCNT register is readable and writeable as shown in the figure below: 

In the actual test, input gear signals HWAGCR0[0]=1 and HWAGCR2[0]=1, and write any data to HWAPCNT, read the HWAPCNT register N times in a row. PCNT was found to be writeable, but the data was not validated, and PCNT was not incremented from the specified data. Can PCNT be written? 

2) No gear signal is entered for actual test, PCNT1 is 0, PCNT is incremented continuously which meets PCNT(n)>2xPCNT(n-1). However, the interrupt flag "Singularity found during normal tooth" is not generated and HWAFLG[4] is always 0. If writing to PCNT at this point, you can see that PCNT has not changed from the specified value and then is incremented, and HWAFLG[4] is still 0. HWAFLG[4] is set if the HWAG receives a valid edge on the tooth signal.

May I know what the interrupt flag Singularity found during normal tooth is related to, apart from setting WAGCR2[16] and satisfying the relationship with PCNT(n)>2xPCNT(n-1)? 

Could you help check this case? Thanks.

Best Regards,

Cherry

  • Hi Cherry,

    We started working on your issue and will provide an update soon.

    --

    Thanks & regards,
    Jagadish.

  • Hi Cherry,

    In the actual test, input gear signals HWAGCR0[0]=1 and HWAGCR2[0]=1, and write any data to HWAPCNT, read the HWAPCNT register N times in a row. PCNT was found to be writeable, but the data was not validated, and PCNT was not incremented from the specified data. Can PCNT be written? 

    Yes, PCNT can be written but remember this register can only be start incremented after the specified active edge triggered.

    The active edge (falling or rising) is selected by setting the TED bit in the HWAG global control register 2 (HWAGCR2).  At active edge it will first copy the PCNT register value to the previous period register (HWAPCNT1) and then PCNT register will becomes zero and start counting the period.

    So, you can't write to this register for the first time(means no active edge given yet). Because in this condition it won't start increment from that value instead of it just copies that value to the previous period register and starts counting from zero, so you can write to this register in between two active edges only.

    --

    Thanks & regards,
    Jagadish.