專利名稱:一種熱敏打印機(jī)分段驅(qū)動(dòng)打印方法及系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及打印機(jī)領(lǐng)域,具體涉及 一種熱敏打印機(jī)分段驅(qū)動(dòng)打印 方法及系統(tǒng)。
背景技術(shù):
熱敏打印機(jī)有選擇地在熱敏紙的確定位置上加熱,由此就產(chǎn)生了 相應(yīng)的圖形。加熱是由與熱敏材料相接觸的打印頭上的一個(gè)小電子加 熱器提供的。加熱器排成方點(diǎn)或條的形式由打印機(jī)進(jìn)行邏輯控制,當(dāng) 被驅(qū)動(dòng)時(shí),就在熱敏紙上產(chǎn)生一個(gè)與加熱元素相應(yīng)的圖形??刂萍訜?元素的同一邏輯電路,同時(shí)也控制著進(jìn)紙,因而能在整個(gè)標(biāo)簽或紙張 上印出圖形。
最普遍的熱敏打印機(jī)使用 一種帶加熱點(diǎn)陣的固定打印頭,這種打
印頭設(shè)有固定數(shù)目的加熱器, 一般為384個(gè)或者更多,每一點(diǎn)為 0.125mmx0.125mm。利用這種點(diǎn)陣,打印機(jī)可把打印點(diǎn)在熱敏紙的 任意位置上。但是目前的這種熱敏機(jī)頭由于電源的限制會(huì)限制同時(shí)打 印的點(diǎn)數(shù)。例如,如果熱敏頭加熱器的平均電阻為176歐姆,工作電 壓為8V,則每一點(diǎn)加熱元件上的電流是45.5mA,如果384個(gè)熱敏頭加 熱器同時(shí)工作的情況下,就需要17.5A的工作電流,而一般的AC—DC 轉(zhuǎn)換器的額定標(biāo)稱是12V/2A輸出,換算到8V電壓,就是3A電流的輸 出, 一旦熱敏頭的384個(gè)加熱器同時(shí)加熱,會(huì)對(duì)電源造成損壞,還有 可能造成安全問題,因此需要對(duì)熱敏頭的加熱器進(jìn)行分段控制。這時(shí), 將上述點(diǎn)陣在橫向上分成多段,在每段進(jìn)行打印,就可以使用小容量 的電源。
對(duì)于熱敏打印機(jī)打印頭來說,設(shè)有選通電路對(duì)一定數(shù)量的加熱器 進(jìn)行控制,根據(jù)熱敏打印機(jī)最大可同時(shí)打印的點(diǎn)數(shù),以及打印機(jī)的加
熱器的數(shù)量,來設(shè)置選通電路的數(shù)目。對(duì)于具有384個(gè)加熱器的打印
機(jī),根據(jù)其技術(shù)參數(shù)可知其最大可同時(shí)打印點(diǎn)數(shù)為64,這樣的熱敏打 印機(jī)具有6個(gè)STROBE選通電路?,F(xiàn)有技術(shù)中,在進(jìn)行打印控制時(shí), 一般采取依次選通各個(gè)選通電路。但是在實(shí)際打印過程中,點(diǎn)陣中所 有加熱器每個(gè)選通電路所控制需要進(jìn)行打印的加熱器的數(shù)目是不定 的,通常不會(huì)同時(shí)被使用,因而其數(shù)目可以設(shè)置為大于最大可同時(shí)打 印點(diǎn)數(shù),也有一些為保證打印效果好而將其設(shè)置為非常少的數(shù)目,前 者由于會(huì)引起每個(gè)加熱器的電壓下降而導(dǎo)致打印不清晰,后者會(huì)影響 打印速度。
發(fā)明內(nèi)容
為了解決上述問題,本發(fā)明的目的是提供一種熱敏打印機(jī)分段驅(qū) 動(dòng)打印方法及系統(tǒng),以保證既不會(huì)損壞電源,又可以高效率完成數(shù)據(jù) 的打印,提高打印速度。
未實(shí)現(xiàn)上述目的,本發(fā)明釆用如下技術(shù)方案
一種熱敏打印機(jī)分段驅(qū)動(dòng)打印方法,該熱敏打印機(jī)中的加熱點(diǎn)陣 在橫向上分段并由不同的選通電路控制,包括步驟
S1 ,統(tǒng)計(jì)根據(jù)打印數(shù)據(jù)確定的加熱點(diǎn)陣需打印的總點(diǎn)數(shù);
S2,若所述總點(diǎn)數(shù)不大于熱敏打印機(jī)可同時(shí)打印的最大點(diǎn)數(shù),執(zhí) 行步驟S3,否則執(zhí)行步驟S4;
S3,同時(shí)驅(qū)動(dòng)所述加熱點(diǎn)陣對(duì)應(yīng)的所有選通電路,直接進(jìn)行打印, 結(jié)束;
S4,分別統(tǒng)計(jì)加熱點(diǎn)陣中每個(gè)選通電路控制的各段需打印的子點(diǎn) 數(shù),將所有的子點(diǎn)數(shù)保存到第一存儲(chǔ)單元;
S5,對(duì)所述子點(diǎn)數(shù)進(jìn)行組合,使得到的每個(gè)組合的子點(diǎn)數(shù)之和不
超過可同時(shí)打印的最大點(diǎn)數(shù);
S6,將各個(gè)組合分別進(jìn)行加熱,組合內(nèi)的子點(diǎn)數(shù)對(duì)應(yīng)的選通電路
釆用同時(shí)驅(qū)動(dòng)打印方式進(jìn)行打印。 其中,步驟S5中對(duì)對(duì)所述子點(diǎn)數(shù)進(jìn)行組合包括以下步驟
S51:從第一存儲(chǔ)單元中找出并刪除最大的子點(diǎn)數(shù)max,將max
保存到第二存儲(chǔ)單元中;
S52:獲取temp, temp =可同時(shí)打印的最大點(diǎn)數(shù)-max;
S53:判斷第一存儲(chǔ)單元中最小的子點(diǎn)數(shù)min是否大于temp,若大 于,執(zhí)行步驟S56,否則執(zhí)行步驟S54;
S54:刪除第一存儲(chǔ)單元中最小的子點(diǎn)數(shù)min,并將min保存到第 二存儲(chǔ)單元中;
S 5 5:獲取temp 1, temp 1 = temp - min ,并將temp 1的值賦給temp , 返回執(zhí)行步驟S53;
S56:將第二存儲(chǔ)單元中所有子點(diǎn)數(shù)作為一個(gè)組合,保存到第三 存儲(chǔ)單元中,并將第二存儲(chǔ)單元?jiǎng)h除為空;
S57:判斷第一存儲(chǔ)單元是否為空,若是則退出,若否則返回執(zhí) 行步驟S51。
其中,所述加熱點(diǎn)陣包括384個(gè)加熱器,所述可同時(shí)打印的最大 點(diǎn)數(shù)為64,所述加熱點(diǎn)陣在橫向上分為6段。
本發(fā)明還提供了 一種熱敏打印機(jī)分段驅(qū)動(dòng)打印系統(tǒng),該系統(tǒng)中加 熱點(diǎn)陣在橫向上分段并由不同的選通電路控制,該系統(tǒng)還包括
需打印點(diǎn)數(shù)獲取單元,用于統(tǒng)計(jì)根據(jù)打印數(shù)據(jù)確定的加熱點(diǎn)陣需 打印的總點(diǎn)數(shù);
直接打印單元,用于在所述動(dòng)點(diǎn)數(shù)不大于可同時(shí)打印的最大點(diǎn)數(shù) 使,同時(shí)驅(qū)動(dòng)所述加熱點(diǎn)陣對(duì)應(yīng)的所有選通電路,直接進(jìn)行打?。?分段統(tǒng)計(jì)單元,用于分別統(tǒng)計(jì)加熱點(diǎn)陣中每個(gè)選通電路控制的各
段需打印的子點(diǎn)數(shù),將所有的子點(diǎn)數(shù)保存到第一存儲(chǔ)單元;
分段打印單元,用于對(duì)所述子點(diǎn)數(shù)進(jìn)行組合,使得到的每個(gè)組合 的子點(diǎn)數(shù)之和不超過可同時(shí)打印的最大點(diǎn)數(shù),將每個(gè)組合內(nèi)的子點(diǎn)數(shù) 對(duì)應(yīng)的選通電路一并進(jìn)行驅(qū)動(dòng)打印。
利用本發(fā)明提供的熱敏打印機(jī)分段驅(qū)動(dòng)打印方法及系統(tǒng),具有以 下有益效果
1) 由于釆用分段打印,任何時(shí)候所打印的點(diǎn)數(shù)都不會(huì)超過可同
時(shí)打印的最大點(diǎn)數(shù),從而避免了對(duì)熱敏打印機(jī)的電源造成損壞;
2) 將不同段有效地進(jìn)行組合,使單位時(shí)間打印的數(shù)據(jù)比依次按 段打印的數(shù)據(jù)要多,提高了打印速度。
圖i是本發(fā)明的分段打印驅(qū)動(dòng)方法的流程圖; 圖2是本發(fā)明的分段打印驅(qū)動(dòng)方法 一種實(shí)施例的流程圖。
具體實(shí)施例方式
以下實(shí)施例用于說明本發(fā)明,但不用來限制本發(fā)明的范圍。 本發(fā)明的熱敏打印機(jī),具有可同時(shí)打印的最大點(diǎn)數(shù),加熱點(diǎn)陣在
橫向上分段并由不同的選通電路控制,若分為N段,則對(duì)應(yīng)N個(gè)選通 電路。 一般依據(jù)熱敏打印機(jī)的加熱點(diǎn)陣中的加熱器個(gè)數(shù)和可同時(shí)打印 的最大點(diǎn)數(shù),來選取N的取值,比如來說,對(duì)于具有384個(gè)加熱器的 熱敏打印機(jī),其物理可同時(shí)打印的最大點(diǎn)數(shù)為64,因此,N取6。本 發(fā)明熱敏打印機(jī)分段打印控制方法中,加熱點(diǎn)陣中加熱器的個(gè)數(shù)不限 于384個(gè),只要是構(gòu)成加熱點(diǎn)陣、橫向上分段且由不同選通電路控制 的加熱器個(gè)數(shù),均落入本發(fā)明所要保護(hù)的范圍。
對(duì)于6個(gè)選通電路的信號(hào)STROBE來說,對(duì)加熱點(diǎn)陣中的每個(gè)加 熱器輸出數(shù)據(jù)'T,,則該加熱器為可打印的點(diǎn),在實(shí)際打印時(shí),并不 是每個(gè)選通信號(hào)控制的可打印的點(diǎn)數(shù)都為可同時(shí)打印的最大點(diǎn)數(shù),有 的相對(duì)于可同時(shí)打印的最大點(diǎn)數(shù)少的多,因此,可將幾個(gè)選通信號(hào)控 制的可打印的點(diǎn)數(shù)組成 一 組,使其總和不超過可同時(shí)打印的最大點(diǎn) 數(shù),然后在打印時(shí),這幾組選通電路同時(shí)工作,這樣有利于打印速度 的提高。
因此,本發(fā)明的熱敏打印機(jī)分段驅(qū)動(dòng)打印方法,基于上述原理,
釆用下述方法統(tǒng)計(jì)加熱點(diǎn)陣中需打印的總點(diǎn)數(shù),該總點(diǎn)數(shù)具有是由 要打印的數(shù)據(jù)確定的,如果該總點(diǎn)數(shù)不大于可同時(shí)打印的最大點(diǎn)數(shù), 則默認(rèn)為分成一段, 一次驅(qū)動(dòng)所有的選通電路,直接進(jìn)行打印,即實(shí) 現(xiàn)加熱點(diǎn)陣中所有可被打印的點(diǎn)進(jìn)行打?。蝗绻笥诳赏瑫r(shí)打印的最 大點(diǎn)數(shù),則分別統(tǒng)計(jì)每個(gè)選通電路中所對(duì)應(yīng)的段中要打印的子點(diǎn)數(shù),
將這些子點(diǎn)數(shù)存入建立的第一鏈表中;然后對(duì)這些子點(diǎn)數(shù)進(jìn)行組合,
使每個(gè)組合之后的子點(diǎn)數(shù)之和不超過可同時(shí)打印的最大點(diǎn)數(shù),將每個(gè) 組合內(nèi)的子點(diǎn)數(shù)對(duì)應(yīng)的選通電路一并進(jìn)行打印驅(qū)動(dòng)。
根據(jù)本發(fā)明的原理,對(duì)每個(gè)選通電路中所要打印的點(diǎn)數(shù)進(jìn)行組合 時(shí)所釆用的方式,只要滿足使每個(gè)組合之后的子點(diǎn)數(shù)之和不超過可同 時(shí)打印的最大點(diǎn)數(shù),任何組合方式都可以使用。
作為本發(fā)明的 一種實(shí)施例,釆用以下步驟進(jìn)行分段打印驅(qū)動(dòng) S1:統(tǒng)計(jì)根據(jù)打印數(shù)據(jù)確定的加熱點(diǎn)陣中需打印的總點(diǎn)數(shù)(數(shù)據(jù)
為"l"為需要打印的點(diǎn));
52, 將總點(diǎn)數(shù)同熱敏打印機(jī)的可同時(shí)打印的最大點(diǎn)數(shù)相比較,若 所述總點(diǎn)數(shù)不大于熱敏打印機(jī)可同時(shí)打印的最大點(diǎn)數(shù),執(zhí)行步驟S3, 否則執(zhí)行步驟S4;
53, 同時(shí)驅(qū)動(dòng)所述加熱點(diǎn)陣對(duì)應(yīng)的所有選通電路,直接進(jìn)行打?。?br>
54, 分別統(tǒng)計(jì)加熱點(diǎn)陣中每個(gè)選通電路控制的各段需打印的子點(diǎn) 數(shù),建立第一鏈表,將所有的子點(diǎn)數(shù)保存到第一鏈表中;
S51,從第一鏈表中找出最大的子點(diǎn)數(shù)max,在刪除將此子點(diǎn)數(shù) max添加到新建的第二鏈表中;
S52:然后建立temp-可同時(shí)打印的最大點(diǎn)數(shù)-max;
S53:判斷第一鏈表中最小的子點(diǎn)數(shù)min,是否大于temp,如果大 于,轉(zhuǎn)入步驟S56,否則轉(zhuǎn)入步驟S54;
S54:刪除第一鏈表中最小的子點(diǎn)數(shù)min,并將此子點(diǎn)數(shù)min添加 到第二鏈表中;
S55:建立templ =temp_min,并把templ的值賦給temp,轉(zhuǎn)入步 驟S5;
S56:將第二鏈表中所有子點(diǎn)數(shù)對(duì)應(yīng)的STROBE組成一個(gè)數(shù)組, 存入新建的第三鏈表中,并將第二鏈表刪除為空;
S57:判斷第一鏈表是否為空,如果是,退出,否則轉(zhuǎn)入步驟S3。 S6:統(tǒng)計(jì)第三鏈表中的數(shù)組數(shù)為分區(qū)段數(shù),將各個(gè)組合分別進(jìn)行 加熱,組合內(nèi)的子點(diǎn)數(shù)對(duì)應(yīng)的選通電路釆用同時(shí)驅(qū)動(dòng)打印方式打印。
本實(shí)施例中熱敏打印機(jī)分段驅(qū)動(dòng)的系統(tǒng),該系統(tǒng)中加熱點(diǎn)陣在橫 向上分段并由不同的選通電路控制,該系統(tǒng)還包括
需打印點(diǎn)數(shù)獲取單元,用于統(tǒng)計(jì)根據(jù)打印數(shù)據(jù)確定的加熱點(diǎn)陣需 打印的總點(diǎn)數(shù);
直接打印單元,用于在所述動(dòng)點(diǎn)數(shù)不大于可同時(shí)打印的最大點(diǎn)數(shù) 使,同時(shí)驅(qū)動(dòng)所述加熱點(diǎn)陣對(duì)應(yīng)的所有選通電路,直接進(jìn)行打印;
分段統(tǒng)計(jì)單元,用于分別統(tǒng)計(jì)加熱點(diǎn)陣中每個(gè)選通電路控制的各 段需打印的子點(diǎn)數(shù),將所有的子點(diǎn)數(shù)保存到第一存儲(chǔ)單元;
分段打印單元,用于對(duì)所述子點(diǎn)數(shù)進(jìn)行組合,使得到的每個(gè)組合 的子點(diǎn)數(shù)之和不超過可同時(shí)打印的最大點(diǎn)數(shù),將每個(gè)組合內(nèi)的子點(diǎn)數(shù) 對(duì)應(yīng)的選通電路一并進(jìn)行驅(qū)動(dòng)打印。
以上實(shí)施方式僅用于說明本發(fā)明,而并非對(duì)本發(fā)明的限制,有關(guān) 技術(shù)領(lǐng)域的普通技術(shù)人員,在不脫離本發(fā)明的精神和范圍的情況下, 還可以做出各種變化和變型,因此所有等同的技術(shù)方案也屬于本發(fā)明 的范疇,本發(fā)明的專利保護(hù)范圍應(yīng)由權(quán)利要求限定。
權(quán)利要求
1、一種熱敏打印機(jī)分段驅(qū)動(dòng)打印方法,該熱敏打印機(jī)中的加熱點(diǎn)陣在橫向上分段并由不同的選通電路控制,其特征在于,包括步驟S1,統(tǒng)計(jì)根據(jù)打印數(shù)據(jù)確定的加熱點(diǎn)陣需打印的總點(diǎn)數(shù);S2,若所述總點(diǎn)數(shù)不大于熱敏打印機(jī)可同時(shí)打印的最大點(diǎn)數(shù),執(zhí)行步驟S3,否則執(zhí)行步驟S4;S3,同時(shí)驅(qū)動(dòng)所述加熱點(diǎn)陣對(duì)應(yīng)的所有選通電路,直接進(jìn)行打印,結(jié)束;S4,分別統(tǒng)計(jì)加熱點(diǎn)陣中每個(gè)選通電路控制的各段需打印的子點(diǎn)數(shù),將所有的子點(diǎn)數(shù)保存到第一存儲(chǔ)單元;S5,對(duì)所述子點(diǎn)數(shù)進(jìn)行組合,使得到的每個(gè)組合的子點(diǎn)數(shù)之和不超過可同時(shí)打印的最大點(diǎn)數(shù);S6,將各個(gè)組合分別進(jìn)行加熱,組合內(nèi)的子點(diǎn)數(shù)對(duì)應(yīng)的選通電路采用同時(shí)驅(qū)動(dòng)打印方式進(jìn)行打印。
2、 如權(quán)利要求1所述的熱敏打印機(jī)分段驅(qū)動(dòng)打印方法,其特征 在于,步驟S5中對(duì)對(duì)所述子點(diǎn)數(shù)進(jìn)行組合包括以下步驟-.S51:從第一存儲(chǔ)單元中找出并刪除最大的子點(diǎn)數(shù)max,將max 保存到第二存儲(chǔ)單元中;S52:獲取temp, temp =可同時(shí)打印的最大點(diǎn)數(shù)-max;S53:判斷第一存儲(chǔ)單元中最小的子點(diǎn)數(shù)min是否大于temp,若大 于,執(zhí)行步驟S56,否則執(zhí)行步驟S54;S54:刪除第一存儲(chǔ)單元中最小的子點(diǎn)數(shù)min,并將min保存到第 二存儲(chǔ)單元中;S55:獲取temp 1 , temp 1 = temp - min,并將temp 1的值賦給temp ,返回執(zhí)行步驟S53;S56:將第二存儲(chǔ)單元中所有子點(diǎn)數(shù)作為一個(gè)組合,保存到第三 存儲(chǔ)單元中,并將第二存儲(chǔ)單元?jiǎng)h除為空; S57:判斷第一存儲(chǔ)單元是否為空,若是則退出,若否則返回執(zhí) 行步驟S51。
3、 如權(quán)利要求1或2所述的熱敏打印機(jī)分段驅(qū)動(dòng)打印方法,其 特征在于,所述加熱點(diǎn)陣包括384個(gè)加熱器,所述可同時(shí)打印的最大 點(diǎn)數(shù)為64,所述加熱點(diǎn)陣在橫向上分為6段。
4、 一種熱敏打印機(jī)分段驅(qū)動(dòng)打印系統(tǒng),該系統(tǒng)中加熱點(diǎn)陣在橫 向上分段并由不同的選通電路控制,其特征在于,該系統(tǒng)還包括需打印點(diǎn)數(shù)獲取單元,用于統(tǒng)計(jì)根據(jù)打印數(shù)據(jù)確定的加熱點(diǎn)陣需 打印的總點(diǎn)數(shù);直接打印單元,用于在所述動(dòng)點(diǎn)數(shù)不大于可同時(shí)打印的最大點(diǎn)數(shù) 使,同時(shí)驅(qū)動(dòng)所述加熱點(diǎn)陣對(duì)應(yīng)的所有選通電路,直接進(jìn)行打??; 分段統(tǒng)計(jì)單元,用于分別統(tǒng)計(jì)加熱點(diǎn)陣中每個(gè)選通電路控制的各段需打印的子點(diǎn)數(shù),將所有的子點(diǎn)數(shù)保存到第一存儲(chǔ)單元;分段打印單元,用于對(duì)所述子點(diǎn)數(shù)進(jìn)行組合,使得到的每個(gè)組合 的子點(diǎn)數(shù)之和不超過可同時(shí)打印的最大點(diǎn)數(shù),將每個(gè)組合內(nèi)的子點(diǎn)數(shù) 對(duì)應(yīng)的選通電路一 并進(jìn)行驅(qū)動(dòng)打印。
全文摘要
本發(fā)明涉及一種熱敏打印機(jī)分段驅(qū)動(dòng)打印方法及系統(tǒng),該方法通過獲取加熱點(diǎn)陣需打印的總點(diǎn)數(shù),在其不大于可同時(shí)打印的最大點(diǎn)數(shù)時(shí),全部驅(qū)動(dòng)完成打印,在其大于可同時(shí)打印的最大點(diǎn)數(shù)時(shí),對(duì)每段的需打印的子點(diǎn)數(shù)進(jìn)行組合,使每個(gè)組合內(nèi)的子點(diǎn)數(shù)之和不超過可同時(shí)打印的最大點(diǎn)數(shù),再依次打印每個(gè)組合,將每個(gè)組合內(nèi)的子點(diǎn)數(shù)對(duì)應(yīng)的選通電路一并進(jìn)行驅(qū)動(dòng)打印,該系統(tǒng)也完成了每段的需打印的子點(diǎn)數(shù)的組合。利用本發(fā)明進(jìn)行打印,既避免了電源的損壞,又保證高效率在同一時(shí)間內(nèi)打印較多數(shù)量的數(shù)據(jù),加快了打印速度。
文檔編號(hào)B41J2/355GK101357543SQ20081022299
公開日2009年2月4日 申請(qǐng)日期2008年9月25日 優(yōu)先權(quán)日2008年9月25日
發(fā)明者軍 伍, 揚(yáng) 劉, 呂金泉, 姚志毅, 煒 蓋, 蔣麗琴 申請(qǐng)人:北京公達(dá)數(shù)碼科技有限公司