Specifications
29
7. LCD Screen- This driver must support functions like activate and deactivate display,
initialize screen, write characters, move curser, and clear screen.
8. Push Buttons- This driver handles the de-bouncing and behavior of the bu ttons.
The final output of this driver is that a particular b utton was pr essed. This r esult is
found by integrating a timer and external interrupts. Finally, the driver must support
multi-rate button responses.
9. Internal Flash Memory Controller- T his driver enables access to code memory
space. This is used for fi rmware updates and non-volatile configurations storage. The
driver must support writing and erasing on memory sizes smaller the one flash block.
10. Serial F lash- This driver must handle the low level USART communications sup-
ported by the MCU. All memory operations (reading, wr iting, erasing, checking s ta-
tus, etc.) must be accessible. Th is drive must format and interpret data packets
appropriately.
3.3.2 Memory Management Layer
The Memory Management Layer abstracts the specifics of the memory drivers and
promotes memory access to a file level. Not all of the existing memory in system is requ ired
to be under the control of this layer. Only m emory that is available for application use or
is meant to be externally visib le must be managed here. There must be two different file
types specified for this system. The first is part of a low-overhead, proprietary file system
used by Acclima. The second is standard FAT16/32 file types [35].
Acclima File Type Support
There are a number of files that are specified for this layer. Following is a brief intro-
duction to these files and their purpose: