DeviceDataPtr in ResetCounter and similar methods

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 
已解决

DeviceDataPtr in ResetCounter and similar methods

跳至解决方案
1,607 次查看
luisgallegos
Contributor III

Hello.

I am using the TimerUnit_LDD and I enabled the ResetCounter method to generate it's code. I then dragged the ResetCounter method from the Component window on the right, on the drop-down list of the TimerUnit_LDD, to insert it in my code. This generated the following code:

     ComponentName_ResetCounter();

With no arguments. However, when I try to build my code it returns the error "too few arguments to function ComponentName_ResetCounter". Hovering over the method in the Component Inspector, I see that this function requires the argument "LDD_TDeviceData *DeviceDataPtr" and that it is a "Device data structure pointer returned by Init method". However, looking through the code I can't seem to find what this data pointer value is.

I know this is a simple method which I could do on my own just assigning a 0 to the CNT register, but this data pointer seems to be necessary for other more complicated methods.

Does anyone have some reference as to what this pointer is?

Also, how can the EventMask values be set and used?

I am new to Processor Expert, so these are probably very basic questions.

Thanks.

标签 (1)
1 解答
1,209 次查看
vfilip
NXP Employee
NXP Employee

Hello,

you can find more details on method usage in the component´s help or in FSL info-center web:

Freescale Technical Information Center

Another way, that is not mentioned in the help, could be usage of the DeviceDataPtr defined in the component´s header file if Autoinitialization property is set to yes.

best regards

Vojtech Filip

Processor Expert Support Team

在原帖中查看解决方案

4 回复数
1,209 次查看
luisgallegos
Contributor III

Hello.

Thanks for the reference.

Guess I wasn't looking close enough and missed that.

Thanks again.

0 项奖励
回复
1,210 次查看
vfilip
NXP Employee
NXP Employee

Hello,

you can find more details on method usage in the component´s help or in FSL info-center web:

Freescale Technical Information Center

Another way, that is not mentioned in the help, could be usage of the DeviceDataPtr defined in the component´s header file if Autoinitialization property is set to yes.

best regards

Vojtech Filip

Processor Expert Support Team

1,209 次查看
kiven
Contributor II

Hello,

I have the same problem that Luis had, but I just cant figure out whats going on with my code.

Im using a TimerUnit to make 2 PWM signals, one on each channel (0 & 1), and I want to change the offset values by using SetOffsetTicks method.

My code is this one:

TU2_SetOffsetTicks(LDD_TDeviceData *DeviceDataPtr, uint8_t 0, TU2_TValueType 25000);

cause it didn't work I tried with this one:

TU2_SetOffsetTicks( LDD_TDeviceData *TU2_TDeviceDataPtr, uint8_t 0, TU2_TValueType 25000);

The errors that I get are these ones:

../Sources/Events.c: In function 'AS1_OnRxChar':  //*****************Im trying to use this method (SetOffsetTicks) inside this Serial communication event but even if I try to use it in the main code I still get this.

../Sources/Events.c:101:26: error: expected expression before 'LDD_TDeviceData'

mingw32-make: *** [Sources/Events.o] Error 1

I have Auto initialization enabled.

How do I fix this?

Thanks in advance.

0 项奖励
回复
1,209 次查看
Petr_H
NXP Employee
NXP Employee

You seem to have incorrect syntax of the function call. The function needs to be called without the parameter type names.

Like this:

TU2_SetOffsetTicks(TU2_DeviceData, 0, 25000);

best regards

Petr Hradsky

Processor Expert Support Team