Abstract:
The controller may be equipped with a user interface that allows the user to monitor and adjust various parameters of the controller. With more modern designs, the user interface typically comprises a liquid crystal display (LCD) or light emitting diode (LED) display inset within a controller housing that contains a microprocessor or the like, an I/O interface, and other components of the controller. The user interface may include a menu-driven interface that allows the user to scroll through one or more menus or screens to adjust the different settings on the controller. In some cases, a routine programmed within the controller prompts the user at each menu or screen to input various commands into the interface to adjust the controller settings.

Description:
This application is a continuation of U.S. patent application Ser. No. 10/725,826, filed Dec. 2, 2003 and entitled CONTROLLER INTERFACE WITH SEPARATE SCHEDULE REVIEW MODE, the entirety of which is incorporated hereby by reference. 
    
    
     FIELD OF THE INVENTION 
     The present invention relates generally to the field of programmable controllers for homes and/or buildings and their related grounds. More specifically, the present invention relates to controller interfaces for such controllers having a separate schedule review mode. 
     BACKGROUND OF THE INVENTION 
     Controllers are used on a wide variety of devices and systems for controlling various functions in homes and/or buildings and their related grounds. Some controllers have schedule programming that modifies device parameters such as set points as a function of date and/or time. Some such device or system controllers that utilize schedule programming for controlling various functions in homes and/or buildings and their related grounds include, for example, HVAC controllers, water heater controllers, water softener controllers, security system controllers, lawn sprinkler controllers, and lighting system controllers. 
     In a typical HVAC application, for example, such controllers can be employed to monitor and, if necessary, control various environmental conditions occurring within a home or office building. The controller may include a microprocessor that interacts with other components in the system to regulate the temperature, humidity, venting, and/or air quality occurring at one or more locations. An internal sensor located within the controller and/or one or more remote sensors may be employed to sense when the temperature and/or humidity level reaches a certain threshold level, causing the controller to send a signal to activate or deactivate one or more components in the system. 
     The controller may be equipped with a user interface that allows the user to monitor and adjust various parameters of the controller. With more modern designs, the user interface typically comprises a liquid crystal display (LCD) or light emitting diode (LED) display inset within a controller housing that contains a microprocessor or the like, an I/O interface, and other components of the controller. The user interface may include a menu-driven interface that allows the user to scroll through one or more menus or screens to adjust the different settings on the controller. In some cases, a routine programmed within the controller prompts the user at each menu or screen to input various commands into the interface to adjust the controller settings. 
     In certain designs, the user interface can be configured to permit the user to program the controller to run on a certain schedule. For example, the controller can include a scheduling routine that allows the user to adjust the heat and cool set points for one or more periods during a particular day in order to conserve energy. To view the parameters for the schedule, many controllers require the user to initiate an editing mode within the controller, causing the controller to display the parameters for the selected day and/or period along with prompts for modifying the parameters. Within the editing mode, the user can scroll through the various schedule parameters and, if desired, modify the schedule according to the user&#39;s needs or preferences. After the user has finished viewing the current settings and has made any desired modifications to the schedule, the user can then send a signal to the controller to either save the modified parameters in memory, or terminate the scheduling routine and discard any changes made. 
     Because many controllers require the user to initialize an editing mode in order to display the current schedule parameters, users are often wary of interacting with the interface. The user may fear making inadvertent changes or canceling the schedule altogether by pressing the wrong button on the interface while the controller is in the editing mode. In some cases, the user may be concerned with interfering with the normal operation of the controller, or with modifying other controller settings. As such, there is a need in the art to provide a controller having a user interface that allows the user to display the current scheduling parameters without the risk or fear of accidental schedule modification. 
     SUMMARY OF THE INVENTION 
     The present invention pertains to controllers having a separate schedule review mode. In one illustrative embodiment, a method of accessing a schedule in a controller equipped with a user interface may include the steps of: initializing a scheduling routine within the controller having a separate schedule review mode and editing mode, initiating the schedule review mode within the controller, displaying one or more schedule parameters on the user interface, and exiting the scheduling routine. In some embodiments, the editing mode can be initiated at any time during the scheduling routine, including after the schedule review mode has been initiated, or directly from the controller&#39;s normal operation mode by bypassing the schedule review mode altogether. 
     The controller may include a user interface that can be used for both displaying and modifying various parameters within the controller. For example, the user interface can include a touch screen, display panel/keypad, or any other suitable device adapted to transmit various commands to and from the controller. A number of mechanical and/or soft buttons may be configured to accept input commands from the user. In certain embodiments, the user interface can include a menu-driven interface that allows the user to navigate through one or more menus or screens to modify various operational settings within the controller. The menu-driven interface may include a number of icons (e.g. descriptive buttons) prompting the user to input various commands with, for example, the touch screen or keypad. In certain embodiments, the controller can include a separate schedule review mode that allows the user to access and view the schedule parameters without the risk or fear of accidental schedule modification. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG. 1  is a flow chart of an illustrative method for accessing and programming a schedule on a controller equipped with a user interface; 
         FIG. 2  is a block diagram of an illustrative HVAC system employing a controller having a separate schedule review mode; 
         FIG. 3  is a flow chart showing an illustrative scheduling routine for a controller having a separate schedule review mode; 
         FIG. 4  is a flow chart showing another illustrative schedule routine for a controller having a separate schedule review mode; 
         FIG. 5  is a plan view of an illustrative HVAC controller equipped with a touch screen interface; 
         FIGS. 6A-6N  are pictorial views showing an illustrative method of accessing and programming a schedule using the touch screen interface of  FIG. 5 ; 
         FIG. 7  is a plan view of another illustrative HVAC controller equipped with a display panel and keypad interface; and 
         FIGS. 8A-8M  are pictorial views showing an illustrative method of accessing and programming a schedule using the display panel and keypad interface of  FIG. 7 . 
     
    
    
     DETAILED DESCRIPTION OF THE INVENTION 
     The following description should be read with reference to the drawings, in which like elements in different drawings are numbered in like fashion. The drawings, which are not necessarily to scale, depict illustrative embodiments and are not intended to limit the scope of the invention. Although examples of various programming and operational steps are illustrated in the various views, those skilled in the art will recognize that the many of the examples provided have suitable alternatives that can be utilized. While the various devices, systems and methods illustrated herein are described specifically with respect to HVAC controllers, it should be understood that the present invention can be employed in other applications where schedules are implemented, including, for example, security systems, lighting systems, sprinkler or drip water systems, audio/video (A/V) systems, etc. 
     Referring now to  FIG. 1 , a flow chart showing an illustrative method of viewing a schedule programmed within a controller equipped with a user interface is shown. As shown in  FIG. 1 , the method, indicated generally by reference number  10 , can begin with the step of initializing a scheduling routine within the controller that allows the user to view and, if desired, modify one or more parameters within a schedule. In an illustrative HVAC system for use in a home, for example, the controller can be configured to initialize a scheduling routine that allows the user to view and modify one or more periods during the day corresponding with the times during the day that the user wakes, leaves home, returns home, and sleeps. For example, the controller may include a separate “wake” period, “leave” period, “return” period, and “sleep” period that can be programmed within the schedule to conserve energy while the user is away from home or asleep. 
     Within each period, the controller can include various event time and set point parameters that can be utilized to regulate various environmental conditions within a particular space. In certain embodiments, for example, the controller may include a heat set point parameter and cool set point parameter that can be utilized to regulate the amount of heating and/or cooling occurring within the home. The controller may further include a fan mode parameter that can be set to operate the fan in a particular manner during each period. For example, the controller can be configured to operate the fan constantly during each selected period (i.e. an “On Mode”) or automatically as needed (i.e. an “Auto Mode”) during each selected period. Other parameters such as the humidity level, frost level, air quality, etc. may also be regulated via the controller. The particular parameter(s) regulated by the controller will, of course, vary depending on the type of system in which the device is employed. 
     As will be described in greater detail below, the scheduling routine can include a separate schedule review mode that allows the user to display one or more of the schedule parameters on the user interface without having to initiate an editing mode within the controller. The inclusion of a separate review mode allows the user to view the current schedule stored in memory without the risk of inadvertently modifying or canceling the current schedule settings. 
     From a normal controller operation mode indicated generally by block  12 , the user may initialize a scheduling routine within the controller that allows the user to view the current schedule parameters stored in memory, and, if desired, modify one or more of the parameters to create a new schedule. To initialize the scheduling routine, the user may send a request to the controller via the user interface, causing the controller to initiate a schedule review mode that displays the current settings on the user interface. Initialization of the schedule review mode may occur, for example, when the user presses a button on a touch screen or keypad, speaks a command, or otherwise sends a signal to the controller. 
     When the schedule review mode is initiated, the controller can be configured to access and display the current day and period settings for the schedule via the user interface, as indicated generally by blocks  14  and  16 . For example, if the current time and day is 7:00 AM on Wednesday, the controller can be configured to display the “wake” period parameters for Wednesday upon initiating the schedule review mode. 
     To view other selected days and/or periods within the current schedule, the user may select each day and/or period, causing the controller to access and display the parameters for the selected day and/or period, as indicated generally by blocks  18  and  20 . The user can select each day individually within the schedule review mode to view the schedule parameters for each period without modification. If, for example, the user is currently viewing the parameters for Wednesday during the “wake” period, the user can select other individual days within the week (e.g. Tuesday) to view the schedule parameters for that day&#39;s “wake” period. Within each individual day selected, the user can select each period to display the parameters scheduled to occur for that day. At any point during the schedule review mode, the user can send a signal to the controller to terminate the scheduling routine and return to the normal controller operation mode indicated by block  12 . 
     To modify one or more of the schedule parameters, the user can initiate an editing mode within the controller, as indicated generally by block  22 . The user can initiate the editing mode by, for example, pressing an “edit” button on a touch screen, keypad or other input device, sending a signal to the controller to initiate the editing mode. 
     Upon initiation of the editing mode, the user interface can be configured to display a message that prompts the user to select the day or days that are to be modified in the schedule. As the first day is selected, the various periods in the schedule are then displayed on the user interface, as indicated generally by block  24 . At this step, the user may select one or more days during the week to modify the schedule. For example, the user may select to run the schedule on alternating days of the week, during only the weekdays or weekends, or any other desired combination. The controller can be configured to notify the user of each day or combination of days selected using, for example, a check mark, blinking text, or suitable indicator on the user interface. 
     The controller interface can be configured to default to one of the periods upon selecting the first day, displaying the schedule parameters for that particular day and period on the user interface. For example, if the user selects Monday as the first day to modify in the schedule, the controller can be configured to display the parameters for the “wake” period on the user interface. In certain embodiments, the controller can be configured to default to the period last modified in the schedule, or to the period following the last period modified in the schedule. 
     Once the user has selected one or more days to be modified, the user can then modify one or more of the parameters for each selected period, as desired, causing the controller to display the new parameters on the user interface. At any time during this process, the user may assign/un-assign the schedule parameters to/from additional days of the week. If desired, the user may choose to cancel the modified parameters by hitting a “cancel” button or other similar command on the user interface, causing the controller to terminate the schedule routine and discard the modified parameters, as indicated generally by block  26   
     After the user has finished modifying the schedule, the user can send a signal to the controller to save the modified settings, as indicated generally by block  28 . Once the modified schedule parameters have been saved, the controller can be configured to terminate the scheduling routine and revert to the normal controller operation mode indicated by block  12 . Once saved, the controller can be configured to automatically run the modified schedule. 
       FIG. 2  is a block diagram of an illustrative HVAC system  30  employing a controller  32  having a separate schedule review mode and editing mode. The illustrative controller  32  includes a processor  34  (e.g. a microprocessor/CPU), a storage memory  36 , a clock  38 , and an I/O interface  40  that electrically connects the controller  32  to other system components  42 . In an illustrative HVAC system for use in a home, for example, controller  32  can be electrically connected to an air conditioner unit, a heater unit, and/or a humidifier/dehumidifier unit that can be selectively activated or deactivated to regulate the temperature and humidity levels within the structure. Other components such as a filtration unit, a UV lamp, a defroster, a flue damper, and/or a ventilator (including Energy Recovery Ventilator “ERV”) can also be connected to the controller  32 , as desired. An internal sensor  44  may be located within the controller  32 , and can be employed to constantly measure the temperature and/or humidity levels occurring within the structure. In certain designs, the controller  32  can include one or more remote sensors configured to measure the temperature and humidity levels outside of the home, or at other locations apart from the controller  32 . 
     The controller  32  can be equipped with a user interface  46  that can be used to transmit signals to and from the controller  32 . The user interface  46  can include a touch screen, LCD panel and keypad, computer (e.g. a PDA), or any other suitable device for sending and receiving signals to and from the controller  32 . In certain embodiments, the user interface  46  may include a menu-driven interface that allows the user to cycle through one or more menus or screens to view and, if desired, modify various operational settings within the controller  32 . For example, the controller  32  can be pre-programmed to run separate routines for adjusting the current temperature or humidity levels, changing the clock or date settings on the controller  32 , setting a vacation mode that can be used while the user is away, or checking the status of the various system components connected to the controller  32 . The menus or screens corresponding to a particular routine can be organized from general to more specific, providing the user with only pertinent information at each step during the routine. 
       FIG. 3  is a flow chart showing an illustrative scheduling routine  48  for a controller having a separate schedule review mode. As shown in  FIG. 3 , the scheduling routine  48  may begin with a normal controller operation mode  50 . From the normal controller operation mode  50 , the user can initiate a schedule review mode  52  within the controller, causing the controller to access the schedule parameters stored in memory and display them on the user interface. In this mode, the controller can be configured to allow the user to browse the various schedule parameters programmed in controller without the risk of accidental modification or cancellation of the schedule. From the schedule review mode, the user may either terminate the scheduling routine, causing the controller to revert to the normal controller operation mode  50 , or initiate an editing mode  54  to modify one or more of the schedule parameters. Once finished viewing and/or modifying the schedule parameters, the controller can be configured to revert back to the normal controller operation mode  50 . 
     In an alternative scheduling routine  56  illustrated in  FIG. 4 , the controller can be configured to permit the user to bypass the schedule review mode  60  and initiate the editing mode  62  directly from the normal controller operation mode  58 . As shown in  FIG. 4 , for example, the user may either initiate a schedule review mode  60  within the controller to view the various schedule parameter programmed in the current schedule, or bypass the schedule review mode  60  and initiate the editing mode  62  directly from normal controller operation mode  58 . 
       FIG. 5  is a plan view illustrating an exemplary HVAC controller  64  equipped with a user interface  66  having a separate schedule review mode. As shown in  FIG. 5 , the interface  64  can include a touch screen  68  configured to display information and transmit signals to and from the controller  64 . Some examples of suitable touch screens  68  for use with the controller  64  may include resistive, capacitive, infrared, or surface acoustic wave (SAW) type touch screens. While the touch screen  68  of  FIG. 5  is shown inset or recessed within a controller housing  70 , other configurations are possible. In some embodiments, the touch screen  68  may be provided as a separate element for use with a personal digital assistant (PDA), PC computer, or other remote device. In certain embodiments, the touch screen  68  can be provided as a part of an LCD panel, CRT, or other suitable display device. 
       FIGS. 6A-6M  illustrate pictorial views showing an illustrative method of accessing and programming a schedule using the controller  64  and user interface  66  of  FIG. 5 . In a first view depicted in  FIG. 6A , the controller  64  can be configured to display a main menu screen on the touch screen  68 , providing the user with basic information about the current operational status of the controller  64 . The main menu screen may be the default screen that appears on the touch screen  68  when the controller  64  is initially activated, after a loss of power has occurred, or after no activity has been detected by the user interface  66  for a certain period of time (e.g. after 1 minute of non-activity). 
     In the illustrative embodiment, the controller  64  is configured to display a current inside temperature parameter  72  (in either ° F. or ° C.), a current outside temperature parameter  74  (in either ° F. or ° C.), a time of day parameter  76 , and a day of week parameter  78  on the touch screen  68 . The current heat/cool set point parameter  80  may also be displayed on the touch screen  68 , indicating the temperature at which the controller  64  is currently set to maintain. An alphanumeric message  82  displayed on the touch screen  68  may be provided to inform the user whether the controller  64  is currently following the schedule. 
     A set of up/down buttons  84  displayed on the touch screen  68  can be pressed, if desired, to temporarily change the current heat/cool set point parameter  80  to a setting different from that contained in the schedule. A fan mode button  86  and system mode button  88  displayed on the touch screen  68  allow the user to view and, if desired, modify the fan and system settings. For example, and in the illustrative embodiment, the fan mode button  86  can be pressed repeatedly to cycle the fan between an “On Mode”, “Intermittent Mode”, and “Auto Mode”, allowing the user to control the operation of the fan. In similar fashion, the system mode button  88  can be pressed repeatedly to cycle the controller  64  through various heating and cooling modes, as desired. 
     A “SCHED” button  90  located on the touch screen  68  can used to initialize a scheduling routine within the controller  64  to access and/or modify one or more parameters within the current schedule. When the “SCHED” button  90  is pressed, the controller  64  can be configured to initiate a schedule review mode, causing the controller  64  to access the current schedule parameters and display them on the touch screen  68 . As shown in  FIG. 6B , for example, the controller  64  can be configured to access the event time parameter  92 , heat set point parameter  94 , and cool set point parameter  96  for the current schedule, and then display these parameters as alphanumeric text on the touch screen  68 . 
     In the illustrative embodiment, a series of buttons  98  located on the top of the touch screen  68  correspond to the days of the week, and can be pressed to send a signal to the controller  64  to display the schedule parameters for each individual day in the schedule. An icon, blinking text or other suitable indicator for informing the user the current day selected may be displayed on the touch screen  68 . For example, in the pictorial view illustrated in  FIG. 6B , an icon  100  (e.g. check mark) may be displayed on the touch screen  68 , informing the user that the schedule parameters for Wednesday are currently being displayed. 
     The controller  64  can be configured to default to the current day of the week when the schedule review mode is initiated. For example, if the current time and day is 7:00 AM on Wednesday, the controller  64  can be configured to display the “wake” period parameters for Wednesday on the touch screen  68 . To view the schedule parameters for other days of the week, the user may press the appropriate day button  98  on the touch screen  68 , causing the controller  64  to display the corresponding parameters for that selected day. 
     Within each selected day, the user may press one or more period buttons on the touch screen  68 , causing the controller  64  to display the parameters scheduled for that day. The touch screen  68  may include, for example, a “WAKE” button  102 , a “LEAVE” button  104 , a “RETURN” button  106 , and a “SLEEP” button  108  that correspond to a separate “wake” period, “leave” period, “return” period, and “sleep” period programmed in the controller  64 . In the pictorial view depicted in  FIG. 6B , for example, the “LEAVE” button  104  has been pressed (indicated generally by bold), causing the controller  64  to display the event time parameter  92  (i.e. 8:00 AM), heat set point parameter  94  (i.e. 62° F.) and cool set point parameter  96  (i.e. 85° F.) corresponding to the “leave” period. 
     While four periods are specifically illustrated in  FIG. 6 , it should be understood that the controller  64  could be programmed for a greater or lesser number of periods, if desired. The number of periods will, of course, vary depending on the particular application in which the controller  64  is employed. 
     To view the parameters for another period within the selected day, the user may press the appropriate button  102 , 104 , 106 , 108  on the interface  64 , causing the controller  64  to access the parameters for the selected period and display them on the interface  64 . For example, as can be seen in  FIGS. 6C-6E , the user may cycle from the “leave” period depicted in  FIG. 6B  to the “wake” period ( FIG. 6C ), “return” period ( FIG. 6D ), and then the “sleep” period ( FIG. 6E ) to view the schedule parameters  92 , 94 , 96  for each of these periods. At each screen displayed on the touch screen  68 , the controller  64  can be configured to notify the user which period is currently being viewed by blinking the text for the appropriate button (as indicated generally by bolded text in  FIGS. 6B-6E ). 
     If the user desires to view the settings for a different day, the user may press the appropriate day button  98  on the touch screen  68 , causing the controller  64  to display the parameters for the selected day. As shown in  FIGS. 6E-6F , for example, pressing the “MON” button  98  on the touch screen  68  while the controller  64  is currently displaying the schedule parameters for the “sleep” period on Wednesday (see  FIG. 6E ), causes the controller  64  to display the event time parameter (i.e. 10:00 PM), heat set point parameter  94  (i.e. 65° F.), and cool set point parameter  96  (i.e. 77° F.) for Monday. In similar fashion, the user can cycle through the “sleep” parameters for other individual days by selecting the appropriate button  98  on the touch screen  68 . 
     Once the user has finished viewing the desired schedule parameters for each day and/or period, the user can terminate the schedule review mode by pressing a “DONE” button  110  or “CANCEL” button  112  displayed on the touch screen  68 , causing the controller  64  to terminate the scheduling routine and return to the main menu screen of  FIG. 6A . 
     To modify one or more parameters in the schedule, the user can initiate an editing mode within the controller  64  by pressing an “EDIT” button  114  on the touch screen  68 . As shown in  FIG. 6G , for example, if the user presses the “EDIT” button  114 , an alphanumeric message  116  stating, for example “OK TO PICK MULTIPLE DAYS” can appear on the touch screen  68 , informing the user that multiple days can be selected. Other message variations may appear in addition to, or in lieu of, the alphanumeric message  116  illustrated in  FIG. 6G . For example, the controller  64  can be configured to display the text “PLEASE SELECT AT LEAST ONE DAY TO MODIFY” or other similar message on the touch screen  68 . The user can then either select one or more days to modify the schedule using the appropriate day button(s)  98 , or press the “CANCEL” button  112  to terminate the scheduling routine and return to the main menu screen of  FIG. 6A . 
       FIG. 6H  is a pictorial view showing the selection of “MON”, “TUE” and “THU” by pressing the corresponding buttons  98  on the touch screen  68 . As shown in  FIG. 6H , when at least one of the day buttons  98  is pressed, the controller  64  can be configured to display the event time parameter  92 , heat set point parameter  94 , and a cool set point parameter  96  for one of the periods in the schedule. A set of up/down buttons  118  can be utilized to modify the event time parameter  92  within the schedule to an earlier or later time, as desired. A similar set of up/down buttons  120 , 122  can be utilized to adjust, respectively, the heat set point parameter  94  and cool set point parameter  96  to a higher or lower temperature level, as desired, for the selected period. 
     The controller  64  can be configured to indicate the particular period the user is viewing on the touch screen  68  using an icon, blinking text or other indicator means. In  FIG. 6H , for example, the text for the “WAKE” button  102  can configured to blink on and off (indicated generally by bolded text) to indicate that the user is currently viewing the settings for the “wake” period. 
     If the user desires to modify one or more of schedule parameters for the selected period, the user may use the appropriate set of up/down buttons  118 , 120 , 122  to modify the parameter. As shown in  FIG. 6I , for example, the user can modify the event time parameter  92  from 6:00 AM to 6:30 AM using the set of up/down buttons  118  located adjacent the event time parameter  92 . In similar fashion, the user may use the appropriate set of up/down buttons  120 , 122  to adjust the heat set point parameter  94  from 70° F. to 72° F., and the cool set point parameter  96  from 78° F. to 76° F. Also, the fan setting may be changed for the selected period using the fan mode button  86 . 
     To display the parameters for the other periods, the user may press the appropriate period button on the bottom of the touch screen  68 , causing the controller  64  to display the schedule parameters for that selected period. To display the settings for the “leave” period, for example, the user may press the “LEAVE” button  104  on the touch screen  68 , causing the controller  64  to display the event time parameter  92 , heat set point parameter  94 , and cool set point parameter  96  for the “leave” period on the touch screen  68 , as shown in  FIG. 6J . Once selected, the appropriate set of up/down buttons  118 , 120 , 122  can be pressed to modify the scheduler parameters, as desired. As with the “WAKE” button  102  discussed above with respect to  FIG. 6H , the “LEAVE” button  104  can include indicator means (e.g. blinking text) to indicate that that the user is currently viewing the settings for the “leave” period. 
       FIGS. 6K and 6L  are pictorial views showing the schedule parameters corresponding, respectively, to the “return” and “sleep” periods of the schedule. In  FIG. 6K , for example, the “RETURN” button  106  has been selected (indicated generally by bolded text), causing the controller  64  to display the event time parameter  92  (i.e. 6:00 PM), heat set point parameter  94  (i.e. 70° F.) and cool set point parameter  96  (i.e. 78° F.) on the touch screen  68 . In similar fashion in  FIG. 6L , the “SLEEP” button  108  has been selected, causing the controller  64  to display the event time parameter  92  (i.e. 11:00 PM), heat set point parameter  94  (i.e. 62° F.), and cool set point parameter  96  (i.e. 82° F.) for the “sleep” period on the touch screen  68 . Once selected, the user may then adjust the schedule parameters using the appropriate set of up/down buttons  118 , 120 , 122  on the touch screen  68 , as desired. 
     In the illustrative embodiment, the user may select or de-select one or more days at any point during the editing mode using the appropriate day button(s)  98  located on the touch screen  68 . In the illustrative view of  FIG. 6L , for example, the user may desire to add “Wednesday” to the list of days to run the modified schedule parameters. To do so, the user may press the “WED” button  98  on the touch screen  68 , causing the controller  64  to add that day to the modified schedule. Conversely, if the user desires to remove one or more days from the modified schedule, the user may simply press the appropriate day button  98  on the touch screen  68 , causing the controller  64  to remove those day(s) from the modified schedule. 
     If the user desires to cancel a particular period from the schedule, the user can select the appropriate period button  102 , 104 , 106 , 108  and then press a “CANCEL PERIOD” button  124  on the touch screen  68 . As shown in  FIG. 6M , for example, when the user presses the “CANCEL PERIOD” button  124  while in the “wake” period, the controller  64  can be configured to cancel or zero-out the event time parameter  92 , heat set point parameter  94 , and/or cool set point parameter  96  for that period. An icon  126  normally situated above the “WAKE” button  102  can be configured to disappear on the touch screen  68 , indicating to the user that the schedule parameters for that particular period have been cancelled. When the modified schedule is subsequently run, the controller  64  can be configured to apply the settings for the previous period towards the cancelled period until the next scheduled period occurs. 
     After the user has finished modifying the schedule, the user can press either the “DONE” button  110  to save the modified parameters in the schedule, or the “CANCEL” button  112  to discard the modified changes without saving. As shown in  FIG. 6N , the controller  64  can be configured to temporarily display an alphanumeric message  128  such as “SAVING CHANGES” on the touch screen  68  at or near the time that the controller  64  saves the modified settings. The controller  64  can also be configured to temporarily display the days of the week on the touch screen  68  to confirm the selected days modified in the schedule. In some embodiments, the controller  64  can be configured to revert back to the main menu screen of  FIG. 6A  and, if desired, automatically run the modified schedule. 
       FIG. 7  is a plan view illustrating another exemplary HVAC controller  130  equipped with a user interface  132  having a separate schedule review mode. In the exemplary embodiment illustrated in  FIG. 7 , the user interface  132  includes a display panel  134  and keypad  136  equipped with a number of buttons that can be pressed by the user to scroll through various menus or screens displayable on the display panel  134 . The display panel  134  can include any number of suitable display devices, including, for example, a backlit LCD panel or LED screen. 
       FIGS. 8A-8M  illustrate pictorial views showing an illustrative method for accessing and programming a schedule using the controller  130  and user interface  132  of  FIG. 7 . In a first view depicted in  FIG. 8A , the controller  130  can be configured to display a main menu screen  138  on the display panel  134 , similar to that described above with respect to  FIG. 6A . The controller  130 , for example, can be configured to display a current inside temperature parameter  140  (in either ° F. or ° C.), a time of day parameter  142 , and a day of week parameter  144 . The controller  130  can also be configured to display the current set point parameter  146  on the display panel  134 , indicating the temperature at which the controller  130  is currently set to maintain. A set of up/down buttons  148  on the keypad  136  can be used to scroll through the various schedule parameters displayed on the display panel  134 . A second series of buttons  150 , 152 , 154  disposed below the display panel  134  can be utilized to navigate through one or more menus or screens displayable on the display panel  134 . 
     To initialize the scheduling routine within the controller  130 , the user may press the button  152  located immediately below the text “SCHEDULE” located on the display panel  134 . When pressed, the controller  130  can be configured to initiate a schedule review mode, causing the display panel  134  to display each day of the week, as shown in  FIG. 8B . Using the up/down buttons  148 , the user can scroll up or down between each day of the week. As each day is selected, the controller  130  can be configured to blink or otherwise indicate the day of the week that has been selected. The user can then press the button  150  located below the text “GO BACK” on the display panel  134  to go back to the previous screen (i.e. main screen  122 ), or buttons  152  or  154  to initiate, respectively, the editing and schedule review modes within the controller  130 . 
       FIG. 8C  is a pictorial view showing display panel  134  after “Monday” has been selected using the up/down buttons  148 , and after button  154  has been pressed. As shown in  FIG. 8C , the controller  130  can be configured to display the event time parameter  156  and heat/cool set point parameter  158  for each individual period in the schedule. In  FIG. 8C , for example, the various schedule parameters for each period can displayed on the display panel  134  by repeatedly pressing the up/down buttons  148 , causing the controller  130  to scroll through each individual period on the display panel  134 . 
     To view the schedule parameters for the other periods, the user may again use the up/down buttons  148 , causing the controller  130  to access the schedule parameters for each period and display them on the display panel  134 . For example, as can be seen in  FIGS. 8D-8F , the user may cycle through the schedule parameters for the “leave” period ( FIG. 8D ), “return” period ( FIG. 8E ) and “sleep” period ( FIG. 8F ) to view the schedule parameters for those periods. At each screen, the controller  130  can be configured to notify the user which period is currently being viewed by blinking the text for the period (indicated generally by bolded text) on the display panel  134 . When the user is finished viewing the schedule parameters for that particular day, the user may press either button  150  to go back to the previous screen, or button  154  to terminate the schedule review mode and return to the main screen  138  of  FIG. 8A . 
     To modify one or more parameters in the schedule, the user can initiate an editing mode within the controller  130 . The user can modify the schedule either individually on a day-by-day basis from within the schedule review mode, or directly via the screen illustrated in  FIG. 8B  by bypassing the schedule review mode. 
     To edit the parameters on a day-by-day basis, the user, while within the schedule review mode, may select the individual day of the week to modify, and then press button  152  located below the text “Edit” located on the display panel  134  (see  FIG. 8C ). For the day “Monday” selected in  FIG. 8C , for example, the user can press button  152  while viewing the various parameters for the wake period, causing the controller  130  to initiate the editing mode and display the parameters for that specific day, as shown in  FIG. 8G . A check mark  160 , blinking text, or other suitable indicator can be configured to appear on the display panel  134 , indicating that the user has selected to modify the parameters for Monday. 
     The controller  130  can be configured to prompt the user to cycle through the various schedule parameters for each period by blinking the text for the selected schedule parameter on the display panel  134 . For example, the event time parameter  156  in  FIG. 8G  can be configured to blink on and off, allowing the user to modify that particular parameter using the up/down buttons  148 . The user may then change the event time parameter  156  to, for example, 6:30 AM by repeatedly pressing the appropriate one of the up/down buttons  148  until 6:30 AM appears on the display panel  134 . 
     To change the other parameters for that selected period, the user can press button  152  located immediately below the text “Next Step” on the display panel  134 , causing the controller  130  to cycle to the next schedule parameter in that period. As the user cycles through each schedule parameter, the controller  130  can be configured to blink the appropriate text on the display panel  134 , as shown in  FIGS. 8H-8I . When the user has cycled through each schedule parameter for the selected period, the user may press button  152  again, causing the controller  130  to cycle to the next period in the schedule. The process of selecting and modifying schedule parameters can then be repeated, as desired, until all of the parameters for each and every period have been selected. At any point during this process, the user can save the modified settings by pressing button  154  located under the text “Done” on the display panel  134 , causing the controller  130  to save the modified schedule parameters. 
     To select multiple days to program at once in the illustrative embodiment, the user can initiate the editing mode directly from the screen depicted in  FIG. 8B  by pressing button  152  located under the text “Edit” on the display panel  134 . As shown in  FIG. 8J , when button  152  is pressed, the controller  130  can be configured to display the text “Select Day” above button  150 , prompting the user to select one or more days to modify. Using the up/down buttons  148  and the “select day” button  150 , the user can scroll through each day of the week and, if desired, select individually each day of the week to modify in the schedule (e.g. Monday, Tuesday, and Thursday). A check mark  162 , blinking text or other suitable indicator can be displayed on the display panel  134  next to each day selected, indicating those days of the week to be modified in the schedule. 
     Once the user has selected the desired day or days to modify the schedule, the user can then press the “Next Step” button  152 , causing the controller  130  to display the schedule parameters for one period. As shown in  FIG. 8K , for example, the controller  130  can be configured to blink the text “Wake” on the display panel  134 , indicating that the parameters for the “wake” period can be modified using the up/down buttons  148  and the “next/step” button  152 , similar to that described above with respect to  FIGS. 8G-8I . As shown in  FIG. 8L , for example, the user can press button  152  repeatedly until the display panel  134  indicates (by bolded text) that the cool set point parameter  158  has been selected. Using the up/down buttons  148 , the user can then modify the cool set point parameter  158  to a higher or lower value, as desired. 
     When the user has cycled through each of the parameters for a particular period, the user may press button  152  again, causing the controller  130  to cycle to the next period in the schedule. The process of selecting and modifying the parameters can then be repeated, as desired, until all of the parameters for each period have been selected and modified (if desired). At any point during this process, the user can save the modified settings by pressing button  154  located under the text “Done” on the display panel  134 , causing the controller  130  to save the modified schedule parameters. 
     As shown in  FIG. 8M , the controller  130  can be configured to temporarily display an alphanumeric message  164  such as “SAVED” on the display panel  134  at or near the time that the controller  130  saves the modified settings. The controller  130  can also be configured to temporarily display the days of the week on the display panel  134  to confirm to the user the particular days of the week modified in the schedule. In some embodiments, the controller  130  can revert back to the main menu screen  138  of  FIG. 8A , and, if desired, automatically run the modified schedule. 
     Having thus described the several embodiments of the present invention, those of skill in the art will readily appreciate that other embodiments may be made and used which fall within the scope of the claims attached hereto. Numerous advantages of the invention covered by this document have been set forth in the foregoing description. It will be understood that this disclosure is, in many respects, only illustrative. Changes can be made with respect to various elements described herein without exceeding the scope of the invention.