I am using the STM32 Nucleo-073RZ board to count the number of pulses provided on one of the GPIO pins of the STM32. I searched on the internet and found that using the Timer/Counter of STM32 will do this work but there is one problem, that is, I need to count pulses continuously say for 10 days and as my signal is of 10KHz so in 1 second STM32 will have 10000 values but timer available in the mentioned board is only 16-bit(65535). Hence I need two help:
1) How to start working with Timer/Counter for external pulses in STM32
It is quite well explained in the datasheet/reference guide for the chip.
2) How to count millions of pulses with 16-bit available Timer/Counter in STM32
Quick help would be highly appreciated
You can daisy-chain multiple counters on STM32 (depends on which counter and which chip - check the doc!). You can also always have an interrupt triggered on overflow where you advance your own in-memory counter, which can be as wide as you want. A 32bit variable + 16 bit hw counter will give you a 48bit counter - at 10kHz good for almost 900 years before it overflows.
16bit hardware counter and 10kHz signal that gives you one interrupt per 6.5 seconds or so, any microcontroller should be able to handle that with no issues.
This is completely bog standard approach on every MCU.