專利名稱:記錄裝置、記錄裝置的控制方法以及記錄介質(zhì)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種根據(jù)由主計算機(jī)發(fā)送的命令進(jìn)行記錄的記錄裝置、記錄裝置的控 制方法以及記錄介質(zhì)。
背景技術(shù):
以往,根據(jù)由作為上位裝置的主計算機(jī)發(fā)送的命令而動作的記錄裝置為公眾所知 (例如,參照專利文獻(xiàn)1)。在這種記錄裝置從主計算機(jī)接收的命令中,具有與通常的命令 不同的、記錄裝置的狀態(tài)送回指示或復(fù)位指示的命令等需要進(jìn)行迅速處理的即時處理命令 (實時控制命令)。例如,在專利文獻(xiàn)1所記載的裝置中,當(dāng)從主計算機(jī)接收到數(shù)據(jù)時,檢測 接收數(shù)據(jù)中的命令以及即時處理命令,將通常的命令和與通常的命令有關(guān)的數(shù)據(jù)保存在接 收緩沖存儲器的隊列中并且按照接收順序執(zhí)行,而不將即時處理命令保存在接收緩沖存儲 器中,并且不論接收順序如何都迅速執(zhí)行。專利文獻(xiàn)1 日本特開2001-260435號公報但是,在所述以往的方法中,每次接收時,都檢測從主計算機(jī)接收到的全部接收數(shù) 據(jù)中是否包含有命令,在包含有命令的情況下進(jìn)一步判斷其是否為即時處理命令,因此,例 如在將大量的數(shù)據(jù)匯集并發(fā)送的情況下,在保存到接收緩沖存儲器之前,由于要對所有的 接收數(shù)據(jù)進(jìn)行上述的命令的檢測處理,所以該檢測處理可能導(dǎo)致?lián)矶?bottleneck)從而 造成通過量降低。另外,在通常的記錄裝置中,在用紙等記錄介質(zhì)被用完時、記錄裝置的罩體被打開 時、產(chǎn)生錯誤時等記錄動作運行不當(dāng)?shù)那闆r下,在停止記錄動作的同時,使與主計算機(jī)連接 的接口斷線(offline)(邏輯上的切斷狀態(tài)),從而保全從記錄裝置以及主計算機(jī)接收的數(shù) 據(jù)并確保使用者的安全。這種記錄裝置在斷線狀態(tài)下不進(jìn)行接收數(shù)據(jù)中的命令的檢測以及 接收數(shù)據(jù)的處理,在這種情況下,即使在接收數(shù)據(jù)中包含即時處理命令,由于未對其進(jìn)行檢 測,所以有可能導(dǎo)致針對即時處理命令的對應(yīng)遲緩。
發(fā)明內(nèi)容
本發(fā)明是鑒于上述情況而提出的,其目的在于提供一種能夠根據(jù)由主計算機(jī)發(fā)送 的命令控制記錄裝置、并在對由主計算機(jī)發(fā)送的命令迅速地進(jìn)行檢測的同時迅速地檢測并 執(zhí)行即時處理命令的記錄裝置、記錄控制方法以及記錄介質(zhì)。為了達(dá)成所述目的,本發(fā)明提供一種記錄裝置,能夠與主計算機(jī)連接并根據(jù)包括 從所述主計算機(jī)接收到的命令在內(nèi)的接收數(shù)據(jù)進(jìn)行記錄,該記錄裝置的特征在于,具備接 收緩沖存儲器,其保存從所述主計算機(jī)接收到的所述接收數(shù)據(jù);命令檢測部,其利用第一讀 出指示器掃描所述接收緩沖存儲器且同時讀取在所述接收緩沖存儲器保存的所述接收數(shù) 據(jù),從而檢測包含在所述接收數(shù)據(jù)中的所述命令;命令執(zhí)行部,其按照所述命令向所述接收 緩沖存儲器保存的保存順序處理由所述命令檢測部檢測到的所述命令;即時處理命令檢測 部,其利用與所述第一讀出指示器不同而另行設(shè)置的第二讀出指示器掃描所述接收緩沖存儲器且同時讀取在所述接收緩沖存儲器保存的所述接收數(shù)據(jù),從而檢測包含在所述接收數(shù) 據(jù)中的即時處理命令,無論所述命令向所述接收緩沖存儲器保存的所述保存順序如何,所 述命令執(zhí)行部都優(yōu)先處理由所述即時處理命令檢測部檢測到的所述即時處理命令。根據(jù)該結(jié)構(gòu),從主計算機(jī)接收到的包含命令、印刷數(shù)據(jù)在內(nèi)的接收數(shù)據(jù)被保存在 接收緩沖存儲器中,利用命令用的第一讀出指示器與即時處理命令用的第二讀出指示器分 別獨立地掃描該接收緩沖存儲器,分別檢測通常的命令和即時處理命令。由于將來自主計 算機(jī)的接收數(shù)據(jù)暫時保存到接收緩沖存儲器后進(jìn)行命令的檢測,所以即使在短時間內(nèi)從主 計算機(jī)接收到大量數(shù)據(jù)的情況下,也能夠不進(jìn)行命令檢測等而迅速接收并保存所有的數(shù) 據(jù),然后無遺漏地進(jìn)行分析而檢測命令。而且,由于利用與通常的命令的讀出指示器不同的 讀出指示器掃描接收緩沖存儲器而檢測即時處理命令,所以能夠在不受通常的命令的執(zhí)行 狀態(tài)影響的情況下僅迅速地檢測即時處理命令。因此,即使接收數(shù)據(jù)量大也能夠迅速處理 即時處理命令。在這種情況下,也可以利用第一讀出指示器檢測、處理即時處理命令以外的命令。 當(dāng)由第二讀出指示器檢測到的即時處理命令被第一讀出指示器再次檢測到時,不對即時處 理命令進(jìn)行重復(fù)處理。能夠以規(guī)定的定時處理由第二讀出指示器檢測到的即時處理命令。 另外,也可以根據(jù)即時處理命令的種類,再次利用第一讀出指示器檢測并處理由第二讀出 指示器檢測并處理的即時處理命令。由于記錄裝置的狀態(tài)送回指示等可以被重復(fù)處理,所 以利用第一讀出指示器和第二讀出指示器中的任意一個均能夠檢測并處理即時處理命令。在此,即使在停止執(zhí)行通常的命令的斷線狀態(tài)下,也可以檢測即時處理命令并對 其進(jìn)行處理。在該情況下,具有即使在斷線狀態(tài)下也能夠迅速處理即時處理命令的優(yōu)點。另外,命令執(zhí)行部在通常動作狀態(tài)下執(zhí)行命令檢測部檢測到的命令,并且可以在 通常動作狀態(tài)以及斷線狀態(tài)中任一個狀態(tài)下處理即時處理命令檢測部檢測到的即時處理 命令。在所述結(jié)構(gòu)中,還具備即時處理命令用緩沖存儲器,該即時處理命令用緩沖存儲 器保存在所述接收緩沖存儲器大致成為緩沖存儲器已滿狀態(tài)后接收到的接收數(shù)據(jù),所述即 時處理命令檢測部利用所述第二讀出指示器掃描所述即時處理命令用緩沖存儲器,并檢測 包含在所述接收數(shù)據(jù)中的所述即時處理命令。在這種情況下,即使來自主計算機(jī)的接收數(shù)據(jù)的容量多且接收緩沖存儲器處于緩 沖存儲器已滿或者接近緩沖存儲器已滿的狀態(tài)下,由于能夠檢測并處理即時處理命令,所 以即使接收數(shù)據(jù)量大也能夠?qū)磿r處理命令迅速做出響應(yīng)。在緩沖存儲器已滿的情況下, 通常,記錄裝置成為不進(jìn)行命令的檢測、執(zhí)行的斷線狀態(tài)。在本發(fā)明的結(jié)構(gòu)中,即使記錄裝 置處于斷線狀態(tài)下,由于能夠檢測并執(zhí)行與通常的命令不同的即時處理命令,所以能夠迅 速處理即時處理命令。另外,存在即使記錄裝置通知斷線狀態(tài),主計算機(jī)也發(fā)送即時處理命 令并使記錄裝置進(jìn)行處理的情況。即使在這種情況下,由于記錄裝置能夠接收即時處理命 令,所以能夠檢測、處理即時處理命令。另外,當(dāng)記錄裝置從在線切換為斷線時,主計算機(jī)無 法迅速停止數(shù)據(jù)的發(fā)送,也能夠?qū)σ阉统龅募磿r處理命令進(jìn)行處理。為了在斷線通知后也 能夠使記錄裝置接收即時處理命令,記錄裝置優(yōu)選具備即時處理命令用緩沖存儲器那樣的 子接收緩沖存儲器。而且,所述第二讀出指示器也可以比所述第一讀出指示器先執(zhí)行對所述接收緩沖
5存儲器的掃描。在這種情況下,用于檢測即時處理命令的讀出指示器比用于檢測通常的命令的讀 出指示器先執(zhí)行對接收緩沖存儲器的掃描,所以能夠在不受通常的命令的檢測以及執(zhí)行狀 態(tài)影響的情況下迅速檢測即時處理命令。另外,所述第一讀出指示器被設(shè)定為不超越所述
第二讀出指示器。另外,在所述結(jié)構(gòu)中,具備對用于將接收數(shù)據(jù)向接收緩沖存儲器寫入的寫入指示 器的寫入位置進(jìn)行加法運算、對所述第一讀出指示器的讀出位置進(jìn)行減法運算并進(jìn)行計數(shù) 的計數(shù)器,該計數(shù)器可以表示所述接收緩沖存儲器的接收數(shù)據(jù)量。通過對該接收數(shù)據(jù)量和 接收緩沖存儲器的容量進(jìn)行比較,能夠判斷緩沖存儲器已滿。當(dāng)由所述第二讀出指示器檢測到的所述即時處理命令被所述第一讀出指示器再 次檢測到時,命令執(zhí)行部可以不對即時處理命令進(jìn)行重復(fù)處理。從而,即時處理命令沒有被
重復(fù)處理。而且,在所述結(jié)構(gòu)中,可以還具備接收控制部,在所述命令檢測部以及所述即時處 理命令檢測部分別檢測包含在所述接收數(shù)據(jù)中的所述命令之前,所述接收控制部使從所述 主計算機(jī)接收到的所述接收數(shù)據(jù)保存在所述接收緩沖存儲器中。在這種情況下,在對通常的命令以及即時處理命令進(jìn)行檢測的處理之前接收數(shù)據(jù) 被保存到接收緩沖存儲器,對在接收緩沖存儲器保存的接收數(shù)據(jù)分別進(jìn)行命令的檢測。因 此,即使在短時間內(nèi)從主計算機(jī)接收到大量的數(shù)據(jù)的情況下,也能夠不進(jìn)行命令檢測等處 理而迅速接收并保存所有的數(shù)據(jù),并能夠在保存后無遺漏地進(jìn)行分析并檢測命令。另外,在所述結(jié)構(gòu)中,所述接收控制部具備轉(zhuǎn)送部,該轉(zhuǎn)送部將從所述主計算機(jī)的 接口接收到的所述接收數(shù)據(jù)直接轉(zhuǎn)送到所述接收緩沖存儲器。 在這種情況下,例如利用DMA (直接存儲器存取)等將來自主計算機(jī)的USB接口的 接收數(shù)據(jù)直接轉(zhuǎn)送并保存到接收緩沖存儲器中,所以能夠在記錄裝置和主計算機(jī)之間更高 速地發(fā)送、接收數(shù)據(jù),并且,能夠在無遺漏地接收數(shù)據(jù)的情況下可靠地將其保存到接收緩沖 存儲器并進(jìn)行分析。由此,能夠使與主計算機(jī)間的通信高速化而提高通過量。另外,本發(fā)明提供一種記錄裝置的控制方法,用于對能夠與主計算機(jī)連接并根據(jù) 包括從所述主計算機(jī)接收到的命令在內(nèi)的接收數(shù)據(jù)進(jìn)行記錄的記錄裝置進(jìn)行控制,該記錄 裝置的控制方法的特征在于,包括將從所述主計算機(jī)接收到的所述接收數(shù)據(jù)保存到接收 緩沖存儲器中的工序;利用第一讀出指示器掃描所述接收緩沖存儲器且同時讀取在所述接 收緩沖存儲器保存的所述接收數(shù)據(jù),從而檢測包含在所述接收數(shù)據(jù)中的所述命令的工序; 按照所述命令向所述接收緩沖存儲器保存的保存順序處理被檢測到的所述命令的工序;利 用與所述第一讀出指示器不同而另行設(shè)置的第二讀出指示器掃描所述接收緩沖存儲器且 同時讀取在所述接收緩沖存儲器保存的所述接收數(shù)據(jù),從而檢測包含在所述接收數(shù)據(jù)中的 即時處理命令的工序;無論所述命令向所述接收緩沖存儲器保存的所述保存順序如何,都 優(yōu)先處理被檢測到的所述即時處理命令的工序。根據(jù)該方法,從主計算機(jī)接收到的接收數(shù)據(jù)暫時被保存在接收緩沖存儲器中,利 用通常的命令用的第一讀出指示器和即時處理命令用的第二讀出指示器分別獨立地掃描 接收緩沖存儲器,從而分別檢測通常的命令和即時處理命令。由于不對來自主計算機(jī)的接 收數(shù)據(jù)進(jìn)行命令檢測等處理,而在將其保存到接收緩沖存儲器之后進(jìn)行命令的檢測,所以即使在短時間內(nèi)從主計算機(jī)接收到大量的數(shù)據(jù)的情況下,也能夠不進(jìn)行命令檢測等處理而 迅速地接收并保存所有的數(shù)據(jù),并在保存后無遺漏地進(jìn)行分析并檢測命令。因此,能夠在不 受通常的命令的執(zhí)行狀態(tài)影響的情況下迅速檢測即時處理命令。另外,即使接收數(shù)據(jù)量大 也能夠迅速處理即時處理命令。另外,本發(fā)明提供一種程序,該程序使能夠與主計算機(jī)連接并根據(jù)包括從所述主 計算機(jī)接收到的命令在內(nèi)的接收數(shù)據(jù)進(jìn)行記錄的記錄裝置的控制部執(zhí)行上述記錄裝置的 控制方法。通過由控制部執(zhí)行該程序,將從主計算機(jī)接收到的接收數(shù)據(jù)保存到接收緩沖存儲 器,利用通常的命令用的第一讀出指示器和即時處理命令用的第二讀出指示器分別獨立地 掃描接收緩沖存儲器,從而分別檢測通常的命令和即時處理命令。由于在將來自主計算機(jī) 的接收數(shù)據(jù)保存到接收緩沖存儲器之后進(jìn)行命令的檢測,所以即使在短時間內(nèi)從主計算機(jī) 接收到大量的數(shù)據(jù)的情況下,也能夠不進(jìn)行命令檢測等處理而迅速地接收并保存所有的數(shù) 據(jù),然后能夠無遺漏地進(jìn)行分析并檢測命令。因此,能夠在不受通常的命令的執(zhí)行狀態(tài)影響 的情況下迅速地檢測即時處理命令。另外,即使接收數(shù)據(jù)量大也能夠迅速處理即時處理命 令。另外,本發(fā)明提供一種存儲有所述程序的存儲介質(zhì)。根據(jù)本發(fā)明,即使在短時間內(nèi)從主計算機(jī)接收到大量的數(shù)據(jù)的情況下,也能夠不 進(jìn)行命令檢測等處理而迅速地接收并保存所有的數(shù)據(jù)、并在無遺漏地進(jìn)行分析而檢測命令 的同時迅速地檢測并迅速地處理即時處理命令。
圖1是表示實施方式的POS終端的大致結(jié)構(gòu)的圖。圖2是表示打印機(jī)的結(jié)構(gòu)的框圖。圖3是打印機(jī)的控制部的功能框圖。圖4(A)是示意性地表示接收緩沖存儲器的結(jié)構(gòu)的圖。圖4(B)是示意性地表示子接收緩沖存儲器的結(jié)構(gòu)的圖。圖5是表示打印機(jī)的動作的流程圖。圖6是詳細(xì)表示打印機(jī)的動作的流程圖。圖7是詳細(xì)表示打印機(jī)的動作的流程圖。圖8㈧是表示主計算機(jī)和打印機(jī)的連接形式的例子的說明圖。圖8(B)是表示主計算機(jī)和打印機(jī)的連接形式的例子的說明圖。附圖標(biāo)記說明1-P0S終端、2…打印機(jī)(記錄裝置)、4…主計算機(jī),20···打印發(fā)動機(jī)、21…控制 部、21A…命令檢測部、21B…實時控制命令檢測部(即時處理命令檢測部)、21C…命令執(zhí)行 部、24...EEPR0M、24A…控制程序(程序)、25…接收控制部、25A…USB控制器(轉(zhuǎn)送部)、 31…接收緩沖存儲器、31C…讀出指示器(第一讀出指示器)、31D…實時控制命令讀出指示 器(第二讀出指示器)、32…子接收緩沖存儲器(即時處理命令用緩沖存儲器)
具體實施例方式以下,參照
本發(fā)明的實施方式。圖1是表示適用了本發(fā)明的實施方式的POS終端1的大致結(jié)構(gòu)的圖。POS終端1例如設(shè)置在小商店等店鋪內(nèi),作為精算營業(yè)額的記錄器,以構(gòu)成銷售時 刻管理系統(tǒng)(P0S系統(tǒng))。POS終端1通過將進(jìn)行營業(yè)額登記處理以及精算處理的主計算機(jī) 4與發(fā)行小票101的打印機(jī)2連接而構(gòu)成。在此,主計算機(jī)4相對于打印機(jī)2而言相當(dāng)于外 部連接的裝置。另外,主計算機(jī)4經(jīng)由通信電路被連接到收集營業(yè)額登記信息的POS服務(wù) 器5。主計算機(jī)4具備顯示營業(yè)額登記處理以及精算處理的處理內(nèi)容的顯示器41、對當(dāng)營 業(yè)額登記處理時附在商品上的條形碼進(jìn)行讀取的條形碼掃描儀42、具備營業(yè)額登記鍵等各 種鍵的鍵輸入部43、收容精算用現(xiàn)金的現(xiàn)金抽屜44等?,F(xiàn)金抽屜44如后所述與打印機(jī)2 連接,并在接收到由打印機(jī)2輸入的抽屜打開信號時打開。作為記錄裝置(記錄裝置)的打印機(jī)2在主體11收容作為記錄介質(zhì)的熱敏圓筒 紙,利用印刷頭在圓筒紙上印刷(記錄)圖像,并輸出小票101。打印機(jī)2具備輸送圓筒紙 的輥形狀的壓紙卷軸(圖示略)和與該壓紙卷軸相對配置的印刷頭,在排紙口 14的附近配 置有切斷圓筒紙的刀具單元(圖示略)。本實施方式的打印機(jī)2所具備的印刷頭例如是通 過將發(fā)熱體(圖示略)沿圓筒紙的寬度方向排列為一列或者多列而構(gòu)成的行式熱敏頭。利 用后述的打印發(fā)動機(jī)20對各個發(fā)熱體獨立通電,通過利用與圓筒紙的印刷面(記錄面)密 接的發(fā)熱體向圓筒紙?zhí)峁崮?,從而使圓筒紙顯色。利用印刷頭印刷的圓筒紙從在主體11的上表面形成的排紙口 14被向外輸送,然 后被刀具單元切斷,從而作為小票101被輸出。在小票101上印刷有店名、售出商品名稱、 商品數(shù)量、金額、合計金額等文字和標(biāo)志圖像等。另外,如圖1所示,在打印機(jī)2的主體11上設(shè)有能夠開閉的罩體12。在主體11設(shè) 有用于打開罩體12的柄13,當(dāng)打開罩體12時,收容圓筒紙的空間露出,從而能夠進(jìn)行圓筒 紙的補充、更換。另外,在主體11設(shè)有使打印機(jī)2的電源0N/0FF的電源開關(guān)16、用于指 示圓筒紙的送紙動作并且在控制時的規(guī)定條件下進(jìn)行操作以對動作模式的切換等進(jìn)行指 示的送紙開關(guān)17、以及用于顯示打印機(jī)2的動作狀態(tài)等的LED顯示部18。打印機(jī)2驅(qū)動使壓紙卷軸輥旋轉(zhuǎn)而輸送圓筒紙的輸送電機(jī)、驅(qū)動刀具單元而切斷 圓筒紙的刀具驅(qū)動電機(jī)、印刷頭,從而對圓筒紙記錄文字、圖像。圖2是表示打印機(jī)2的電路結(jié)構(gòu)的框圖。打印機(jī)2具備進(jìn)行實際印刷的打印發(fā)動機(jī)20、對打印機(jī)2的整體進(jìn)行控制的控 制部21、存儲有控制部21所執(zhí)行的基本控制程序的R0M22、存儲有控制部21所執(zhí)行的控制 程序24A以及命令24B等的EEPR0M24、進(jìn)行由主計算機(jī)4發(fā)送的命令的接收控制的接收控 制部25、與現(xiàn)金抽屜44連接的接口部沈、對送紙開關(guān)17(圖1)的操作進(jìn)行檢測的輸入部 27、控制LED顯示部18而使其進(jìn)行各種顯示的顯示部觀、對打印機(jī)2的各部分的動作狀態(tài) 進(jìn)行監(jiān)視的狀態(tài)監(jiān)視部30、由將通過接收控制部25接收到的接收數(shù)據(jù)臨時保存的RAM等構(gòu) 成的接收緩沖存儲器31以及子接收緩沖存儲器32 (即時處理命令用緩沖存儲器)??刂撇?21包含CPU等。接收控制部25具有USB、RS232C接口等各種接口,并與主計算機(jī)4所具備的所述 接口有線或者無線連接。
打印發(fā)動機(jī)20在控制部21的控制下根據(jù)由主計算機(jī)4發(fā)送的印刷數(shù)據(jù),制成向 作為記錄介質(zhì)的圓筒紙印刷的文字、圖像,并在監(jiān)視用紙端傳感器、用紙剩余量傳感器等各 種傳感器的檢測值的同時,使打印機(jī)2所具備的印刷頭、刀具驅(qū)動電機(jī)以及輸送電機(jī)動作, 以執(zhí)行對圓筒紙的印刷。這樣,打印機(jī)2具備向紙、合成樹脂制的記錄介質(zhì)(圓筒紙、切紙(cut paper)、 復(fù)寫紙等)的印刷面附著墨、調(diào)色劑或者向記錄介質(zhì)的印刷面提供熱量的印刷頭、使印刷 頭相對于記錄介質(zhì)移動的印刷頭驅(qū)動機(jī)構(gòu)、輸送記錄介質(zhì)的輸送機(jī)構(gòu)等,這些印刷頭以及 各種機(jī)構(gòu)由打印發(fā)動機(jī)20控制。另外,當(dāng)利用輸入部27檢測到送紙開關(guān)17的操作時,打印發(fā)動機(jī)20在控制部21 的控制下使輸送電機(jī)動作并輸送規(guī)定量的圓筒紙,然后根據(jù)打印機(jī)2的動作狀態(tài)等經(jīng)由顯 示部觀改變LED顯示部18的各LED的點燈狀態(tài)??刂撇?1內(nèi)置有CPU、臨時存儲執(zhí)行程序、數(shù)據(jù)等的作為工作區(qū)域的存儲器,其作 為微型計算機(jī)發(fā)揮功能,并執(zhí)行存儲在R0M22內(nèi)的基本控制程序、存儲在EEPR0MM內(nèi)的控 制程序MA。R0M22非易失性地存儲用于利用控制部21將打印機(jī)2的各部分初始化并控制該各 部分的基本控制程序以及關(guān)于該基本控制程序的數(shù)據(jù)等。EEPR0M24是可改寫的非易失性的存儲裝置,其存儲有控制程序24A以及包含命令 24B的各種程序、數(shù)據(jù)。接收控制部25在與主計算機(jī)4之間執(zhí)行規(guī)定的通信協(xié)議,接收由主計算機(jī)4發(fā)送 的信號,并將接收到的信號解調(diào)(解碼)而生成接收數(shù)據(jù),然后依次存儲在接收緩沖存儲器 31以及子接收緩沖存儲器32中。接收控制部25例如具備連接有通信線纜的連接器和通 信電路、或者無線通信電路和天線等。接收緩沖存儲器31是將接收控制部25所輸出的接收數(shù)據(jù)依次存儲的臨時存儲裝 置。在接收緩沖存儲器31中無區(qū)別地例如以64位為單位地保存接收控制部25從主計算機(jī) 4接收到的命令以及跟在該命令之后的印刷數(shù)據(jù)等數(shù)據(jù)。即,接收控制部25在不進(jìn)行是否包 含命令的分析等的狀態(tài)下將從主計算機(jī)4接收到的接收數(shù)據(jù)保存到接收緩沖存儲器31。打印機(jī)2所具備的狀態(tài)監(jiān)視部30與各檢測部連接,所述各檢測部檢測從外部向打 印機(jī)2供給的電源電壓并對罩體12的開閉狀態(tài)、圓筒紙的有無等進(jìn)行檢測,根據(jù)這些檢測 部的檢測狀態(tài),將例如打印機(jī)2的電源電壓的異常、用紙補充和墨盒更換時被開閉的打印 機(jī)2的罩體(圖示略)為打開狀態(tài)、打印機(jī)2用紙被用完、送紙開關(guān)17的操作等表示產(chǎn)生 打印機(jī)2的現(xiàn)象(事件)的檢測信號作為插入信號向控制部21輸出。打印機(jī)2的動作狀態(tài)包括能夠執(zhí)行與主計算機(jī)4的通信以及印刷等的在線狀態(tài) 和只進(jìn)行必要最小限的動作的斷線狀態(tài)。斷線狀態(tài)是指如下的狀態(tài)在印刷動作的運行不 當(dāng)?shù)那闆r下,使包括印刷頭的印刷機(jī)構(gòu)停止并且使和主計算機(jī)的接口形成為邏輯上的切斷 狀態(tài),從而保全印刷裝置以及通信數(shù)據(jù)并且確保使用者安全??刂撇?1在進(jìn)行著通常動作 的期間為在線狀態(tài)。隨著接收緩沖存儲器31的存儲內(nèi)容飽和、罩體打開、用紙被用完等斷 線原因的產(chǎn)生,控制部21轉(zhuǎn)移為斷線狀態(tài)。在斷線狀態(tài)下,當(dāng)狀態(tài)監(jiān)視部30檢測到斷線原 因消失時,控制部21轉(zhuǎn)移為在線狀態(tài)。當(dāng)轉(zhuǎn)移為斷線狀態(tài)時,控制部21向主計算機(jī)4通知斷線的情況,主計算機(jī)4到再次被通知成為在線狀態(tài)之前停止發(fā)送數(shù)據(jù)。此時,主計算機(jī)4即使收到斷線的通知,也存在 要緊急地發(fā)送實時控制命令并進(jìn)行處理的情況。為此,打印機(jī)2具備子接收緩沖存儲器32, 從而即使在通知斷線之后也能夠優(yōu)先地接收實時控制命令。圖3是表示打印機(jī)2的控制部21的功能結(jié)構(gòu)的框圖。如該圖3所示,控制部21作為命令檢測部21A、實時控制命令檢測部(即時處理命 令檢測部)21B以及命令執(zhí)行部21C發(fā)揮功能,通過控制部21執(zhí)行存儲在EEPR0MM中的控 制程序24A,實現(xiàn)這些功能。如上所述,接收控制部25使接收緩沖存儲器31保存從主計算機(jī)4接收到的接收 數(shù)據(jù)。接收緩沖存儲器31設(shè)有由接收控制部25控制的寫入指示器31A,接收控制部25 — 邊使寫入指示器31A移動一邊寫入接收數(shù)據(jù)。命令檢測部21A對設(shè)在接收緩沖存儲器31中的讀出指示器31C(第一讀出指示 器)進(jìn)行控制,并且一邊利用讀出指示器31C掃描接收緩沖存儲器3 —邊讀出接收數(shù)據(jù),從 而檢測包含在這些接收數(shù)據(jù)中的命令。計數(shù)器31B對用于將接收數(shù)據(jù)寫入接收緩沖存儲器 31的寫入指示器31A的寫入位置進(jìn)行加法運算,對用于從接收緩沖存儲器31讀出接收數(shù)據(jù) 的讀出指示器31C的讀出位置進(jìn)行減法運算,并進(jìn)行計數(shù)。該計數(shù)器31B表示接收緩沖存 儲器31的接收數(shù)據(jù)量。接收控制部25對計數(shù)器31B的值和接收緩沖存儲器31的容量進(jìn) 行比較,判斷緩沖存儲器已滿,從而能夠向主計算機(jī)4通知緩沖存儲器已滿。圖4 (A)示意性地表示接收緩沖存儲器31的結(jié)構(gòu)例,圖4 (B)示意性地表示子接收 緩沖存儲器32的結(jié)構(gòu)例。如圖4(A)所示,接收緩沖存儲器31具有例如4KB (千位)的容量,當(dāng)以64位單位 寫入來自主計算機(jī)4的接收數(shù)據(jù)D時,寫入指示器31A從前頭地址(0000)開始以64位為 單位地移動,從而進(jìn)行基于接收控制部25的寫入。跟在該寫入指示器31A之后,利用讀出 指示器31C從前頭地址(0000)開始依次掃描接收緩沖存儲器31,已經(jīng)被寫入的接收數(shù)據(jù)D 由命令檢測部21A(圖3)讀出,從而進(jìn)行命令的檢測。在通常動作狀態(tài)下,即在后述的在線狀態(tài)下,按照由命令執(zhí)行部21C檢測到的順 序執(zhí)行命令檢測部21A所檢測到的命令。命令檢測部21A將檢測到的命令送至命令執(zhí)行部 21C使其執(zhí)行該命令,同時從接收緩沖存儲器31刪除讀出的接收數(shù)據(jù)。在此,命令檢測部 21A也可以不刪除命令而在下次將其覆蓋。命令執(zhí)行部21C按照接收緩沖存儲器31的保存 順序即命令檢測部21A檢測到的檢測順序執(zhí)行由命令檢測部21A檢測到的命令。該命令是 例如印刷執(zhí)行、圓筒紙輸送等命令。另外,在接收緩沖存儲器31中設(shè)有實時控制命令讀出指示器31D(第二讀出指示 器)。實時控制命令讀出指示器31D是用于使實時控制命令檢測部21B檢測實時控制命令 的讀出指示器,利用該實時控制命令讀出指示器31D,從前頭地址(0000)開始依次掃描接 收緩沖存儲器31。實時控制命令檢測部21B —邊利用設(shè)在接收緩沖存儲器31中的實時控 制命令讀出指示器3ID掃描接收緩沖存儲器31 —邊讀出接收數(shù)據(jù)D (圖4 (A)),從而檢測這 些接收數(shù)據(jù)D中所包含的實時控制命令。無論為斷線狀態(tài)還是在線狀態(tài),都利用命令執(zhí)行部21C按照實時控制命令檢測部 21B檢測到的順序迅速執(zhí)行實時控制命令檢測部21B檢測到的實時控制命令。作為實時控 制命令(即時處理命令),存在指示發(fā)送狀態(tài)通知的狀態(tài)要求命令、指示將接收緩沖存儲器31以及子接收緩沖存儲器32的內(nèi)容完全刪除的緩沖存儲器清除命令、指示現(xiàn)金抽屜44進(jìn) 行開動作的抽屜打開命令等。如圖4 (A)所示,實時控制命令讀出指示器31D在讀出指示器31C之前執(zhí)行對接收 緩沖存儲器31的掃描。這是因為存在實時控制命令包含在通常的命令的處理對象數(shù)據(jù)中 的情況。即,在包含實時控制命令的接收數(shù)據(jù)D伴隨著通常命令的情況下,在通常命令被命 令檢測部21A檢測到時由命令執(zhí)行部21C執(zhí)行,然后被刪除。此時,為了防止不執(zhí)行實時控 制命令而直接將其刪除,實時控制命令讀出指示器31D在讀出指示器31C之前執(zhí)行。由此, 即使實時控制命令包含在通常的命令的處理對象數(shù)據(jù)中,由于比該通常的命令先被檢測并 被執(zhí)行,所以具有能夠無遺漏地對實時控制命令做出響應(yīng)的優(yōu)點。另外,讀出指示器31C被 設(shè)定為不超越實時控制命令讀出指示器31D。進(jìn)而,如圖3所示,接收緩沖存儲器31連同子接收緩沖存儲器32與接收控制部25 連接。子接收緩沖存儲器32是在接收緩沖存儲器31成為緩沖存儲器已滿狀態(tài)之后保存接 收數(shù)據(jù)的區(qū)域。在子接收緩沖存儲器32設(shè)有由接收控制部25控制的寫入指示器32A和由 實時控制命令檢測部21B控制的實時控制命令讀出指示器32B。接收控制部25使寫入指 示器32A從前頭地址(0000)開始以64位為單位地移動而進(jìn)行寫入。在子接收緩沖存儲器 32未設(shè)有用于使命令檢測部21A檢測通常的命令的讀出指示器。當(dāng)接收緩沖存儲器31成為緩沖存儲器已滿狀態(tài)并向主計算機(jī)4通知緩沖存儲器 已滿的情況時,停止來自主計算機(jī)4的數(shù)據(jù)發(fā)送。然而,在通知了緩沖存儲器已滿(斷線) 的時刻已經(jīng)從主計算機(jī)4發(fā)送了數(shù)據(jù)的情況、以及當(dāng)主計算機(jī)4緊急地發(fā)送實時控制命令 并要進(jìn)行處理的情況下,在成為緩沖存儲器已滿狀態(tài)之后數(shù)據(jù)由接收控制部25接收。由于 該接收數(shù)據(jù)不能保存在接收緩沖存儲器31中,所以打印機(jī)2具備作為用于保存這種接收數(shù) 據(jù)的區(qū)域的子接收緩沖存儲器32。即使保存在子接收緩沖存儲器32的接收數(shù)據(jù)中包含通 常的命令,控制部21也不將該命令作為執(zhí)行的對象。子接收緩沖存儲器32內(nèi)的接收數(shù)據(jù) 是在成為緩沖存儲器已滿狀態(tài)之后被接收的數(shù)據(jù),這是因為在緩沖存儲器已滿狀態(tài)解除之 后再次進(jìn)行接收即可。另一方面,當(dāng)在子接收緩沖存儲器32的接收數(shù)據(jù)包含實時控制命令 時,需要迅速執(zhí)行該實時控制命令。因此,在子接收緩沖存儲器32僅設(shè)有作為讀出指示器 的實時控制命令讀出指示器32B,而沒有設(shè)置用于檢測通常的命令的讀出指示器。實時控制 命令檢測部21B利用實時控制命令讀出指示器32B掃描子接收緩沖存儲器32,檢測實時控 制命令。而且,在子接收緩沖存儲器32內(nèi)被檢測到的實時控制命令,與在接收緩沖存儲器 31被檢測到的實時控制命令同樣地,被命令執(zhí)行部21C迅速執(zhí)行。圖5是表示打印機(jī)2的動作的流程圖,表示從主計算機(jī)4接收數(shù)據(jù)時的打印機(jī)2 的動作。當(dāng)利用接收控制部25的功能經(jīng)由接收控制部25從主計算機(jī)4接收數(shù)據(jù)時(步驟 Si),打印機(jī)2利用接收控制部25的功能向接收緩沖存儲器31進(jìn)行寫入(步驟S2)。在此, 控制部21判斷接收緩沖存儲器31是否無可用空間(緩沖存儲器已滿)(步驟S3),當(dāng)緩沖 存儲器已滿時(步驟S3:是),經(jīng)由接收控制部25向主計算機(jī)4通知緩沖存儲器已滿(斷 線)(步驟S4),并向子接收緩沖存儲器32寫入未能寫入到接收緩沖存儲器31的接收數(shù)據(jù) 和在緩沖存儲器已滿的通知后接收的接收數(shù)據(jù)(步驟S5)。在步驟S3中,也可以根據(jù)計數(shù) 器31B的值來判斷相當(dāng)于緩沖存儲器已滿還是相當(dāng)于緩沖存儲器未滿。
在此,控制部21利用實時控制命令檢測部21B的功能開始實時控制命令檢測處理 (步驟S6),并且利用命令檢測部21A的功能開始命令檢測處理(步驟S7),從而結(jié)束本處理。另外,在接收緩沖存儲器31未處于緩沖存儲器已滿時(步驟S3 否),從步驟S3 向步驟S6轉(zhuǎn)移,并執(zhí)行實時控制命令檢測處理以及命令檢測處理,從而結(jié)束本處理。圖6是具體表示在圖5的步驟S6中開始的實時控制命令檢測處理的流程圖。如該圖6所示,在實時控制命令檢測處理中,控制部21首先判斷接收緩沖存儲器 31中的實時控制命令讀出指示器31D的位置(地址)(RTRP)是否到達(dá)了寫入指示器31A的 位置(地址)(WP)(步驟Sll)。若實時控制命令讀出指示器31D未到達(dá)寫入指示器31A的 位置(步驟Sll 是),則控制部21利用實時控制命令檢測部21B的功能讀出接收緩沖存 儲器31內(nèi)的接收數(shù)據(jù)D,檢測實時控制命令(步驟Si》。在此,控制部21判斷在讀出的接 收數(shù)據(jù)D中是否存在實時控制命令(步驟S13),在沒有實時控制命令的情況下(步驟S13 否)返回步驟S11,在檢測到實時控制命令的情況下(步驟S13:是),利用命令執(zhí)行部21C 執(zhí)行檢測到的實時控制命令(步驟S14)。在此,由于實時控制命令的執(zhí)行作為控制部21的 插入處理被執(zhí)行,因此即使存在控制部21利用命令執(zhí)行部21C的功能執(zhí)行的動作,也將該 動作中斷而執(zhí)行實時控制命令,從而執(zhí)行狀態(tài)通知、現(xiàn)金抽屜44的開動作、接收緩沖存儲 器31以及子接收緩沖存儲器32的清除等。然后,控制部21刪除命令執(zhí)行部21C執(zhí)行的實 時控制命令(步驟S15),返回步驟S11。另外,當(dāng)在接收緩沖存儲器31中實時控制命令讀出指示器31D的位置到達(dá)了寫入 指示器31A的位置時(步驟Sll 否),控制部21轉(zhuǎn)移為子接收緩沖存儲器32的檢測動作 (步驟S16)??刂撇?1判斷子接收緩沖存儲器32的實時控制命令讀出指示器32B的位置 (RTRP)是否到達(dá)了寫入指示器32A的位置(WP)(步驟S17),若實時控制命令讀出指示器 32B未到達(dá)寫入指示器32A的位置(步驟S17 是),則利用實時控制命令檢測部21B的功 能讀出子接收緩沖存儲器32內(nèi)的接收數(shù)據(jù)D,從而檢測實時控制命令(步驟S18)??刂撇?1判斷在讀出的接收數(shù)據(jù)D中是否存在實時控制命令(步驟S19),當(dāng)不 存在實時控制命令時(步驟S19 否)返回步驟S17,當(dāng)檢測到實時控制命令時(步驟S19 是),利用命令執(zhí)行部21C執(zhí)行檢測到的實時控制命令(步驟S20)。在此,由于實時控制命 令的執(zhí)行作為插入處理被執(zhí)行,所以即使存在控制部21利用命令執(zhí)行部21C的功能執(zhí)行的 動作,也將該動作中斷而執(zhí)行實時控制命令,從而執(zhí)行狀態(tài)通知、現(xiàn)金抽屜44的開動作、接 收緩沖存儲器31以及子接收緩沖存儲器32的清除等。然后,控制部21將命令執(zhí)行部21C 執(zhí)行的實時控制命令刪除(步驟S21),返回步驟S17。然后,當(dāng)在子接收緩沖存儲器32中實時控制命令讀出指示器31D的位置到達(dá)了寫 入指示器31A的位置時(步驟S17 否),結(jié)束本處理。圖7是具體表示在圖5的步驟S7中開始的命令檢測處理的流程圖。如該圖7所示,在命令檢測處理中,控制部21首先判斷接收緩沖存儲器31中的讀 出指示器31C的位置(地址)(RP)是否到達(dá)了寫入指示器31A的位置(地址)(WP)(步驟 S31),若讀出指示器31C未到達(dá)寫入指示器31A的位置(步驟S31 是),則利用命令檢測部 21A的功能讀出接收緩沖存儲器31內(nèi)的接收數(shù)據(jù)D,檢測命令(步驟S3》。在步驟S31中,控制部21也可以根據(jù)計數(shù)器31B的值來判斷讀出指示器31C的位置是否到達(dá)了寫入指示 器3IA的位置。在此,控制部21判斷在讀出的接收數(shù)據(jù)D中是否存在命令(步驟S3!3),當(dāng)沒有命 令時(步驟S33 否)返回步驟S31,當(dāng)檢測到命令時(步驟S33 是),利用命令執(zhí)行部21C 執(zhí)行檢測到的命令(步驟S34)。在此,按照在接收緩沖存儲器31中保存的順序,利用命令 執(zhí)行部21C執(zhí)行所檢測到的命令。然后,控制部21將命令執(zhí)行部21C執(zhí)行的命令刪除(步 驟S3。。在此,控制部21也可以不刪除命令,而在下次進(jìn)行覆蓋。在此,控制部21利用狀態(tài)監(jiān)視部30判斷在打印機(jī)2是否產(chǎn)生了斷線原因(步驟 S36)。當(dāng)沒有產(chǎn)生斷線原因時(步驟S36 否),控制部21返回步驟S31,當(dāng)產(chǎn)生了斷線原 因時(步驟S36 是),向主計算機(jī)4發(fā)送斷線通知(步驟S37),并在停止利用命令執(zhí)行部 21C執(zhí)行命令的同時停止讀出指示器31C的讀出(步驟S38),并且直到斷線原因消除為止 一直待機(jī)(步驟S39)??刂撇?1在斷線原因消除的情況下返回步驟S31,在斷線原因在規(guī) 定時間以內(nèi)未消除的情況下(步驟S39 否)結(jié)束本處理。另外,當(dāng)在接收緩沖存儲器31中讀出指示器31C到達(dá)了寫入指示器31A的位置時 (步驟S31 否),結(jié)束本處理。如上所述,根據(jù)適用了本發(fā)明的實施方式的POS終端1,從主計算機(jī)4接收到的接 收數(shù)據(jù)保存在接收緩沖存儲器31中,利用通常的命令用的讀出指示器31C和實時控制命 令用的實時控制命令讀出指示器31D分別獨立地掃描接收緩沖存儲器31,并分別檢測通常 的命令和實時控制命令。因此,由于在將來自主計算機(jī)4的接收數(shù)據(jù)保存在接收緩沖存儲 器31中之后進(jìn)行命令的檢測,所以即使在短時間內(nèi)從主計算機(jī)4接收到大量的數(shù)據(jù)的情況 下,也能夠可靠地接收所有的數(shù)據(jù),并且無遺漏地進(jìn)行分析以檢測命令。而且,由于利用與 通常的命令不同的其他讀出指示器掃描接收緩沖存儲器并檢測實時控制命令,所以能夠在 不受通常的命令的執(zhí)行狀態(tài)影響的情況下迅速地檢測實時控制命令。因此,即使接收數(shù)據(jù) 量大也能夠?qū)崟r控制命令迅速做出響應(yīng)。在此,即使在停止執(zhí)行通常的命令的斷線狀態(tài)下,也可以執(zhí)行實時控制命令。在這 種情況下,具有即使為斷線狀態(tài)也能夠?qū)崟r控制命令迅速做出響應(yīng)的優(yōu)點。另外,打印機(jī)2具備保存在接收緩沖存儲器31成為緩沖存儲器已滿狀態(tài)后接收 到的接收數(shù)據(jù)的子接收緩沖存儲器32。由于實時控制命令檢測部21B利用實時控制命令讀 出指示器32B掃描子接收緩沖存儲器32而檢測實時控制命令,所以即使在接收數(shù)據(jù)的容量 多、接收緩沖存儲器31成為緩沖存儲器已滿狀態(tài)的情況下,也能夠從在緩沖存儲器成為已 滿狀態(tài)后接收到的接收數(shù)據(jù)中檢測并執(zhí)行實時控制命令。因此,即使在接收到大量的接收 數(shù)據(jù)情況下也能夠?qū)崟r控制命令迅速做出響應(yīng)。另外,緩沖存儲器已滿的情況通常成為 不進(jìn)行命令的檢測和執(zhí)行的斷線狀態(tài),但是在本發(fā)明的結(jié)構(gòu)中,由于能夠檢測并執(zhí)行與通 常的命令不同的實時控制命令,所以能夠在不受通常的命令的執(zhí)行狀態(tài)影響的情況下對實 時控制命令迅速做出響應(yīng)。而且,由于在利用命令檢測部21A以及實時控制命令檢測部21B檢測命令之前,接 收控制部25將接收數(shù)據(jù)直接保存到接收緩沖存儲器31中,所以即使在短時間內(nèi)從主計算 機(jī)4接收到大量的數(shù)據(jù)情況下,也能夠可靠地接收所有的數(shù)據(jù),并且無遺漏地進(jìn)行分析以 檢測命令。
13
另外,由于實時控制命令讀出指示器31D比讀出指示器31C先執(zhí)行對接收緩沖存 儲器31的掃描,所以能夠在不受通常的命令的檢測以及執(zhí)行狀態(tài)影響的情況下迅速檢測 實時控制命令。另外,還具備對讀出指示器31C的讀出位置進(jìn)行計數(shù)的計數(shù)器31B,由于該計數(shù)器 31B不因基于實時控制命令讀出指示器31D的掃描而增加計數(shù)(count up),所以不受通常 的命令的檢測以及執(zhí)行狀態(tài)影響,并且能夠以不對通常的命令的檢測動作造成影響的方式 迅速地檢測實時控制命令。在此,參照圖8 (A)以及圖8⑶,以具體的主計算機(jī)4和打印機(jī)2的連接形式為例 進(jìn)行說明。圖8(A)表示利用USB通信接口將主計算機(jī)4和打印機(jī)2連接的形式,圖8(B) 表示利用RS232C串行通信接口將主計算機(jī)4和打印機(jī)2連接的形式。在圖8 (A)所示的例子中,主計算機(jī)4具備USB控制器4A,接收控制部25具備USB 控制器25A,在USB控制器4A和USB控制器25A之間確立USB連接,以傳輸數(shù)據(jù)。USB控制 器4A作為主設(shè)備(master device)發(fā)揮功能,USB控制器25A作為從設(shè)備(slave device) 發(fā)揮功能。在USB控制器4A和USB控制器25A之間,發(fā)送、接收作為預(yù)先設(shè)定的大小的包 (packet)的數(shù)據(jù)。每當(dāng)USB控制器25A接收由USB控制器4A發(fā)送的一個或者多個包時, USB控制器4A、25A能夠進(jìn)行從USB控制器25A發(fā)送接收確認(rèn)的響應(yīng)的控制,此外在USB控 制器25A無響應(yīng)的情況下也能夠進(jìn)行將從USB控制器4A匯集的多個數(shù)據(jù)包發(fā)送的強(qiáng)制發(fā) 送動作。另外,USB控制器25A(轉(zhuǎn)送部)具備將從USB控制器4A接收到的接收數(shù)據(jù)不經(jīng) 由控制部21的控制而保存到接收緩沖存儲器31或子接收緩沖存儲器32中的DMA轉(zhuǎn)送功 能。利用該DMA轉(zhuǎn)送功能,能夠在USB控制器25A和接收緩沖存儲器31或子接收緩沖存儲 器32之間高速地發(fā)送、接收數(shù)據(jù),從而實現(xiàn)通過量的提高。而且,還能夠在無遺漏地接收數(shù) 據(jù)的情況下將其保存到接收緩沖存儲器31中并進(jìn)行分析。在該結(jié)構(gòu)中,如所述那樣,在接 收緩沖存儲器31中設(shè)有與讀出指示器31C不同的實時控制命令讀出指示器31D,由于利用 該實時控制命令讀出指示器31D掃描接收緩沖存儲器31并檢測實時控制命令,且利用命令 執(zhí)行部21C插入執(zhí)行檢測到的實時控制命令,因此能夠?qū)崟r控制命令迅速且可靠地做出 響應(yīng)。而且,即使在接收緩沖存儲器31成為緩沖存儲器已滿狀態(tài)的情況下,由于將接收 數(shù)據(jù)保存在子接收緩沖存儲器32中,所以即使在利用強(qiáng)制發(fā)送功能將大量的數(shù)據(jù)匯集并 發(fā)送的情況下,也能夠無遺漏地接收并執(zhí)行實時控制命令。另外,在圖8(B)所示的例子中,主計算機(jī)4具備串行通信控制器4B,接收控制部 25具備串行通信控制器25B,在串行通信控制器4B、25B間經(jīng)由串行通信線纜發(fā)送數(shù)據(jù)。在 串行通信控制器4B、25B間能夠執(zhí)行各種通信協(xié)議,例如在從串行通信控制器4B發(fā)送了數(shù) 據(jù)后,串行通信控制器25B確認(rèn)已發(fā)送了數(shù)據(jù)接收確認(rèn)之后,可以執(zhí)行后面的數(shù)據(jù)從串行 通信控制器4B發(fā)送的順序,也能夠采用不進(jìn)行流(flow)控制的無順序通信。另外,也能夠 進(jìn)行對串行通信控制器25B的響應(yīng)不進(jìn)行確認(rèn)而將匯集的量的數(shù)據(jù)從串行通信控制器4B 發(fā)送的強(qiáng)制發(fā)送動作。另外,串行通信控制器25B不經(jīng)由控制部21的控制而將從串行通信控制器4B接收到的接收數(shù)據(jù)保存到接收緩沖存儲器31中。利用該功能,當(dāng)在串行通信控制器4B、25B間 進(jìn)行了強(qiáng)制發(fā)送時,能夠降低響應(yīng)的發(fā)送接收所產(chǎn)生的置頂(overhead)而高速地發(fā)送接 收數(shù)據(jù),從而能夠?qū)崿F(xiàn)通過量的提高,并且將接收數(shù)據(jù)無遺漏地保存到接收緩沖存儲器31 中以進(jìn)行分析。在該結(jié)構(gòu)中,如上所述那樣,在接收緩沖存儲器31設(shè)有與讀出指示器31C 不同的實時控制命令讀出指示器31D,利用該實時控制命令讀出指示器31D掃描接收緩沖 存儲器31而檢測實時控制命令,并利用命令執(zhí)行部21C插入執(zhí)行檢測到的實時控制命令, 因此能夠?qū)崟r控制命令迅速且可靠地做出響應(yīng)。而且,由于當(dāng)接收緩沖存儲器31成為緩 沖存儲器已滿狀態(tài)時在子接收緩沖存儲器32中保存接收數(shù)據(jù),所以即使在利用強(qiáng)制發(fā)送 功能匯集發(fā)送了大量數(shù)據(jù)的情況下,也能夠無遺漏地接收并執(zhí)行實時控制命令。另外,在如圖8 (A)所示那樣經(jīng)由USB接口發(fā)送、接收數(shù)據(jù)的情況下,由于USB控制 器25A具有保持從USB控制器4A接收到的接收數(shù)據(jù)的一部分的功能,所以在利用強(qiáng)制發(fā)送 功能匯集發(fā)送了大量數(shù)據(jù)的情況下預(yù)先保持一部分?jǐn)?shù)據(jù),在接收緩沖存儲器31的容量恢 復(fù)以后將USB控制器25A保持的接收數(shù)據(jù)寫入到接收緩沖存儲器31。另一方面,串行通信 控制器25B不具備這種功能。在本實施方式的結(jié)構(gòu)中,由于除了接收緩沖存儲器31外還具 有子接收緩沖存儲器32,所以無論接收控制部25本身是否帶有保持接收數(shù)據(jù)的功能,都能 夠無遺漏地保存接收數(shù)據(jù)并檢測及執(zhí)行實時控制命令。需要說明的是,所述實施方式表示適用了本發(fā)明的一個具體例子,本發(fā)明不限于 此。例如,在所述實施方式中,以接收緩沖存儲器31和子接收緩沖存儲器32分體設(shè)置在打 印機(jī)2上的結(jié)構(gòu)為例進(jìn)行了說明,但是本發(fā)明不限于此,接收緩沖存儲器31和子接收緩沖 存儲器32也可以是在一個存儲設(shè)備上假想地分離設(shè)置的存儲區(qū)域。另外,圖2以及圖3所 示的各功能部能夠在硬件和軟件的配合下任意地實現(xiàn),并未暗示特定的硬件結(jié)構(gòu)。而且,在 所述實施方式中,關(guān)于POS終端1,說明了將本發(fā)明適用到印刷小票101的打印機(jī)2的情況, 但是本發(fā)明不限于此,可以列舉出通過各種通信機(jī)構(gòu)將主計算機(jī)4連接到獨立地發(fā)揮功能 的打印機(jī)的結(jié)構(gòu),例如,可以經(jīng)由LAN使打印機(jī)2與多個主計算機(jī)4連接。另外,例如,對主 計算機(jī)4和接收控制部25所執(zhí)行的通信協(xié)議或通信規(guī)格無特殊限制,能夠適用任意的通信 協(xié)議或通信規(guī)格。另外,在所述實施方式中,以打印機(jī)2本身具備控制部21、接收控制部25、 接收緩沖存儲器31以及子接收緩沖存儲器32的結(jié)構(gòu)為例進(jìn)行了說明,但是例如也可以將 具備控制部21、接收控制部25、接收緩沖存儲器31以及子接收緩沖存儲器32的控制裝置 作為與打印機(jī)2進(jìn)行外部連接的其他裝置。另外,能夠適用本發(fā)明的記錄裝置只要是能夠根據(jù)命令進(jìn)行動作的打印機(jī)即可, 對此沒有特殊限制,可以是噴墨式打印機(jī)、點擊打式打印機(jī)、激光打印機(jī)、熱升華型打印機(jī) 中的任意一個,也可以是以其他的方式形成文字和圖像的打印機(jī),并且還可以是裝入其他 裝置的打印機(jī)。另外,還可以是向電子介質(zhì)進(jìn)行記錄的結(jié)構(gòu)。另外,能夠適用本發(fā)明的程序可以是搭載主計算機(jī)4上的打印機(jī)驅(qū)動器所包含的程序。另外,在所述實施方式中,控制部21執(zhí)行的控制程序24A存儲在EEPR0MM中。然 而,被存儲的記錄介質(zhì)不限于此。例如,也可以是半導(dǎo)體存儲器、能夠進(jìn)行光學(xué)性讀寫的盤、 能夠進(jìn)行磁性讀寫的盤等。這些記錄介質(zhì)所記錄的程序經(jīng)由進(jìn)行寫入讀出的驅(qū)動裝置被存 儲在EEPR0MM中,并由控制部21執(zhí)行。
權(quán)利要求
1.一種記錄裝置,能夠與主計算機(jī)連接并根據(jù)包括從所述主計算機(jī)接收到的命令在內(nèi) 的接收數(shù)據(jù)進(jìn)行記錄,該記錄裝置的特征在于,具備接收緩沖存儲器,其保存從所述主計算機(jī)接收到的所述接收數(shù)據(jù); 命令檢測部,其利用第一讀出指示器掃描所述接收緩沖存儲器且同時讀取在所述接收 緩沖存儲器保存的所述接收數(shù)據(jù),從而檢測包含在所述接收數(shù)據(jù)中的所述命令;命令執(zhí)行部,其按照所述命令向所述接收緩沖存儲器保存的保存順序處理由所述命令 檢測部檢測到的所述命令;即時處理命令檢測部,其利用與所述第一讀出指示器不同而另行設(shè)置的第二讀出指示 器掃描所述接收緩沖存儲器且同時讀取在所述接收緩沖存儲器保存的所述接收數(shù)據(jù),從而 檢測包含在所述接收數(shù)據(jù)中的即時處理命令,無論所述命令向所述接收緩沖存儲器保存的所述保存順序如何,所述命令執(zhí)行部都優(yōu) 先處理由所述即時處理命令檢測部檢測到的所述即時處理命令。
2.如權(quán)利要求1所述的記錄裝置,其特征在于,所述記錄裝置還具備即時處理命令用緩沖存儲器,該即時處理命令用緩沖存儲器保存 在所述接收緩沖存儲器大致成為緩沖存儲器已滿狀態(tài)后接收到的接收數(shù)據(jù),所述即時處理命令檢測部利用所述第二讀出指示器掃描所述即時處理命令用緩沖存 儲器,并檢測包含在所述接收數(shù)據(jù)中的所述即時處理命令。
3.如權(quán)利要求1所述的記錄裝置,其特征在于,所述第二讀出指示器比所述第一讀出指示器先執(zhí)行對所述接收緩沖存儲器的掃描。
4.如權(quán)利要求1所述的記錄裝置,其特征在于,當(dāng)由所述第二讀出指示器檢測到的所述即時處理命令被所述第一讀出指示器再次檢 測到時,所述命令執(zhí)行部對所述即時處理命令不進(jìn)行重復(fù)處理。
5.如權(quán)利要求1所述的記錄裝置,其特征在于,所述記錄裝置還具備接收控制部,在所述命令檢測部以及所述即時處理命令檢測部分 別檢測包含在所述接收數(shù)據(jù)中的所述命令之前,所述接收控制部使從所述主計算機(jī)接收到 的所述接收數(shù)據(jù)保存在所述接收緩沖存儲器中。
6.如權(quán)利要求5所述的記錄裝置,其特征在于,所述接收控制部具備轉(zhuǎn)送部,該轉(zhuǎn)送部將從所述主計算機(jī)的接口接收到的所述接收數(shù) 據(jù)直接轉(zhuǎn)送到所述接收緩沖存儲器。
7.—種記錄裝置的控制方法,用于對能夠與主計算機(jī)連接并根據(jù)包括從所述主計算機(jī) 接收到的命令在內(nèi)的接收數(shù)據(jù)進(jìn)行記錄的記錄裝置進(jìn)行控制,該記錄裝置的控制方法的特 征在于,包括將從所述主計算機(jī)接收到的所述接收數(shù)據(jù)保存到接收緩沖存儲器中的工序; 利用第一讀出指示器掃描所述接收緩沖存儲器且同時讀取在所述接收緩沖存儲器保 存的所述接收數(shù)據(jù),從而檢測包含在所述接收數(shù)據(jù)中的所述命令的工序;按照所述命令向所述接收緩沖存儲器保存的保存順序處理被檢測到的所述命令的工序;利用與所述第一讀出指示器不同而另行設(shè)置的第二讀出指示器掃描所述接收緩沖存 儲器且同時讀取在所述接收緩沖存儲器保存的所述接收數(shù)據(jù),從而檢測包含在所述接收數(shù)據(jù)中的即時處理命令的工序;無論所述命令向所述接收緩沖存儲器保存的所述保存順序如何,都優(yōu)先處理被檢測到 的所述即時處理命令的工序。
8.如權(quán)利要求7所述的記錄裝置的控制方法,其特征在于,還包括將在所述接收緩沖存儲器大致成為緩沖存儲器已滿狀態(tài)后接收到的接收數(shù)據(jù)保存到 即時處理命令用緩沖存儲器的工序;利用所述第二讀出指示器掃描所述即時處理命令用緩沖存儲器,檢測包含在所述接收 數(shù)據(jù)中的所述即時處理命令的工序。
9.如權(quán)利要求7所述的記錄裝置的控制方法,其特征在于,所述第二讀出指示器比所述第一讀出指示器先執(zhí)行對所述接收緩沖存儲器的掃描。
10.如權(quán)利要求7所述的記錄裝置的控制方法,其特征在于,當(dāng)由所述第二讀出指示器檢測到的所述即時處理命令被所述第一讀出指示器再次檢 測到時,不對所述即時處理命令進(jìn)行重復(fù)處理。
11.一種如權(quán)利要求1所述的記錄裝置的控制方法,其特征在于,在包含在所述接收數(shù)據(jù)中的所述命令被檢測之前,將從所述主計算機(jī)接收到的所述接 收數(shù)據(jù)保存在所述接收緩沖存儲器中。
12.如權(quán)利要求11所述的記錄裝置的控制方法,其特征在于,將從所述主計算機(jī)的接口接收到的所述接收數(shù)據(jù)直接轉(zhuǎn)送到所述接收緩沖存儲器。
13.—種記錄介質(zhì),存儲有使能夠與主計算機(jī)連接并根據(jù)包括從所述主計算機(jī)接收到 的命令在內(nèi)的接收數(shù)據(jù)進(jìn)行記錄的記錄裝置的控制部執(zhí)行權(quán)利要求7所述的記錄裝置的 控制方法的程序。
全文摘要
本發(fā)明提供一種能夠在迅速檢測由主計算機(jī)發(fā)送的命令的同時迅速檢測并執(zhí)行即時處理命令的記錄裝置、記錄裝置的控制方法以及記錄介質(zhì)。本發(fā)明的記錄裝置具備命令檢測部(21A),其從在接收緩沖存儲器(31)保存的接收數(shù)據(jù)檢測命令;命令執(zhí)行部(21C),其按照向接收緩沖存儲器(31)的保存順序執(zhí)行檢測到的命令;實時控制命令檢測部(21B),其一邊利用與讀出指示器(31C)不同而另行設(shè)置的實時控制命令讀出指示器(31D)掃描接收緩沖存儲器一邊讀取在接收緩沖存儲器(31)保存的接收數(shù)據(jù),從而檢測實時控制命令,無論向接收緩沖存儲器(31)的保存順序如何,命令執(zhí)行部(21C)都優(yōu)先執(zhí)行檢測到的實時控制命令。
文檔編號B41J29/393GK102145597SQ2010105488
公開日2011年8月10日 申請日期2010年11月12日 優(yōu)先權(quán)日2009年11月17日
發(fā)明者宮坂昌代 申請人:精工愛普生株式會社