Drive control device for thermal printers

Abstract: Described is a drive control device for a thermal printer supplying drive pulse signals to heating elements (1a) pro­ vided in the print head (1) of the thermal printer, the en­ ergy of the drive pulse signals being controlled in re­ sponse to the temperature of the print head (1). A tempera­ ture detection means detects the temperature of the print head and outputs an analog signal (Vt) which is converted into a digital standard value by an A/D converter (15a). Based on prestored relationships current flow intervals are determined from the respective standard value. Current flow pulse signals corresponding to the current flow intervals are generated and combined with drive data indicating the active or inactive state for the heating elements to obtain the drive pulse signals. In case of a so-called historical control the current flow intervals are combined with the drive data of a present print cycle and previous print cy­ cles so as to drive the heating elements based on the drive history.

Description: This invention relates to thermal printers, and, more specifically, to a drive control device and a drive control method used for driving the thermal print head of such printers. The print head of a thermal printer contains a heating element, in case of a dot matrix print head, one heating element for each dot. The heating element or selected ones of the heating elements are supplied with drive pulses to generate heat in order to form a visible print-out, for instance by means of thermal paper. A variety of methods has been utilized in order to prevent a reduction in printing quality due to the accumulation of heat during continuous operation of the print head. Among the methods being employed are the method of memorizing the previous drive data for each dot of a dot matrix print head and determining the width or current flow time of the drive pulses dependent on such previous drive data, as disclosed JP-A-55-48631, and the method of changing the current flow time by means of drive cycles, as disclosed in JP-A-57-18507. These methods are generally called historical control methods. In addition, the documents JP-B-61-130063 and JP-B-59-7068 can be given as examples of measuring the base material temperature of the print head using thermistors and A/D converters. In these known printers, complicated calculations take place using the detected output values of an A/D converter to determine such things as the pulse width and the voltage of the drive pulses to be applied to the heating elements. In addition, with the historical control method, which varies the drive pulse width based on historical drive data, the general method has been that of sending data sequentially to a print head drive IC while generally processing data by means of the CPU. Using such a method, even if an attempt was made to operate the thermal printer at high speed, the processing could not keep up, and this became an obstruction to increasing the speed of the thermal printer. Fig. 1 depicts a linearized thermistor temperature detection circuit and the A/D converter connections according to the state of art. In general, resistor 121 is connected in parallel and resistor 122 is connected in series to thermistor 120 to form a voltage divider circuit 125, which is a linearized circuit. The voltage potential Vp of voltage division point 123 of voltage divider circuit 125 is input to detection pin 115 of an A/D converter 110. The A/D converter will output this electric potential in a binary code form and the CPU will read this and perform arithmetic processing. 112 indicates the positive (+) pin of the power supply and 114 indicates the negative (-) pin of the power supply. 113 is the detection range setting pin, which in this case is connected to pin 112. Fig. 2 shows the relationship between the electric potential Vp of voltage division point 123 of the circuit of Fig. 1 and the thermistor temperature T. As an example, at 25°C the resistance of the thermistor is Rth = 50 kΩ, that of resistor 122 being R1 = 60 kΩ and that of resistor 121 R2 = 500 kΩ. The electric potential Vp will vary with the constants R1 and R2. However, as is clear from the characteristic 131, the output electrical potential reaches saturation as the temperature of the thermistor increases. With an 8-bit A/D converter and a detection range of for instance 5 V the detection range will be divided into 255 steps of 0.0196 V each. The more the characteristic 131 in Fig. 2 becomes saturated, the greater will be the temperature change necessary to increment or decrement the output of the A/D converter by one step. Thus, the saturation affects the detection accuracy. In particular, in the case of the print head, when the temperature increases due to heat accumulation, heat control had to take place at 40°C or higher. In order to increase resolution and allow for accurate detection, until now, A/D converters having a large number of data bits and high-performance had to be used. The document US-A-4,845,514 discloses a drive control device for a thermal printer in which the pulse width of drive pulse signals used to drive the heating elements of the print head is controlled depending on the temperature of the print head. A thermistor is mounted on the print head and an A/D converter is employed to convert the resistance value of the thermistor into a digital standard value representing the head temperature. A memory stores a table including for each of several standard values a corresponding current-on time value. By this temperature control the print density is maintained constant independent of the head temperature. In order to change the print density either includes the table for each standard value more than one current-on time value, each corresponding to a desired print density, or, if only one current-on time value is stored, a desired print density is achieved by calculating a suitable current-on time based on the stored value and density instructing data. The document US-A-4,590,484 discloses a drive control device for a thermal printer in which the energy of drive pulse signals used to drive the heating elements of the print head is controlled depending on the temperature of the print head and the drive history of each heating element. This prior art measures for each heating element the resting time during which the heating element is not energized, i.e. does not produce heat. A table stored in memory includes for each combination of the detected head temperature and the measured resting time the suitable energy value for energizing a respective heating element. The activation period of the heating elements is chopped into a plurality of equal length pulses. The energy value read from the table is used to determine the number of those pulses actually to be applied to a heating element. The document US-A-4,983,054 discloses a drive control device for a thermal printer in which the pulse width of drive pulse signals used to drive the heating elements of the print head is controlled depending on the drive history of each heating element. Each drive cycle is divided into two portions of different lenghts. Depending on the print data in the current and one or more preceding drive cycles of a respective heating element each heating element has applied either no drive pulse, one drive pulse during only a first of said portions, one drive pulse during only the second portion or one respective drive pulse during each of the two portions. The document JP-A-63-202471 discloses a drive control device for a thermal printer in which the energy of drive pulse signals used to drive the heating elements of the print head is controlled depending on the temperature of the print head and the ambient temperature. Two separate detectors for detecting the two temperatures are provided. The objective of this invention is to provide a high speed drive control device and a control method for a thermal printer exhibiting a good print quality. Another objective of this invention is to provide such a drive control device having an extremely simple-to-use A/D converter for detecting the temperature of the print head and/or of its surrounding and for controlling the print head by compensating for the temperature. A further objective of this invention is to provide such a drive control device using an highly reliable print head temperature detection method, which is inexpensive and in which temperature detection can take place accurately, even if the A/D converter is incorporated into the CPU, by means of improving the thermistor temperature detection circuit. These objects are achieved with a drive control device and a drive control method as claimed, respectively. Preferred embodiments of the present invention will be described in detail below with reference to the drawings, in which: Fig. 1 is a prior art temperature detection circuit using a thermistor and an A/D converter, Fig. 2 is a diagram showing the relationship between the electrical potential Vp in the circuit of Fig. 1 and the thermistor temperature, Fig. 3 is a schematic block diagram of a first embodiment of the drive control device, Fig. 4 is a schematic view of one type of a serial-type print head as an example of print heads that are used with this invention, Fig. 5 is a detailed schematic diagram of the head control circuit of the drive control device of this invention, Fig. 6 is a time chart showing input and output waveforms of the current flow interval pulse generation circuit of the drive control device of this invention, Fig. 7 is an explanatory drawing showing the method of controlling the current flow to the print head with the drive control device of this invention, Fig. 8 is a diagram showing the relationship between the electrical potential Vt and the thermistor temperature T of the standard value generation device, Fig. 9 is a time chart used for explaining the timing during the driving of the print head, Fig. 10 is a diagram showing the standard pulse width TW against the thermistor temperature T for achieving an optimal printing density, Fig. 11 is a diagram showing the standard pulse width ratio against the A/D converter output value for obtaining an optimal printing density, Fig. 12 is a schematic circuit diagram of another embodiment of the standard value generation device, Fig. 13 is a schematic block diagram of a drive control device according to a third embodiment, Fig. 14 is flow chart of the operation of the third embodiment, Fig. 15 is a schematic block diagram of a drive control device according to an embodiment of this invention, Fig. 16 is a diagram showing the relationship between the standard pulse width ratio against the print head temperature with the ambient temperature as a parameter and Fig. 17 is a flow chart of the operation of the embodiment of the invention. First Embodiment Fig. 3 shows a simplified block diagram of a drive control device according to a first embodiment of this invention. In Fig. 3, 1 is a print head that has plural heating elements 1a. 2 is a head drive circuit that drives the print head 1. 3 is a head control circuit (abbreviated as HCU in the following) which is inserted between a CPU 4 and the print head 1 for controlling the amount of heat generated by the print head for each dot. 15 is a standard value generation device which generates a standard value. As will be explained later this standard value is used for setting the current flow time (effective pulse width) of drive pulses to the heating elements 1a. The major components of the device 15 are a thermistor 1b which is one type of a heat sensitive element, an A/D converter 15a and a resistor 15b. The thermistor 1b is mounted on the print head for detecting the temperature of the base material of the print head or the temperature of a heat sink (10 in Fig. 4). The A/D converter 15a is a unit, which detects the electrical potential Vt at the node between thermistor 1b and a resistor 15b and converts it into binary coded digital signals in synchronism with commands from CPU 4. A capacitor 15c is used to stabilize the potential Vt. 12 in Fig. 3 designates a ROM, 13 a RAM, 17 a data bus, 18 an address bus, 14 a timer circuit included in the CPU 4, and 20 input pins for a power supply Vh. The CPU 4 may for example be an 8-bit CPU which possesses a WR (write/read) pin 8, an I/O port and the timer circuit 14. The timer circuit comprises at least two timer units 14a and 14b which are capable of operating independently from one another. 9 is a printing mode detection means which detects the type of printing, i.e. thermal paper printing or thermal transfer printing, color ribbon or monochrome ribbon printing, etc. In general, such things as the type of ink ribbon and whether the mode is the thermal paper printing mode or not, etc. are detected by a corresponding switch provided at a location where an ink ribbon cartridge may be mounted. The HCU 3 is a unit circuit which operates as a type of a CPU peripheral and which is allocated a special address on the memory map same as ROM 12 and RAM 13. A decoder 16 is connected to a CS pin 7 for the purpose of accessing the HCU. The HCU has data input pins 5 which are connected to data bus 17, and address input pins 6 that receive the least significant three bits of the address bus. Concerning the printing mode detection means, it is not only the switch that can be used to set specific printing modes. Commands provided through the software from the printer interface, etc. can also determine printing mode. Fig. 4 is a diagrammatic view showing one type of a serial print head which among others may be used with this invention. Those items that are the same as in Fig. 1 have been indicated by the same reference numerals. 1d represents a print head chip having the heating elements 1a formed on a base material which is made of ceramics. The print head chip is attached to a heat sink 10 which has a cut-away section 10a at a location right behind the heating elements. Thermistor 1b is attached with an adhesive that has good heat conductivity characteristics to the print head base material an/or the heat sink. 1c is a flexible printer cable (FPC) connected to the electrodes of the heating elements. Fig. 5 is a detailed schematic diagram of the head control circuit (HCU) 3 of the drive control device according to the invention. Taking a 24-dot print head as an example, the head drive output has 24 output pins, H0 to H23. The head drive data indicate the active (ON) or inactive (OFF) state of the respective heating elements of the print head. The 8-bit data, D0 to D7, are input in parallel via the data input pins 5. 21 to 29 designate 8-bit data latch circuits. The data latch circuits 21 to 23 latch the head drive data corresponding to the output pins H0 to H7. The data latch circuits 24 to 26 latch the head drive data corresponding to the output pins H8 to H15, and the data latch circuits 27 to 29 latch the head drive signal data corresponding to the output pins H16 to H23. The data latch circuits 21, 24 and 27 form a latch circuit group 31 for holding one dot row of head drive data to be currently printed. The data latch circuits 22, 25 and 28 form a latch circuit group 32 holding one dot row of the last printed head drive data. Data latch circuits 23, 26 and 29 form a latch circuit group 33 for holding one dot row of the next to last printed head drive data. 30 is an address decoder. It does things such as allocating and storing each 8 bits of head drive data according to the address data output from the CPU and further has a current flow interval data signal receive function. The current flow interval data signal is processed by a current flow interval pulse generation circuit 34 as will be explained below. As one example, data latch circuits 21, 24 and 27 can be selected according to the least significant three bits A0, A1 and A2 of the address data. At the same time when the head drive data are output to the data bus from CPU 4, the WR (write/read) signal is output and the CS pin is accessed according to the address data placed in advance on the CPU 4 memory map, and the data are transferred to each of the data latch circuits 21, 24 and 27 according to the least significant three bits of the address data. When this happens, previously stored data from the latch circuit group 32 are shifted to the right in Fig. 5, i.e. from the latch circuit group 32 to the latch circuit group 33 and from the latch circuit group 31 to the latch circuit group 32. The current flow interval pulse generation circuit 34 demodulates the current flow interval data signals that have been modulated to cyclical signals, from CPU 4 into current flow interval or gating pulses. This generation circuit is composed of a binary counter 35, inverters 35a and AND circuits 35b. 34a is the clock input pin of the binary counter 35. 34b is its reset input pin which is connected to the address decoder 30. The clock input are pulse signals that are transferred and sent in variable cycles. A gate circuit 37 (GO) in Fig. 5 mixes the output signals from the current flow interval pulse generation circuit 34 and the head drive data from the latch circuit and outputs head drive pulse signals for the heating elements. The gate circuit 37 comprises a first gate circuit 38, a second gate circuit 40 and a third gate circuit 39. The first gate circuit 38 corresponds to the past head drive data and the second gate circuit 40 to the current head drive data. The third gate circuit 39 adds a preheating pulse based on the drive history. Current flow intervals t3, t2 and t1 are secondary current flow intervals corresponding to the historical drive data, and are input into the first gate circuit 38. A current flow interval t0 is the primary current flow interval corresponding to the current drive data and is input into the second gate circuit 40. t1 of the secondary current flow intervals is input into the third gate circuit 39 as a preheating pulse. Table 1 gives the relationship between the address data and the functions. When A2=0 it is possible to selectively access the three data latch circuits by means of the least significant two bits of the address data. After the data have been set, the designated address has been accessed and pulses have been input to the current flow interval data signal input pins 34a and 34b, current flow to the heating elements takes place. A2 A1 A0 Functions 0 0 0 Latch circuit data reset 0 0 1 Data input to latch circuit 21 0 1 0 Data input to latch circuit 24 0 1 1 Data input to latch circuit 27 1 0 0 Current flow interval pulse generation circuit reset signal input 1 0 1 Current flow interval pulse generation circuit clock signal input Fig. 6 is a timing diagram of the input/output waveforms of the current flow interval pulse generation circuit 34. In Fig. 6, 41 is the input waveform applied to the interrupt input of the CPU from the timer that determines the print cycle, i.e. the period of the drive pulse signal to the heating elements. In general, the internal interrupt function is implemented using the timer built into the CPU. 42 is the input waveform at the clock input pin 34a. The cycle of this clock signal changes sequentially. The clock signal received after a reset of the binary counter 35 is converted into a 4-bit code. This 4-bit code is then converted to output waveforms 43 to 46 by means of inverters 35a and AND circuits 35b. 43 is the output waveform at an output pin 36a and has the pulse width t3. 44 is the output waveform at an output pin 36b and has the pulse width t2. 45 is the output waveform at an output pin 36c and has a pulse width t1. 46 is the output waveform at an output pin 36d and has the pulse width t0. 43 to 44 are thus the current flow interval or gating pulse signals referred to before. Their pulse widths become the current flow intervals of the heating elements and are applied to the heating elements as current flow intervals that correspond to the drive history. Fig. 7 illustrates the method of sending current to the print head 1 by means of the drive control device of this invention. As previously mentioned, the print head has a fixed number of, in this example 24, dots. Printing is performed in successive print cycles and during each print cycle one row of selected ones of the 24 dots is printed, the selection being made in accordance with the head drive signal data. In Fig. 7, 51, 52 and 53 represent the head drive data in the latch circuit groups 31, 32 and 33, respectively. These are the data of three successive print cycles with 51 corresponding to the current data or third print cycle, 52 to the last preceding data or second print cycle and 53 to the next to last preceding data or first print cycle. '1' indicates that the respective dot is to be printed during the respective print cycle, i.e. will be an ON dot during this print cycle. '0' indicates that a respective dot is not to be printed during a respective print cycle, i.e. is an OFF dot during this cycle. Numerals 54 to 58 represent the output waveforms of the head drive pulse signals resulting from the head drive data given as an example in Fig. 7. Of the waveforms, 54 is that corresponding to pin H0 of the drive control device, 57 that of pin H7 and 58 that of pin H10. Let us assume, that in Fig. 7 53 represents the data for the first print cycle after a print start. At this time current is applied to the ON dots during all of the current flow intervals t0 to t3. To the OFF dots current is applied only during the current flow interval t1 as a preheating pulse. This preheating pulse only increases the temperature of the base material of the print head but does not form a dot on a recording medium. During each of the next print cycles, to an ON dot which had been an ON dot during the last preceding print cycle, no current will be applied during the interval t3 as illustrated by hatching for instance in the waveform 54. During the third and following print cycles after the print start, current will not be supplied during the interval t2 to an ON dot which had been an ON dot during the next to last preceding print cycle, as illustrated by hatching for instance in waveform 57. If an ON dot had been an ON dot during the last preceding print cycle and during the next to last preceding print cycle, no current will be applied at the present print cycle during the interval t3 + t2 as illustrated by hatching in the waveform 54. Current will not be supplied to an ON dot during the interval t1 if this dot has two neighboring dots which had been ON dots during the previous print cycle as illustrated by hatching in the waveform 56. When all of the above cases apply simultaneously, i.e. when all of the data to be considered are '1' and the current data for a respective dot is also '1' this dot will be supplied with current only during the interval to. Conversely, when none of the above conditions applies, i.e. when all data to be considered are '0' and the current data for a respective dot is also '0' only a preheating pulse will be applied to this dot (exactly, to the heating element corresponding to this dot). The above comparison of the drive data and the selection of the current flow interval are performed by gate circuit 37. A thermal printer of an extremely simple composition can be realized by using a gate array and creating a single-chip head control circuit. This is not only an extremely important factor for terminal printers, it is also an extremely important factor for incorporating thermal printers into compact-size-orientated equipment such as portable word processors. The foregoing description concerned an example, where the head drive is performed in consideration of the history given by the memorized drive data of two preceding print cycles. However, if the data of three or more preceding print cycles are memorized and processed in a similar way, it is possible to increase the number of current flow intervals to four or five. In this manner it is possible to realize an even more detailed historical control. Fig. 8 shows the characteristic 61 of the relationship between the temperature T of the thermistor 1b and the potential Vt at the node between thermistor 1b and resistor 15b of the standard value generation device 15 of the drive control device. The characteristic shown in Fig. 8 is an example for the case that the 25°C standard value of the thermistor is Rth = 50 KΩ and the resistance of resistor 15b is Rk = 25 kΩ. As has been mentioned before, an A/D converter providing an output of an 8-bit binary code is being used in this example. The A/D converter converts the electrical potential Vt into a digital value. 8 bits allow a maximum of 255 steps of the A/D conversion. Because the characteristic 61 is non-linear, the temperature range will vary slightly at each voltage interval. However, in the CPU 4 the print head temperature will be detected by detecting this electrical potential through the binary code output from the A/D converter. This will make it possible to set up the optimal current flow conditions according to the printing conditions of the printing mode etc. Reference is made to Table 2 for explaining a first data table 77 stored within the memory device. This data table contains the mutual relationship between the A/D converter output codes and basic pulse widths for the current flow intervals. Table 2 includes 5 columns, namely the thermistor temperature T, the electric potential Vt, the A/D converter output values or standard values, standard pulse width ratios and the standard pulse widths. The standard pulse width ratio is the standard pulse width divided by the standard pulse width for a reference temperature, in this example 25°C. The relationship between the A/D converter output values and the standard pulse width ratios as well as a stipulated value of the standard pulse width denoted as 76 in Table 2, i.e. the encircled portion in Table 2, are stored as data table 77 within the ROM. The stipulated standard pulse width (76) is the standard pulse width for the reference temperature. The standard pulse width TW can be calculated from the standard pulse width stipulated value (400 µs in this case) and the standard pulse width ratio. As a result, the CPU can set the standard pulse width by detecting the standard value as an A/D converter output code, taking the associated standard pulse width ratio and the stipulated standard pulse width from the data table 77 and performing the said calculation. The output code of the A/D converter is given in hexadecimal notation in Table 2, will, however, be actually recorded in a binary code. In addition, for the accuracy of the tables the data table 77 actually includes the values in 1°C steps although it will also be possible to store the values in 10°C steps in accordance with simplified Table 2 and to calculate intermediate values by linear approximation. Experiments revealed, that the standard pulse width ratios can be made optimal by matching them to the heat accumulation characteristics of the print head of the printer. It is normally very difficult to match the circuit characteristics to these optimal characteristics in a system that employs a pulse generating circuit that has saturated the thermistor. However, in a system that employs an A/D converter, it is known that the temperature characteristics curve can be selected freely. Table 3 is an example of a second data table stored within the ROM 12. This second data table includes the relationship between the current flow intervals t3 to t0 for different printing modes, i.e. memorizes the current flow interval ratios. In this example the current flow interval ratio represents the respective current flow interval expressed as percentage of the standard pulse width TW. The pulse width ratios have been made different depending on the printing mode, such as the type of ink ribbon or the type printing paper. In accordance with a respective printing mode the pulse widths for each of the current flow intervals can be easily calculated from the output values of the standard value generation device 15 and the values of the first and second data tables. As an example, in case of 'thermal transfer one-time' as printing mode, the current flow interval t3 can be obtained by calculating the equation t3 = 80 x TW/100 . Printing mode t3 t2 t1 t0 thermal transfer one time 80 40 20 100 therm.transfer multiple times 90 50 30 100 Thermal paper 60 30 10 120 According to the foregoing explanation the standard pulse width which is calculated from the first data table is a basic value used to calculate the current flow intervals. It should be noted that the meaning of the standard pulse width may be different from the foregoing example. For instance TW as obtained from data table 77 could be TW = t0 or TW = t0 + t1 + t2 + t3 etc. In the latter case for instance, where TW corresponds to the total current flow interval, t3 would be t3 = TW x 80/(80+40+20+100) according to Table 3, "Thermal transfer one time". It is to be noted, that Table 3 shows only an example for explaining the basic idea and that the printing modes are not limited to those mentioned in Table 3. There are numerous factors like monochrome ink ribbon, color ink ribbon, printing speed etc. and corresponding combinations of that factors. Fig. 9 is a time chart which will be used for explaining the head drive timing according to the first embodiment of the invention. T0, T1 and T2 indicate current flow cycles which are established by a timer. Each of these current flow cycles corresponds to one print cycle mentioned before. At the same time the current flow cycles form the basic clock for a step motor (not shown) which is used for moving the print head. The CPU accesses the standard value generation device 15 in synchronism with the current flow cycles and detects the output code of the A/D converter. Using the first data table the CPU calculates the standard pulse width TW in accordance with the temperature of the print head. Using the second data table the CPU calculates each of the current flow intervals t0, t1...tn. During the next current flow cycle the CPU will alternately use the timer circuits 14a and 14b to count the pulse width values of the primary current flow interval t0 and the secondary current flow intervals t1-t3 and to output these values as cycle signals by accessing the specified addresses of the HCU. The procedure is that after t3 has been set in timer circuit 14a, t2 will be set in timer circuit 14b while timer circuit 14a is operating. When the count operation of the timer circuit 14a has ended, timer circuit 14b will start to count and t1 will be set in timer circuit 14b. By using a number of timer circuits in this manner, highly accurate timing can be obtained and accurate current flow control is possible without affecting the CPU processing speed. In addition, the processing of the timer output uses the CPU internal interrupt function so that any delay time is minimized. Thus, the CPU 4 which is equipped in this manner with a number of timer circuits serves as a current flow interval data output device at the same time. The reading of the pulse width TW takes place at each designated cycle of the head drive and is able to prevent heat accumulation and brings about excellent print quality by immediate consideration of the continuously changing temperature of the print head. During the print operation, the drive pulse width can be set to the optimal value at the time by basically operating the A/D converter at one-dot cycles and detecting the temperature of the print head. However, in the slow, low-speed print mode, this does not need to occur in one-dot cycles because the rise of the temperature of the print head is not a sharp rise. In addition, the CPU 4 reads the data table that corresponds to the print modes, converts these into cycle signals and outputs them so that the widths of the total current flow time and the current flow intervals are varied for expediency and the current flow interval pulse signals are output in accordance with factors such as the type of ink ribbon and type of paper. Second Embodiment A second embodiment of the drive control device for a thermal printer according to this invention will now be explained with reference to Figs. 10 and 11. In this second embodiment the standard pulse width TW obtained on the basis of the A/D converter output designates the total current flow interval. This is different from the first embodiment as will be appreciated from the following description. Fig. 10 is a diagram for illustrating the relationship between the thermistor temperature T and the standard pulse width TW for obtaining optimal printing density characteristics. Fig. 10 shows a characteristic for obtaining a good printing quality. This characteristic is for the case that a serial type print head is used. Numeral 91 in Fig. 10 is a central characteristic curve of the relationship between the temperature T and the standard pulse width TW which brings about the optimal printing density and printing quality. 92 in Fig. 10 indicates an upper limit characteristic curve and 93 a lower limit characteristic curve. As long as the relationship between the temperature T and the standard pulse width TW is within the area defined by the upper and lower characteristic curves 92 and 93 (hatched area in Fig. 10), excellent printing density and printing quality can be obtained. Fig. 11 is a diagram showing a characteristic 101 of the relationship between the standard pulse width ratio and the output value of the A/D converter. In Fig. 11 the standard pulse width ratio is plotted on the ordinate and the output value of the A/D converter on the abscissa. If the relationship between the A/D converter output signal and the standard pulse width ratio corresponds to the characteristic 101, which is almost linear, the optimal printing density mentioned above will be obtained. This characteristic may be expressed by the following function h = f(s) in which h is the standard pulse width ratio and s is the output value of the A/D converter: h = 1.66 - (0.91/1.46) x s x 10 -2 For ease of understanding the A/D converter output values have been expressed as decimal numbers in Fig. 11. With this second embodiment it has been ascertained that the relationship between the A/D converter output value and the standard pulse width ratio or the standard pulse width can be approximated by a linear function. Compared to the first embodiment using prestored data tables, this second embodiment that uses a function stored in a memory device, such as the ROM, allows a substantial reduction of the capacity of the ROM or another memory device. In this case only the function has to be stored instead of a variety of discrete values. The function will be used to calculate the required values of the standard pulse width. In this second embodiment in particular, a great deal of simplification is possible because the relationship between the standard pulse width ratio and the A/D converter output value is a linear relationship as indicated by the characteristic 101 in Fig. 11. The use of such relationship instead of data tables further allows to reduce the processing time, which is a major benefit toward increasing the speed of the thermal printer. In the present embodiment, if the optimal pulse width differs from this example, due to the type of ink ribbon or the type of print head, relationships other than a linear function will also be possible, such like second order functions, logarithmic functions etc., and even combinations of such functions. Instead of storing the function in the form of an equation, it may also be stored as a program or microprogram in a ROM to control the CPU to execute a series of processes based on the functions. A variety of methods can be thought of that will find the current flow time for the heating elements on the basis of the output value of the A/D converter as a standard in this manner. Based on the example, the current flow intervals can be found easily by determining the standard pulse width from the standard value detected by the A/D converter and the designated current flow interval ratios. It should be noted, that instead of using timer circuits built into the CPU as explained above, a separate timer external to the CPU could also be used. The current flow interval signal generation device is formed by the current flow interval data output device and the current flow interval pulse generation device 34. The method of storing a relationship as a function and to calculate the standard pulse width used to determine the pulse width of the current supplied to the heating elements can be applied not only to thermal printers that control the current flow time in correspondence with the past drive history as has been described in detail before, it can also be applied to products such as low-cost thermal printers and line printers which do not require high-speed characteristics. In particular, the fact that the relationship between the output values of the A/D converter and the current flow pulse width can be obtained by linear approximation is extremely important. Fig. 12 is a schematic diagram of another example of a standard value generation device according to this invention. The same items as in Fig. 3 have been designated by the same numerals and the description will be focused on the differences with respect to the standard value generation device of Fig. 3. In Fig. 12, 140 is a constant voltage circuit and 141 a voltage divider circuit used to linearize the temperature characteristic of the thermistor. The constant voltage circuit 140 is inserted between the power supply (indicated by 5 V) which supplies the voltage divider circuit 141 including the thermistor 1b and the resistor 15b and a detection range setting pin 153 of the A/D converter 15a. The constant voltage circuit 140 supplies an electrical potential lower than that supplied to the voltage divider circuit 141. The constant voltage circuit 140 employs a high-accuracy 3-pin regulator. In general, the thermistor 1b can be placed on either the positive side or the negative side of the power supply. In this invention, it has been placed on the positive side. This has an important meaning, which will be described in detail later. 152 in Fig. 12 is the positive power supply pin of the A/D converter. 151 is its negative power supply pin, and 155 the detection electrical potential input pin. In this example no resistor is connected in parallel with the thermistor. However, if necessary to obtain optimal printing quality, a resistor may be connected in parallel to change the characteristics. In this example an A/D converter 15a is used that outputs an 8-bit binary code. The A/D converter converts the electrical potential supplied from the node 143 of the voltage divider circuit 141 into a digital value and outputs it. With an 8-bit binary output code a maximum number of 255 steps can be provided. The maximum detection voltage is set to Vm = 4.00 V using the detection range setting pin 153 of the A/D converter. With this maximum detection voltage a resolution of 15.7 mV per step is obtained. The characteristic curve 61 of Fig. 8 has a slightly different temperature range for each voltage interval because it is non-linear. However, with CPU 4 the temperature of the print head can be detected and optimal current flow conditions can be established in accordance with the printing conditions of the printing mode, etc. by means of detecting this electrical potential through a binary code. As will be clear from the characteristic curve, the range of the detection electrical potential has been expanded with respect to what has been usual until now, from 0°C to 60°C. At 40°C and above there is no tendency toward saturation. This is important for the control of the print head. At 40°C and above a fine control is required to control the heat accumulation. If the characteristic curve exhibits a saturation tendency, the detection accuracy of the A/D converter will be deteriorated and accurate print head temperatures cannot be detected. However, at low temperatures, there is a tendency of rapid heat accumulation and there is a small pulse width change for a print head temperature change. Thus, detection accuracy is not required. As a result, the detection electrical potential to the A/D converter requires a characteristic free of saturation at 40°C or higher. The electrical potential of the voltage division point of a voltage divider circuit using a thermistor becomes saturated as it approaches the power supply voltage. In this invention, in order to eliminate this from the A/D converter detection range, an electrical potential lower than the supply voltage of the voltage divider circuit has been made the upper limit of the detection range, so that the upper limit of the detected temperature is about 65°C to 70°C by using the detection range setting pin of the A/D converter. Third Embodiment Fig. 13 is a simplified block diagram of a drive control device for a thermal printer according to a third embodiment of the present invention. In Fig. 13, the same reference numerals are used to designate items which are the same as or similar to those in Fig. 3 and their description will be omitted. In Fig. 13 the standard value generation device 150 includes both, the device that detects the temperature of the print head and generates the current flow time standard value for the heating elements and a device that detects the resistance of a variable resistor 191, which is used to adjust the printing density and generate a density standard value. The major components of the standard value generation device 150 are one type of a thermistor 1b as the heat sensitive element, a resistor 15b, the variable resistor 191, a resistor 191b, transistors 193 and 194 and inverter buffers 195, 196 and 197. The thermistor 1b detects the temperature of the base material of the print head 1 or of the heat sink. The standard value generation device 150 detects the electrical potential Vt at the node between thermistor 1b and resistor 15b forming a first voltage divider, and also detects an electrical potential Vk at the node between resistors 191 and 191b forming a second voltage divider. The standard value generation device generates binary codes corresponding to the detected potentials in synchronism with corresponding commands from the CPU. Capacitors 15c and 191a are used to stabilize the electrical potentials Vt and Vk. Transistors 193 and 194 and inverters 195, 196 and 197 form a selection circuit 190 used to select one of the potentials Vt and Vk to be input to the detection pin 15b of the A/D converter 15a. In recent years, because many products have been released with an 8-bit A/D converter built into the CPU, it has become possible to use such an A/D converter to provide a low-cost thermal printer system. 198 in Fig. 13 is an interface that receives printing data. 199 is an I/O port of the CPU 4 used to control the selection circuit 190. Because the HCU is exactly the same as that of the first embodiment, reference is made to Fig. 5 and the corresponding description. In this embodiment, the standard value generation device 150 has the same potential Vt against temperature T characteristic as that shown in Fig. 8. Moreover, the memory device includes the first memory device storing the relationship expressed by the characteristic in Fig. 8, as well as the second memory device for storing the second data table, namely Table 3. Rv (kΩ) Output potential VK Density correction value 50 ≧ Rv ≧ 45 2.50 - 2.63 1.2 45 ≧ Rv ≧ 40 2.63 - 2.78 1.1 40 ≧ Rv ≧ 35 2.78 - 2.94 1.0 35 ≧ Rv ≧ 30 2.94 - 3.13 0.9 30 ≧ Rv ≧ 25 3.13 - 3.33 0.8 25 ≧ Rv ≧ 20 3.33 - 3.57 0.7 20 ≧ Rv 3.57 - 0.6 Table 4 shows the variable resistance Rv of resistor 191, with both, the maximum resistance of the density adjustment resistor 191 and the resistance of the series connected resistor 191b being 50 kΩ. Table 4 also shows the relationship between the electrical potential Vk of the second voltage divider circuit and a density correction value. The determination of the resistance Rv is performed in substantially the same way as has been explained with respect to the head temperature with reference to Table 2. In addition to the first memory device and the second memory device mentioned above, a third memory device is provided. The relationship between the binary code output from the A/D converter and the density correction value is stored as a data table in the third memory device, which may be formed by the ROM 12. The density correction value is expressed as a coefficient that shows the increases and decreases of the pulse width, and is determined from the value detected by the A/D converter. The density correction value (coefficient) is found from the data table in the third memory device and the standard pulse width stipulated value ((76) in Table 2) is multiplied by this density correction value. Printing at the desired density becomes possible by means of the CPU calculating and using the standard pulse width and the current flow intervals on the basis of the thus modified pulse width stipulated value. For example, with the resistance of resistor 191b being 50 kΩ and with Rv = 30 kΩ, an electrical potential Vk = 3.13 V will be generated. From the data table in the third memory device a density correction value of 0.9 will be taken for the output value of A/D converter 15a corresponding this value of Vk. After the standard pulse width ratio corresponding to the thermistor temperature has been taken from the data table 77 shown in Table 2, the standard pulse width TW can be calculated by multiplying the standard pulse width ratio with the standard pulse width stipulated value and with the density correction value. Fig. 14 shows a flow chart of the operation of the drive control device according to this third embodiment of the invention. First of all, before printing starts, a determination is made as to whether or not the position is the beginning of the first line or the beginning of the first page (step 201). If this is the case, an L level is output via I/O port 199 (step 202). In response to this L level transistor 193 is turned on (step 203) and Vk is output to the detection pin of the A/D converter 15a. The CPU 4 operates the A/D converter and determines the density correction value on the basis of the A/D converter output by means of the data table stored within the third memory device (step 205). The thus obtained density correction value is stored at a designated place within the RAM 13. Then, just before the shift to page drive, an H level is output via I/O port 199 (step 206) turning transistor 194 on (step 207). Therefore, Vt is now input to the detection pin 15b of the A/D converter 15a. As has been explained before with reference to Fig. 9, T0, T1 and T2 represent current flow cycles. The standard value generation device 150 is accessed in synchronism with these current flow cycles and the A/D converter output code is detected in each current flow cycle (step 208). On the basis of the A/D converter output code corresponding to the print head temperature, the data table stored within the first memory device and the density correction value stored in the RAM, the standard pulse width TW is obtained (step 209). From the standard pulse width TW the individual current flow intervals t0, t1...tn are calculated using the ratios stored as a data table (see Table 3) (step 210). The print head will then be driven on the basis of the thus calculated intervals in the same way as has been explained in detail for the first embodiment (step 211). At each designated printing, it will be determined whether or not the final dot line is being driven. If this is not the case, the series of printing operation steps will be repeated (step 212). As indicated in the flow chart of Fig. 14, it is sufficient to execute the setting of the density adjustment at the head of a printing unit, which may be a line or a page for instance. However, the setting of the density adjustment may also be performed for each dot line. With this third embodiment, the printing density correction value and the standard pulse width can be obtained from the standard value detected by the A/D converter, and the current flow interval values can be easily calculated on the basis of the designated ratio. Until now, the density adjustment has generally be performed by varying the print head power supply voltage. However, the print head is sensitive to high voltage and so this method was very dangerous. As a result, during product design, it was necessary to carefully avoid exceeding the maximum rated voltage of the print head at maximum density. With the above explained third embodiment, a damage to the print head can be avoided and high reliability can realized by adjusting the printing density by fixing the power supply voltage and varying the pulse width. In addition a malfunction diagnosis function exists because even if the resistor 191 were damaged, applied energy exceeding the printing variation range to be placed into the data table of the third memory device will not be applied to the print head. Fourth Embodiment Fig. 15 shows a schematic block diagram of a fourth embodiment of the drive control device according to the present invention. Again, the same reference numerals are used in Fig. 15 to designate components which are the same as or similar to those in Fig. 3 and which will be not be specifically described again. In Fig. 15, reference numeral 309 designates a retriggerable one-shot timer circuit that detects relatively long times. A resistor 309a and capacitor 309b are connected to this timer circuit 309 to form a pause time detection circuit which detects whether or not a designated printing pause time has elapsed. The timer circuit 309 is connected to I/O ports 4a and 4b of the CPU 4. Whether the designated time has elapsed can be ascertained from the output level at the OUT pin (connected to I/O port 4b). During the print operation the timer circuit 309 receives trigger signals. As soon as the print operation stops trigger signals are no longer received so that after lapse of the designated time the output level at the OUT pin will change to inform the CPU that a sufficient pause time has elapsed to allow the print head temperature to be detected as the ambient temperature. The designated time is determined by the time constant of the RC circuit 309a, 309b. Reference numeral 19 in Fig. 15 denotes an interface by means of which the printing data are input into the CPU 4. This interface is not only used for the printing data input but also for inputting other data such as the printing mode. Fig. 16 shows a diagram of the relationship between the standard pulse width ratio and the print head temperature T. The standard pulse width ratio is the standard pulse width TW normalized to the standard pulse width TW at a temperature of 25°C. Fig. 16 shows various characteristics with the ambient temperature as parameter. The characteristic 241 which is approximately a straight line represents the ideal relationship between the standard pulse width ratio and the ambient temperature. The characteristics 251 to 259 represent the optimal relationships between the standard pulse width ratio and the print head temperature for various ambient temperatures, which result in the best printing quality. The characteristics are for ambient temperatures from 0°C (251) to 40°C (259) in steps of 5°C. The print head temperature starts with the ambient temperature because, although operation initialization will naturally take place, the head never reaches a temperature lower than the ambient temperature. Actually, the optimal characteristic changes continuously with the ambient temperature. From the characteristics shown in Fig. 16, the following can be taken: 1. The rate of the applied energy change against a temperature change of the print head that incorporates a thermistor is smaller than the rate of the applied energy change against an ambient temperature fluctuation. 2. It is necessary to reduce the applied energy almost linearly with a rise of the ambient temperature. 3. The rate at which the applied energy has to be reduced with a rise of the head temperature, while the head is being driven, gradually increases as the head temperature increase progresses. 4. When the print head starts to be driven at the ambient temperature, the rate at which the applied energy has to be decreased with an increase of the print head temperature (reduction rate p) is smaller than the rate at which the applied energy has to be decreased with an increase of the ambient temperature (reduction rate q). 5. In other words, the relationship of the reduction rate p being smaller than the reduction rate q has to be maintained when the print head is driven from an optional point in the ambient temperature. The fourth embodiment of the drive control device shown in Fig. 15 is an example which is optimal for such characteristics. With reference to Tables 5 and 6 and Fig. 17 it will be described in more detail below. The relationship between the temperature T of the thermistor 1b and the electrical potential Vt is the same as that shown in Fig. 8. Like the previous embodiments, the present embodiment uses an 8-bit A/D converter in its standard value generation device 15. Thus, with a maximum detection voltage of 4 V a resolution of 15.7 mV per step can be obtained. The maximum detection voltage can be easily set using the Vmax pin of the A/D converter. Table 5, which corresponds to Table 2, indicates the corresponding relationships for the present embodiment, namely the relationships between the thermistor temperature T, the electrical potential Vt, the A/D converter output values, the standard pulse width ratios and the standard pulse widths. Table 5 also indicates the standard pulse width stipulated value denoted by 276. The portion of Table 5, designated as 277 and including the A/D converter output code values, the associated standard pulse width ratios and the standard pulse width stipulated value is stored as a first data table within the ROM. As mentioned before, the standard pulse width ratio corresponds to the standard pulse width normalized to the standard pulse width for a temperature of 25°C. Thus, using the A/D output code value and the stored first data table the CPU can easily determine the standard pulse width by taking the standard pulse width ratio corresponding to a respective A/D converter output code value from the first data table and multiplying it with the standard pulse width stipulated value. It should be noted, that the general remarks given in connection with Table 2 apply in the same way here and are therefore not repeated here. Table 6 is a further data table stored within the memory device. This further data table contains correction coefficients for the standard pulse width depending on the ambient temperature. For an ambient temperature of 25°C the correction coefficient is 1. Ambient temperature Correction coefficient 0°C 1.31 10°C 1.18 20°C 1.12 25°C 1.00 30°C 0.95 40°C 0.84 To obtain the ambient temperature compensated standard pulse width, the value calculated from the first data table 277 (Table 5) is further multiplied by the correction coefficient of the further data table which corresponds to the detected ambient temperature. For example, if both the ambient temperature and the print head temperature are 30°C, the standard pulse width ratio of 0.95 taken from the first data table (Table 5) will be multiplied by a correction coefficient of 0.95 taken from the further data table (Table 6). It should be noted, that although Table 6 shows the correction coefficient against the ambient temperature, what will actually be stored within the memory device will be the correction coefficient against the output code of the A/D converter corresponding to the respective ambient temperature. As to the detection of the ambient temperature, if the print head had not been driven for a certain time its temperature will closely approximate the ambient temperature. In other words, the same means used for detecting the print head temperature may be used for detecting the ambient temperature if it can be ensured that the detection is performed after lapse of a predetermined pause time during which the print head is not driven. The above mentioned pause time detection device is used for this purpose. The print head temperature detected after lapse of the head pause time determined by the pause time detection device and prior to the next printer operation can be used as the ambient temperature. The predetermined pause time will change swith the size of the print head. In general, with serial-type thermal printers the print head reaches the ambient temperature in about 3 to 5 minutes. However, because with line-type thermal printers, this takes from 20 to 30 minutes, it is necessary to set the value of the pause time according to the size of the head. With reference to Fig. 17 the operation of the fourth embodiment of the invention will be described in the following. Fig. 17 is a flow chart of the operation steps. Before printing begins, the pause time detection device detects whether this is the first printing after the power was turned on (step 301) or whether the predetermined pause time has elapsed since the last printing (step 302). If it is the first printing or the pause time has elapsed, the A/D converter 15a will be operated to detect the ambient temperature (step 303). Then the correction value for the detected ambient temperature will be taken from the further data table and stored at a designated address of the RAM. If it is not the first printing, the value in the RAM will be updated (step 304). Subsequent to this, the print head will be driven while the head temperature is being detected for each print cycle or current flow cycle (steps 305 and 306). During each of these cycles the standard pulse width TW will be obtained in the manner as described in detail with respect to the first embodiment and will be multiplied with the correction value stored in the RAM to obtain a ambient temperature compensated standard pulse width. From this the individual current flow intervals t0 to t3 will be determined in the same way as with the first embodiment. Thus, the description of Fig. 9 correspondingly applies to the present fourth embodiment. The pause time detection device has been described as using a one-shot timer. However, a timer built into the CPU may also be used. With the fourth embodiment of the invention, the detection of the ambient temperature is possible without needing an additional thermistor. This is a specific advantage of the fourth embodiment. A fine degree of control that gives sufficient consideration to the differences in printing characteristics due to the differences in the thermal transfer and the differences in the ink ribbons is possible. One printer model can handle a variety of ink ribbons, such as color ribbons and multi-time ribbons. As a result of this invention, because it is not necessary that the CPU performs data processing based on the drive history, high speed CPU processing and an increase in the printing speed of the thermal printer have become possible. In addition, by making a unit of the head control unit using a gate array, etc. and by allocating this on to the CPU memory map, a direct connection is made to the data bus and the address bus. The design becomes extremely simple because data need only be written directly from the CPU, and this has also made complicated processing possible. Interval data signals that have been modulated in cycles can be generated within the CPU as standard signals that generate current flow intervals. One benefit is that the circuit burden is small even with an increased amount of historical data to be memorized. Moreover, even when varying the current flow interval and changing the preheat pulse width due to the type of printing paper and the type of ink ribbon, the CPU will determine the types of printing modes and easily find the current flow interval from the function based on the data table stored within the ROM. Because this need only be converted, it is possible to establish an optimal current flow time for the numerous printing modes by means of an extremely simple method. Further, it is possible to calculate the pulse width at an extremely high speed by storing the relationship between the output value of the A/D converter and the ratio of the heating element current flow time or the pulse width. Also, it has been shown that a linear approximation is possible and that the calculation speed will increase. Using a method of finding values by means of a function contributes to a reduction in the capacity of the ROM, because it is not necessary to store the data table within the ROM. By detecting the A/D converter output values and calculating the current flow time from functions and data tables, the temperature of the print head is essentially being detected in real time, and this has made highly accurate heat control possible. Furthermore, by adding on some simple circuitry, it is possible to use the same A/D converter to provide very useful functions that will allow the user to adjust for a preferred density. By making the density adjustment a method that changes the pulse width, it will be safer than voltage changing systems to date, and the product design will be simpler. In addition, even if the volume is damaged, the elimination of abnormal values when calculating the pulse widths is possible, and use in a variety of thermal printers is also possible. As described in detail above, the thermal printer drive control device of this invention can be applied to all types of thermal printers that use heating elements to print and is an extremely beneficial item.

