User`s manual

User’s Manual 35
3.8.3 Spectrum Spreader
Jackrabbit boards that carry the CE mark have a Rabbit 2000 microprocessor that features a
spectrum spreader, which helps to mitigate EMI problems. By default, the spectrum
spreader is on automatically for Jackrabbit BL1810 and BL1820 boards that carry the CE
mark when used with Dynamic C 7.32 or later versions, but the spectrum spreader may also
be turned off or set to a stronger setting. The spectrum spreader settings may be changed
through a simple configuration macro as shown below.
The spectrum spreader is off by default for Jackrabbit BL1800 models, and needs to be
enabled for them to be CE-compliant. To allow the flash memory and RAM chips to
accommodate the occasional higher frequencies associated with the spectrum spreader
being turned on for the Jackrabbit BL1800 models only, you will need at least one wait
state for both the flash memory and the RAM. The strong spectrum-spreading setting is not
needed for any Jackrabbit board.
The number of wait states is specified in the following code from the
LIB\BOARDTYPES
library. (There are 0 wait states by default.)
#ifndef NUM_RAM_WAITST
#define NUM_RAM_WAITST 0
#endif
#ifndef NUM_FLASH_WAITST
#define NUM_FLASH_WAITST 0
#endif
There is no spectrum spreader functionality for Jackrabbit boards that do not carry the CE
mark or when using any Jackrabbit with a version of Dynamic C prior to 7.30.
1. Select the “Defines” tab from the Dynamic C
Options > Project Options menu.
2. Normal spreading is the default, and usually no entry is needed. If you need to specify
normal spreading, add the line
ENABLE_SPREADER=1
For strong spreading, add the line
ENABLE_SPREADER=2
To disable the spectrum spreader, add the line
ENABLE_SPREADER=0
NOTE: The strong spectrum-spreading setting is not recommended since it may limit
the maximum clock speed or the maximum baud rate. It is unlikely that the strong set-
ting will be used in a real application.
3. Click OK to save the macro. The spectrum spreader will now remain off whenever you
are in the project file where you defined the macro.