Microprocessor control system and postage metering system comprising such control system

Abstract: A programmable timer circuit includes a programmable timer counter (622). The programmable timer counter receives a count and counts until that count is reached in response to clock signal. A programmable microprocessor generates count data and mode data in response to its programming. An input register (600)receives the count from the microprocessor over the system bus. A control register (602) is provided for receiving mode data and generating a mode select signal representative of the program selected mode of one-shot or continuous. A gate (620) is provided for gating timing data in to the timer counter (622) from the input register (600) on a one-shot basis when the mode select signal is in one-shot mode and repeatedly gating timing data in to the timer counter from the input register when said mode select signal is in a second or continuous state when the timer counter reaches the count. A clock signal to said timer counter (622) is provided until the timer counter reaches the count when said mode select signal is in a first or one-shot state, and for re-enabling the gate each time the timer counter reaches the count and continuously providing a clock signal when the mode select signal is in the second or continuous state.

Description: The present invention relates to microprocessor control systems. US-A-4,161,787 describes a programmable timer module coupled to a microprocessor system to generate and measure varying time intervals under program control. Another timer arrangement is described in EP-A-0 355 243. It is customary to develop a unique control system for each specific model of an apparatus. For example, in the electronic postage meter area, each postage meter model has a micro-controller system specifically designed for controlling the function set of that electronic postage meter model. The micro-controller system is customarily comprised of a microprocessor in bus communication with a number of memory units and an applications specific integrated circuit (ASIC). It is now considered advantageous to develop a single micro-controller for a plurality of meter models which will offer the advantages of allowing one micro-controller to be utilized in a number of meters resulting in less variations in meter design and better design control for the manufacturer. One of the principal obstacles is that each microprocessor control system is constrained to performance limitation of specific integrated circuit components, such as, the write rate to non-volatile memory units, baud rate to peripheral units. As a result, it is conventional to provide the necessary circuit timers with fixed mode operation, i.e., continuous or one-shot, for a specific control operation. It is recognized that, because the timer is so constrained within the control circuit, only like timed events may be logically connected to that timer. It is an objective of the present invention to provide a microprocessor control system having a programmable timer which can be programmed to operate in either a continuous or one-shot mode. According to the invention, there is provided a microprocessor control system having a programmable microprocessor, memory means, clock means for providing a clock signal, and an integrated circuit wherein: said microprocessor is in bus communication with said memory means and said integrated circuit; said memory means has count data and mode selection data stored therein; said integrated circuit has a plurality of modules and data registers, one of said modules being a programmable timer circuit; said microprocessor is programmed to read, upon system power-up, said count data and said mode selection data from said memory means and to write said data in respective data registers of said integrated circuit and has enabling means for enabling and disabling said programmable timer circuit; said programmable timer circuit is responsive to said enabling means to be in an enabled or disabled state and is responsive to said clock signal when enabled, and comprises a timer counter for generating an output signal after reaching a count corresponding to said count data, and control means for gating said count data to said timer counter on a one-shot basis in response to a first state of said mode selection data or repeatedly and continuously gating said count data to said timer counter when said mode selection data is in a second state after said timer counter has reached said count corresponding said count data; and said timer counter is operable to reinitiate said count in response to each gating of said count data to said timer counter. For a better understanding of the present invention, it will now be described with reference to the accompanying drawings, in which: Fig. 1 is a schematic of a microprocessor control system including an ASIC having a timer circuit in accordance with one embodiment of the present invention; Fig. 2 is a schematic of the timer circuit in accordance with one embodiment of the present invention; Fig. 3a is a process flow diagram for setting of the timer in accordance with an embodiment of the present invention; Fig, 3b is a process flow diagram for changing the setting of the timer in accordance with an embodiment of the present invention; Fig. 3c is a process flow diagram for reading the setting of the timer in accordance with an embodiment of the present invention; Fig. 3d is a process flow diagram for changing the timer mode of the timer in accordance with an embodiment of the present invention; Fig. 4 is a process flow diagram of the timer enable circuit in accordance with an embodiment of the present invention; and Fig. 5 is a process flow diagram for starting and re-starting the timer in accordance with an embodiment of the present invention. Referring to Fig. 1, a micro-controller system, is comprised of a microprocessor 13 in bus 17 and 18 communication with an application specific integrated circuit (ASIC) 15, a read only memory (ROM), a random access memory (RAM) and a plurality of non-volatile memories (NVM1, NVM2, NVM3). The microprocessor 13 also communicates with the ASIC 15 and memory units by way of a plurality of control lines, more particularly described subsequently. It should be appreciated that, in the preferred embodiment, the ASIC 15 includes a number of circuit modules or units to perform a variety of control functions related to the operation of the host device, which, in the present preferred embodiment, is a postage meter mailing machine. One of the circuit modules is a timer circuit, shown schematically in Fig. 2. Operation of the timer circuit will be described in accordance with the timer process flow diagrams shown in Figs. 3 to 5. In order to set the 16-bit timer, the microprocessor addresses the ASIC decoder 20 and latches the timer data on the data bus 17. The address decoder 20 then enables the write signal which then allows the timer data on the data bus 17 to be loaded into the input register 600 and mode data into the timer control register 602. The mode data is that data which enables the timer for continuous mode or a one-shot mode which will be further described later. After the data is loaded into the input register 600, the address decoder 20 then enables the RDB signal which enables gate 604, which then enables the microprocessor to read the data and compare the data such as to confirm that the proper timer data has been written to the timer input register 600. In order to enable the timer counter 622, the timer control register 602 is enabled by the TCRB signal from the timer control register 602 which enables the internal enable signal. This signal is delivered to multiplexer 608 whose output then enables the flip-flop 612. The output of flip-flop 612 enables OR gate 614 and flip-flop 618. The output of flip-flop 616 enables gate 620 which enables loading of data from the input register 600 into the 16-bit timer counter 622. The output of flip-flop 616 also is directed to gate 619 to clear flip-flop 612 which signals the completion of the timer data load. Referring back to the output of flip-flop 612 which enables flip-flop 618, the multiplexer 624 is set to be continuously enabled or to be one-shot enabled by the C - mode signal from the timer control register 602. In the single shot mode the input of the multiplexer 624 is set to receive the output from flip-flop 618. In the continuous mode the input of the multiplexer 624 is set to receive a continuous enable (EN). Optionally, the timer enable issued can be supplied externally to allow measuring intervals of events. As noted, if the multiplexer 624 has been set to the one-shot mode, then the output of flip-flop 618 is the input signal to the multiplexer 624. The output of the multiplexer 624 enables flip-flop 626 which is ANDed to a clock signal by AND gate 628. The output from flip-flop 626, in combination with the clock signal, drives the clock input of the 16-bit timer 622. At this point, timer enable is complete and the timer is initiated for counting. When the timer 622 reaches the set bit count loaded to the timer counter 622 from the input register 600, OR gate 630 goes active. When the OR gate 630 goes active, the output from the OR gate 630 drives OR gate 632 which in turns drives the flip-flop 642 active. The output from flip-flop 642, through an OR gate 644, drives flip-flop 650 to issue an interrupt to the micro-controller system to indicate that the timer has timed out. If a one-shot mode is selected then the output from flip-flop 642 also drives an AND gate 646 which goes actives to clear flip-flop 618. Once flip-flop 618 is cleared, the AND gate 628 goes inactive, therefore stopping clocking of the 16-bit timer counter 622. And the process is completed. If a continuous mode has been selected then the output of OR gate 630 drives OR gate 614 active. The output from OR gate 614 drives flip-flop 616 active which then actuates the gate 620 which enables reloading of data from the input register 600 into the 16-bit counter. The output from flip-flop 616 is again directed to gate 619 to clear flip-flop 612 and the timer load is complete, and the timer then starts counting again. The enable signal to the multiplexer 624 is continuous; therefore, the clock signal provided at AND gate 628 is continuously provided to clock the timer 622. In order to change the 16-bit timer setting, it is not necessary to disturb the count. While the timer is running, the microprocessor 13 can address the decoder 20 and latches the new timer input data on the data bus. The address decoder 20 then enables the TIRB signal. When the TIRB signal goes active, the new timer data is loaded into the input register 600 and new mode data into the timer control register 602. Verification of the new timer data can be accomplished since gate 604 is enabled by the TRIB signal which allows the data written into the input register 600 to be read by the microprocessor through gate 604. It is also possible to read timer data from a timer output register 600 without disturbing the timer count of the timer 622. In order to read the timer setting, it is necessary that the microprocessor 13 address the address decoder 20. The address decoder 20 then read/enables the timer output register 606 by enabling the TROB signal which places the data which is in the timer register 606 on the data bus for reading by the microprocessor 13. The timer mode can also be changed independently when the microprocessor addresses the decoder 20 and latches the timer control data on the data bus. The address decoder 20 then write/enables the timer control register 602 by enabling the TCRB signal for writing of new mode data into the timer register. It should now be appreciated that the present system allows for the timer to be set to either programmable and selectable to be either single or continuous mode of operation. The micro-controller system described above is comprised of a microprocessor which is in bus communication with a number of memory units and an ASIC. The ASIC includes a number of system modules, for example, a non-volatile memory security module, a printhead controller module, a pulse width modulation module, etc. One of the modules of the ASIC is a timer circuit module. The timer circuit module includes a plurality of registers which can be addressed to enable writing of timer data into the module. One of the timer registers is a timer control register and an input data register is also included. In response to data written in the timer control register, a continuous or one-shot mode is selected and, also, the timing period. The timer circuitry either enables the system clock to clock the timer with a single time-out in the one-shot mode or sequentially re-enables the system clock to clock the timer for a uninterrupted second and subsequent time-out by retriggering. During retriggering of the timer, timer data written to the timer input registers is reloaded to the timer.