Claims: A drive control device for a thermal printer, supplying a respective drive pulse signal to each of a plurality of heating elements (1a) provided in the print head (1) of the thermal printer, wherein the energy of said drive pulse signals is controlled in response to the temperature of the print head and ambient temperature changes, said drive control device comprising head temperature detection means (1b, 15b) for detecting the temperature of the print head (1), time detection means (309, 309a, 309b, 14) for detecting whether or not the print head (1) has been inactive for a predetermined time or not yet been active after power has been turned on, ambient temperature detection means including said time detection means (309, 309a, 309b, 14), for detecting the head temperature as the ambient temperature when said time detection means indicates that the print head has been inactive for said predetermined time or not yet been active after power has been turned on, control means (4) for operating said head temperature detection means during printing operations of the print head (1) to obtain the temperature of the print head and determine the energy of the drive pulse signals according to the detected head temperature, and correction means (4) for correcting the energy of the drive pulse signals as determined by said control means in accordance with the detected ambient temperature and for operating the ambient temperature detection means before a printing operation of a predetermined print unit. The drive control device according to claim 1, further comprising standard value generation means (15;150) including said head temperature detection means (1b, 15b) and an A/D converter (15a), for periodically converting the output signal (Vt) supplied from said head temperature detection means (1b, 15b) and corresponding to the detected temperature, into a respective standard value, first memory means (12) storing a predetermined relationship between said standard values and standard pulse widths of periodic drive pulse signals, means (4) for determining for each period of said drive pulse signals a primary current flow interval (t0) and a plurality of secondary current flow intervals (t1, t2, t3), the determining means including second memory means (12) storing a predetermined relationship between said standard pulse widths, said primary current flow interval and said secondary current flow intervals, and means (4) for calculating said current flow intervals based on the standard value output from said standard value generation means (15; 150), and the relationships stored in said first and second memory means (12), means (34) for generating a primary current flow pulse signal whose pulse width corresponds to said calculated primary current flow interval (t0), and a number of secondary current flow pulse signals, the pulse width of each secondary current flow pulse signal corresponding to a respective one of said calculated secondary current flow intervals (t1, t2, t3), third memory means (31-33) for storing drive data indicating the active or inactive state for each of said heating elements for the present and a given number of preceding periods of said drive pulse signals, and gate circuit means (GO) connected to said third memory means (31-33) and receiving said primary and secondary current flow pulse signals for combining the primary current flow pulse signal with the present drive data to obtain primary drive pulse signal portions, for combining the secondary current flow pulse signals with the previous drive data for obtaining secondary drive pulse signal portions and for combining the primary and secondary drive pulse signal portions to said drive signals. The drive control device according to claim 2, wherein said first memory means (12) stores a proportional relationship between the standard values and the standard pulse widths. The drive control device according to claim 3, wherein said second memory means (12) stores in a data table the respective proportional relationship between the primary current flow interval and the secondary current flow intervals. The drive control device according to any of claims 2 to 4, wherein said first memory means (12) stores a data table of discrete standard values and associated predetermined standard pulse width values. The drive control device according to any of claims 2 to 4, wherein said first memory means (12) stores said predetermined relationship between standard values and standard pulse width values in the form of a mathematical function said calculating means (4) being adapted to calculate the respective standard pulse width value from the standard value based on the stored function. The drive control device according to any of claims 2 to 4, wherein said first memory means (12) stores said predetermined relationship between standard values and standard pulse width values in the form of a microprogram for said calculating means (4) said microprogram implementing a function to calculate the respective standard pulse width value from the standard value. The drive control device according to claim 6 or 7, wherein said function is a linear function. The drive control device according to any of the preceding claims, wherein said head temperature detection means includes a thermistor (1b) as a temperature sensor. The drive control device according to claim 9, wherein said head temperature detection means comprises a voltage divider circuit including a series connection of said thermistor (1b) and a resistor (15b) for linearizing the temperature characteristic of the thermistor, the thermistor end of the series connection being connected to the positive side of a power supply and the resistor end of the series connection to the negative side of the power supply, wherein further the A/D converter (15a) of the standard value generation means (15; 150) has a detection range setting pin (153) to which a voltage lower than the voltage of the power supply is applied, the node between the thermistor (1b) and the resistor (15b) being connected to the analog input of the A/D converter (15a). The drive control device according to any of claims 2 to 10 wherein said correction means includes means for operating said standard value generation means (15; 150) when said time detection means indicates that the print head has been inactive for said predetermined time, to obtain a correction standard value corresponding to the ambient temperature, and for converting it into a pulse width correction value by means of a fourth memory means (12) storing in a data table the relationship between correction standard values and pulse width correction values and means (4) for correcting each of said standard pulse widths in accordance with said pulse width correction value before said current flow intervals are determined. The drive control device according to claim 1, wherein said head temperature detection means includes a thermistor (1b) mounted on the print head (1), and said drive control means further comprises standard value generation means (1b, 15a, 15b) including said head temperature detection means, for converting the resistance of the thermistor into a standard value representing the head temperature, and means for controlling the energy of said drive pulse signals on the basis of the standard value. The drive control device according to claim 12, wherein said head temperature detection meand comprises a voltage divider including said thermistor (1b), and said standard value generation means (15) includes an A/D converter (15a), for periodically converting the electric potential at the voltage division point of the voltage divider into a respective standard value, said controlling means being adapted to control the width of each of said drive pulse signals. The drive control device according to any of claims 2 to 11, wherein said second memory means (12) stores for each of different printing modes a respective one of said predetermined relationships. A drive control method for a thermal printer, having a plurality of heating elements (1a) provided in its print head (1) and means for detecting the head temperature, wherein a respective drive pulse signal is supplied to each of said heating elements (1a) the energy of said drive pulse signals being controlled in response to the temperature of the print head and ambient temperature changes, said method comprising the steps of detecting whether or not the print head (1) has been inactive for a predetermined time or not yet been active after the power has been turned on, operating said head temperature detection means during printing operations of the print head (1) to obtain the temperature of the print head, operating said head temperature detection means when the print head has been inactive for said predetermined time or not yet been active after the power has been turned on, to obtain the ambient temperature, determining the energy of the drive pulse signals in accordance with the detected head temperature, and correcting the energy of the drive pulse signals thus determined in accordance with the detected ambient temperature.

Inventors: FURUHATA TADASHI, KOBAYASHI NAOKI, MINOWA MASAHIRO, NAKAJIMA SATOSHI, FURUHATA, TADASHI, KOBAYASHI, NAOKI, MINOWA, MASAHIRO, NAKAJIMA, SATOSHI
Applicants: SEIKO EPSON CORP, SEIKO EPSON CORPORATION
Application year: 1990
Main classification: B41J2
IPC codes: B41J2