POSIF Interface problem

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Not applicable
I am trying to use the POSQE001 [1.0.12] app.

it works fine until I select SignalConfigurations->ExternalEvent->EnableClearOnIndex

Dave generates code with a not defined Macro in POSQE001_Conf.c:

const POSQE001_EventConfigType PosCntEvt2_Inst0 =
{
.EventType = POSQE001_EXT_STOP,
.ActiveEdge = POSQE001_EVT_RISING,
};

Also I think this macro should be set to POSQE001_EXT_STOP = 2. Even If I think this is not the right way to clear the counter on index.

Any Ideas how to get the counters cleared on every index ?
0 Likes
7 Replies
Not applicable
Hi VTrapp,

We had submitted a change request for this. Will let you know once it is fixed.
Meanwhile, I have forwarded your question on "how to get the counters cleared on every index" to my colleague who has experience on this.

Best regards,
Sophia
0 Likes
Not applicable
Thanks Sopia,

meanwhile worked it out. Counters will be cleared on every index by doing the following
modifications:

// Einstellungen um in diesem Mode die Register mit jedem Index zu loeschen
// QDC |= 0x20 ICM all Index on OUT3
POSQE001_Handle0.PosifModulePtr->QDC |= 0x20;

CCU4SliceRegPtr = POSQE001_Handle0.CCUSliceConfigPtr[0]->SliceAddress;
// 0x00850054
CCU4SliceRegPtr->INS = 0x00950654; // EV2IS = CCU40IN0G, EV2M = Rising,
// 0x0001600
CCU4SliceRegPtr->TC = 0x00001500; // ENDM = Flush
CCU4SliceRegPtr->CMC = 0x0000480C; // CMC ENDS Event 2

this is just a quicky.
0 Likes
Not applicable
I have the same problem. Where should i apply this modifications? Can you explain me better please?
Best Regards,
Bruno
0 Likes
Not applicable
Hi Bruno,

I think they should be placed in main.c after DAVE_Int(). Maybe just have a try...

Best regards,
Zain
0 Likes
Not applicable
Zain is right,

just put the code somewhere behind DAVE_Init().
0 Likes
Not applicable
I added the function static void POSQE001_lStartCCUSlice(const POSQE001_SliceConfigType* SliceConfigPtr) and it worked out!!!

Thanks a lot.
Bets Regards,
Bruno
0 Likes
Not applicable
Hi,
In the end with your help i solved the problem. I added the code in the end of the function static void POSQE001_lStartCCUSlice(const POSQE001_SliceConfigType* SliceConfigPtr)
and it works.
Thanks a lot.
0 Likes