Using a counter to reduce pin counts for SPI slave selection
The typical way to do this is with a demux or decoder 3 to 8 decoder.

However, in your case you would need 3 signals to produce the 5 chip select lines using this approach(you actually get 8 outputs for 3 inputs).

Your approach has merit also, as long as your not sending data while you are cycling through your chip select options.  Most counters have a preset line or some method of clearing them on startup.