Other Parts Discussed in Thread: C2000WARE
Hi. I am using C2000Ware 1.00.04.00.
It seems to me, i found an error in configuring analog inputs of cmpss.
Functions ASysCtl_selectCMPHPMux and ASysCtl_selectCMPLPMux.
Before write to register field, this functions clears certain field like this:
(HWREG(ANALOGSUBSYS_BASE + ASYSCTL_O_CMPLPMXSEL) &
~((uint32_t)ASYSCTL_CMPLPMXSEL_CMP1LPMXSEL_M << (uint32_t)select))
But the text in bold is missing. So while configuring for cmp6 (select equal 16) or greater, we shift 16 bit value to 16 and get 0.
But as result, its clear 0-2 bits of cmp1hp (don't know why, cause we just apply to register inverse mask of 0, e.i. 0xFFFF).
With uint32_t all works fine.
So error in two functions: ASysCtl_selectCMPHPMux and ASysCtl_selectCMPLPMux.
Thanks.