User manual
ECE 477 Final Report Spring 2004
10.0 Software Design Considerations
Group five’s project, the Wireless Ordering Device, is a tool which is aimed for a
commercial industry. This device, about the size of a coaster, will have an LCD screen interface
that will allow customers waiting to be seated the chance to order and have drinks and appetizers
waiting at their table when they are ready to sit. However, the project is not simply confined to
the device itself. It needs to be able to communicate to a computer, which means it will need a
separate hardware receiver to enable communication to a base computer. Both the mobile device
and the base device will need to be programmed separately, and a program written for the base
computer that will tabulate orders received from the base module, which it will talk to via serial
port. That makes 3 separate software packages in total, each with its own complexities.
Software Design Considerations
Memory Models
On the base module, there is ample memory so that efficiency is of little to no concern.
Application code will only take a fraction of the available flash, and there is ample extra memory
to store a small character buffer when receiving data from the wireless unit. Data received from
the wireless unit will amount to a character string less than 20 characters long, containing only
the ID of the device and a memory address corresponding to the location of the memory map that
the name of the ordered item is located. A copy of the memory map will be on both the wireless
device and the base computer, so the base computer can decode and display the appropriate text
string.
Memory on the mobile module will be a little tighter. First of all, a memory map will
need to be implemented in the LCD’s extended memory, which will be discussed further in the
next section. Program code will take a little more space, but because of the memory mapping
scheme, there should be sufficient room. The alternative to a memory map was to create linked
list data structures for the menu structure, which more than likely would have taken too much
room, and would have easily overflowed the stack.
Memory Maps
-32-