The Ultimate Alarm Clock
Due to the flexible nature of our system's architecture, future improvements are easy to implement. The many keys on the keypad as well as the flexibility of the LCD display allow a large number of additional functions. Plans for additional software complexity were circumvented by debugging the basic features we had implemented. There are a few things we would do differently next time, especially with the knowledge we have now that required many hours of debugging. Problems with powering the LED display, strobing at the correct rate, properly debouncing the keyboard while strobing the display, and program logic led to delays which prevented further functionality. The following is a list of features we either intended to implement or had thought would be useful in future versions of the alarm clock.
The alarm clock can be set with multiple alarms, so that a person does not have to change their normal wake-up alarm if they want to take a nap. It can also be set with alarms that are associated with dates. A person could set an alarm to go off only on a certain day. These features would be relatively easy to implement. Essentially, the different alarm times could be stored in a vector in memory, and the memory location could be checked on each minute increment. To store a precise alarm on a date would merely require allocating more memory to store it more precisely.
Future improvements could also yield the day of the week displayed with the calendar date. One could easily imagine a person setting an early alarm for Monday through Friday, but not having it set for the weekend. The person would be reliably woken up for work each day, and not have to worry about being awoken early on the weekends or forgetting to reset the alarm Sunday night. Once again, this would only require software improvements to decode the day based on the date.
Webpage created by Joel Avrunin ('01) and Philip Weiss ('00).
Created May 4, 2000. Last updated May 6, 2000.