PSOC4 Timer Reload Input

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

cross mob
rbelli1
Level 1
Level 1
First reply posted First question asked Welcome!

Hello

In the datasheet for the PSOC4 timer component (TCPWM_P4_v2_10) There is a statement concerning the reload input:

"For all devices, except PSoC 4000, PSoC 4100, PSoC 4200, it should only be used when the counter is not running."

Does this exception apply to all of the 4000, 4100, and 4200 series? For example is the "4100S" series also included in this exception? What are the consequences of violating this condition? What is the recommended workaround for this?

Thanks

BoB

0 Likes
1 Solution
ncbs
Moderator
Moderator
Moderator
500 replies posted 50 likes received 250 sign-ins

Hello @rbelli1,

4100 and 4100S series are different families.

The component might enter into unknown states and have undefined/unexpected values in its registers.

You may use TCPWM _RestoreConfig(void); function to restore the initial functionality. Other API calls may be used based on your application.

Regards,
Nikhil

View solution in original post

0 Likes
3 Replies
ncbs
Moderator
Moderator
Moderator
500 replies posted 50 likes received 250 sign-ins

Hello @rbelli1,

4100 and 4100S series are different families.

The component might enter into unknown states and have undefined/unexpected values in its registers.

You may use TCPWM _RestoreConfig(void); function to restore the initial functionality. Other API calls may be used based on your application.

Regards,
Nikhil

0 Likes
rbelli1
Level 1
Level 1
First reply posted First question asked Welcome!

On the 4100S series is there an easy way to trigger this properly in hardware or should I use an interrupt and reset the timer in code? Or something else?

Thanks

BoB

0 Likes
ncbs
Moderator
Moderator
Moderator
500 replies posted 50 likes received 250 sign-ins

Hi @rbelli1,

You can restore the configuration/ reset the timer by both software and hardware methods:

> You can call TCPWM_Init(); or TCPWM_RestoreConfig(void);  based on certain conditions depending on your application.

> You can have an interrupt source and when an interrupt is received, TCPWM_Init(); or TCPWM_RestoreConfig(void); function call can be made. An easy way to generate interrupt would be to use the onboard button.
eg: SW2 button (P11.5) on PSoC 4100S Max Pioneer Kit.

> You may even have another board communicating with your board i.e., give instructions from another board to reset the timer block.

 

Regards,
Nikhil

0 Likes