Cypress CY4672 Espresso Maker User Manual


 
56 CY4672 Reference Design Guide, Document # 001-16968 Revision **
Keyboard
4.3 Firmware Architecture
There are two architectural views of the keyboard. The first is a microcontroller configuration view of
user modules. This architecture and configuration is best viewed in the PSoC Designer™ application
when the project is loaded. The second view is a logical organization of the source code modules
that make up the keyboard application code and other support modules.
The next few sections describe both architectures with emphasis on top level organization and over-
all module operation. More detailed description of variables and functions may be obtained by refer-
encing the source code.
4.3.1 ROM/RAM usage
The following table shows the ROM/RAM usage. The top part exhibits the total ROM/RAM usage for
basic functions, which disables all the build options below. The bottom part exhibits the ROM/RAM
usage for individual build options.
*The ENCRYPT_TEA option needs 64 bytes extra Flash space to store the non-volatile session key.
4.3.2 enCoRe II Device Configuration
The enCoRe II LV is configured using the Device Editor in PSoC Designer. The Device Editor allows
the Global Resources for the part and user module parameters to be configured. The keyboard uses
two separate user modules. The first module is an SPI master for communicating with the radio. The
second module is a Programmable Interval Timer configured to operate as a 12-bit timer. The follow-
ing is a screen capture of the Device Editor showing the User Module mapping. Further description
of resources and User Modules follow the diagram.
Table 4-2. ROM/RAM Usage
Total ROM
(Bytes)
Total RAM
(Bytes)
Basic Functions 5861 127
Build Option
ROM Usage
(Bytes)
RAM Usage
(Bytes)
KEYBOARD_MULTIMEDIA_SUPPORT 756 1
KEYBOARD_TEST_MODES 339 1
KEYBOARD_BATTERY_VOLTAGE_SUPPORT 179 1
ENCRYPT_DATA TEA* 871 13
ENCRYPT_DATA AES 563 37
MOUSE_EMULATION_MODE 610 1
MFG_TEST_CODE 532 0
MFG_TX_MODES 707 1
BACK_CHANNEL_SUPPORT 185 5
[+] Feedback