--- Quote Start ---
I hope that you can solve my problem.
--- Quote End ---
No. You have to solve your own problems. However, we can help when you get stuck.
Push buttons are mechanical devices and they typically generate lots of transitions on the signal going to the FPGA, so you need to 'deglitch' the signals.
Here's what you can try to implement;
1) Synchronize the push-button signal to your FPGA clock. You can do this using a cascade of DFFs.
2) Implement a 'deglitch' circuit that detects whether the push-button signal has been low (or high) for at least a certain number of clocks. The output of the deglitch circuit should only change once the input has been high or low for that number of clocks (the number of clocks can be specified by a generic/parameter).
3) The deglitched push button signal goes to your counter enable, or to a finite-state-machine that in turn controls your counter enable.
Use the Modelsim simulator to create each component and test it. For example, you can start backwards, and work on the counter control FSM first. You can provide that logic with a clean push-button input signal and get it working. Then you can deal with the 'real-world' and create the logic needed to cleanup the push-button.
Cheers,
Dave