Claims: A microprocessor control system (11) having a programmable microprocessor (13), memory means, clock means for providing a clock signal, and an integrated circuit (15) wherein: said microprocessor (13) is in bus communication with said memory means and said integrated circuit; said memory means (NV1-NV3) has count data and mode selection data stored therein; said integrated circuit (15) has a plurality of modules and data registers, one of said modules being a programmable timer circuit; said microprocessor (13) is programmed to read, upon system power-up, said count data and said mode selection data from said memory means and to write said data in respective data registers (600,602) of said integrated circuit (15) and has enabling means for enabling and disabling said programmable timer circuit; said programmable timer circuit is responsive to said enabling means to be in an enabled or disabled state and is responsive to said clock signal when enabled, and comprises a timer counter (622) for generating an output signal after reaching a count corresponding to said count data, and control means (620) for gating said count data to said timer counter (622) on a one-shot basis in response to a first state of said mode selection data or repeatedly and continuously gating said count data to said timer counter (622) when said mode selection data is in a second state after said timer counter has reached said count corresponding said count data; and said timer counter is operable to reinitiate said count in response to each gating of said count data to said timer counter (622). A microprocessor control system as claimed in Claim 1, further comprising interrupt means (630,632,642,644,650) responsive to generation of said output signal of said timer counter for informing said programmable microprocessor (13) each time said timer counter of said programmable timer counter means has counted to said count. A postage metering system comprising a microprocessor control system according to Claim 1 or 2.

Inventors: LEE YOUNG W, MOH SUNGWON, MULLER ARNO, LEE, YOUNG W., MOH, SUNGWON, MULLER, ARNO
Applicants: PITNEY BOWES INC, PITNEY BOWES INC.
Application year: 1994
Main classification: G04G15
IPC codes: G04G15