JP6680118B2 - 印刷装置、及び、制御方法 - Google Patents

印刷装置、及び、制御方法 Download PDF

Info

Publication number
JP6680118B2
JP6680118B2 JP2016134817A JP2016134817A JP6680118B2 JP 6680118 B2 JP6680118 B2 JP 6680118B2 JP 2016134817 A JP2016134817 A JP 2016134817A JP 2016134817 A JP2016134817 A JP 2016134817A JP 6680118 B2 JP6680118 B2 JP 6680118B2
Authority
JP
Japan
Prior art keywords
command
storage unit
data
unit
image data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2016134817A
Other languages
English (en)
Other versions
JP2018001692A (ja
Inventor
伸悟 戸▲高▼
伸悟 戸▲高▼
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2016134817A priority Critical patent/JP6680118B2/ja
Publication of JP2018001692A publication Critical patent/JP2018001692A/ja
Application granted granted Critical
Publication of JP6680118B2 publication Critical patent/JP6680118B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Record Information Processing For Printing (AREA)

Description

本発明は、リアルタイムコマンドを誤動作させることなく適正に実行させ、イメージデータを高速に処理することのできる印刷装置等に関する。
従来、プリンターに送信される命令(コマンド)には、各種印刷コマンドのように送信の順番に(プリンターでの受信の順番に)処理されるコマンド(以下、通常コマンドと称す)と、プリンターで受信後、通常コマンドに優先して即座に実行されるコマンド(以下、リアルタイムコマンドと称す)がある。
リアルタイムコマンドには、プリンターの状態を示す情報(ステータス情報)をホスト装置に返信させるコマンド、プリンターのデータバッファーに貯められているデータをクリアさせるコマンド、警報音を鳴らさせる等装置を動作(駆動)させるコマンド等がある。
このようなプリンターに送信されるコマンドにおいて、イメージやグラフィクスを印刷対象とする印刷コマンドには、イメージデータ等のバイナリーデータが含まれ、それらのデータ列に、上述したリアルタイムコマンドのデータ列と同一のデータ列が含まれてしまう場合がある。かかる場合には、当該データ列を受信したプリンターが、リアルタイムコマンドを受信したと誤解釈し、意図していないリアルタイムコマンドの実行がなされてしまう虞がある。このような偽リアルタイムコマンドによる誤動作は、例えば、必要なデータがクリアされてしまう等の事態を引き起こし、プリンターの使用上避けられなければならない。
かかる課題に対して、下記特許文献1で提案されている装置では、リアルタイム禁止コマンドなるものを用いて、プリンターでリアルタイムコマンドが実行されない状態とする措置が取られる。
一方、モバイル端末からプリンターに印刷命令を出す場合等、無線通信によってプリンターを利用する環境が増えている。このような環境では、プリンターにおける印刷パフォーマンスの向上、一定した印刷速度による印刷品質の確保等の観点から、特に多量のデータの場合、プリンターへのデータ送信時間を短縮するべく、ホスト装置において送信するデータを圧縮する処理がなされている。また、少量のデータの場合は、圧縮せずにデータを転送した方が、圧縮伸張処理に掛かる時間がなく、却って処理が速い場合もあり得る。
このように、データ量により、圧縮の有無を変えた場合、圧縮しないデータの中や、圧縮されたデータの中にも、上述したようにリアルタイムコマンドと同一のデータ列が含まれてしまう虞があり、従来は、圧縮後のデータにリアルタイムコマンドと同一のデータ列が含まれていることが検出されると、圧縮せずに元のデータをプリンターに送信するという処理がなされていた。
特開2000−298563号公報
しかしながら、データを圧縮しないで送信する方法のみとすると、連続印刷するプリンターにおいては、通信の遅れによってプリンターでの印刷速度を落とさざるを得ない場合が発生し、このような印刷速度の変化によって印刷した画像にいわゆる白筋が入ってしまう等の印刷不良が起こる虞がある。
また、上記特許文献1に記載の方法を適用した場合には、イメージデータを送信中に本当にリアルタイムコマンドの実行が必要になった場合、リアルタイムコマンドの実行ができない、という課題がある。
また、イメージデータを圧縮して送信する場合、及び、非圧縮で送信する場合の両方のメリットを維持しつつ、確実にリアルタイムコマンドの誤動作を防止できると共に、両データの処理を効率的に行うことが望まれる。
そこで、本発明の目的は、リアルタイムコマンドを誤動作させることなく適正に実行させ、イメージデータを高速に処理することのできる印刷装置、等を提供することである。
上記目的を達成するために、本発明の1つの側面は、印刷装置が、コマンドを受信し、当該受信した前記コマンドを記憶する第1記憶部を備える通信部と、前記第1記憶部に記憶された前記コマンドを解釈し、解釈した前記コマンドが第1コマンドまたは第3コマンドなら、受信順に処理を実行し、解釈した前記コマンドが第2コマンドなら、前記第1コマンドまたは前記第3コマンドに優先して処理を実行する制御部と、前記第1コマンドに係るデータを記憶する第2記憶部と、前記第3コマンドに係るデータを記憶する第3記憶部と、展開された印刷実行データを記憶する第4記憶部と、前記第4記憶部に記憶された前記印刷実行データに基づいて印刷を実行する印刷部と、を備え、前記制御部が、前記第1記憶部に受信された前記コマンドが前記第1コマンドのイメージコマンドであれば、その後に受信される所定数のイメージデータを前記第1記憶部から、前記第2記憶部の所定のアドレスへメモリー間転送方式によって転送し、転送した前記イメージデータを前記第4記憶部に前記印刷実行データとして展開して記憶し、前記第1記憶部に受信された前記コマンドが前記第3コマンドであれば、その後に受信される所定数の圧縮されたイメージデータを前記第1記憶部から前記第3記憶部の所定のアドレスへ前記メモリー間転送方式によって転送し、転送した前記圧縮されたイメージデータを伸張しながら、前記第4記憶部に前記印刷実行データとして展開して記憶する、ことである。
これにより、イメージコマンドに続くイメージデータは、メモリー間転送方式によって転送するため、コマンドとして解釈されない。そのため、印刷装置におけるリアルタイムコマンドの誤動作を確実に防止できる。
また、印刷装置は、常にリアルタイムコマンドを実行できる状態なので、必要な処理を即座に実行させることができる。
また、イメージデータを第1記憶部から第2記憶部または第3記憶部へメモリー間転送するため、処理が速い。
また、イメージデータが圧縮されている場合及び圧縮されていない場合のそれぞれに応じた処理が行われるので、ホスト装置側で圧縮/非圧縮の判断を変更する必要がなく、それぞれの場合のメリットを享受できる。更に、第3記憶部には、圧縮されたイメージデータのみが記憶されるので、データを識別する必要がない。
更に、上記発明において、その好ましい態様は、前記制御部は、前記第1記憶部から前
記第2記憶部または前記第3記憶部への前記メモリー間転送方式によるデータ転送を実行する転送部を備え、前記制御部は、前記データ転送の際に、前記所定数のデータに亘り、前記第2記憶部または前記第3記憶部の前記所定のアドレスを直接的に変えながら、前記転送部に与える、ことを特徴とする。
これにより、転送部が、イメージデータを、メモリー間転送方式によって転送するため、データ転送を確実に実行でき、処理が速い。
更に、上記発明において、その好ましい態様は、前記制御部は、前記第3コマンドの後に受信される前記圧縮されたイメージデータを伸張する論理回路を含むデータ処理部を備え、前記データ処理部は、前記第3コマンドの後に受信される前記圧縮されたイメージデータを前記論理回路に基づくハードウェア方式により伸張しながら前記第4記憶部へ展開する、ことを特徴とする。
これにより、また、ハードウェア方式で伸張及び展開処理を行うため、処理速度を速くできる。更に、ファームウェアでの処理と並行して実行できる。
更に、上記発明において、その好ましい態様は、前記制御部は、前記データ処理部による前記伸張の処理と並行して、前記第2記憶部に記憶された前記データを前記第4記憶部へ展開して記憶する、ことを特徴とする。
これにより、第2記憶部から第4記憶部へのデータの展開処理と、第3記憶部から第4記憶部へのデータ展開処理が並行して行われるため、処理効率が良い。また、ハードウェアで伸張処理を行うため、処理速度を速くできる。
上記目的を達成するために、本発明の別の側面は、印刷装置が、コマンドを受信し、当該受信した前記コマンドを記憶する第1記憶部を備える通信部と、前記第1記憶部に記憶された前記コマンドを解釈し、解釈した前記コマンドが第1コマンドまたは第3コマンドなら、受信順に処理を実行し、解釈した前記コマンドが第2コマンドなら、前記第1コマンドまたは前記第3コマンドに優先して処理を実行する制御部と、前記第1コマンドに係るデータを記憶する第2記憶部と、前記第3コマンドに係るデータを記憶する第3記憶部と、展開された印刷実行データを記憶する第4記憶部と、前記第4記憶部に記憶された前記印刷実行データに基づいて印刷を実行する印刷部と、を備える印刷装置の制御方法であって、前記制御部が、前記第1記憶部に受信された前記コマンドが前記第1コマンドのイメージコマンドであれば、その後に受信される所定数のイメージデータを前記第1記憶部から、前記第2記憶部の所定のアドレスへメモリー間転送方式によって転送し、転送した前記イメージデータを前記第4記憶部に前記印刷実行データとして展開して記憶し、前記第1記憶部に受信された前記コマンドが前記第3コマンドであれば、その後に受信される所定数の圧縮されたイメージデータを前記第1記憶部から前記第3記憶部の所定のアドレスへ前記メモリー間転送方式によって転送し、転送した前記圧縮されたイメージデータを伸張しながら、前記第4記憶部に前記印刷実行データとして展開して記憶する、ことである。
本発明の更なる目的及び、特徴は、以下に説明する発明の実施の形態から明らかになる。
本発明を適用した印刷装置を備える印刷システムの実施の形態例に係る構成図である。 プリンター2におけるコマンド受信時の処理手順を例示したフローチャートである。 ホストコンピューター1から送信される1コマンド分の印刷要求データ(イメージデータ)の構造を模式的に示した図である。
以下、図面を参照して本発明の実施の形態例を説明する。しかしながら、かかる実施の形態例が、本発明の技術的範囲を限定するものではない。なお、図において、同一又は類似のものには同一の参照番号又は参照記号を付して説明する。
図1は、本発明を適用した印刷装置を備える印刷システムの実施の形態例に係る構成図である。図1に示すプリンター2が本発明を適用した印刷装置であり、プリンター2は、ホストコンピューター1から受信した各コマンドをレジスター261(第1記憶部)にて受信し、コマンド解析部200によって受信した各コマンドを解釈し、コマンドが他のコマンドに優先して即座に実行されるコマンド(以降、リアルタイムコマンド(第2コマンド)と称す)の場合、その他のコマンドに優先して処理を実行する。コマンドが、圧縮していないイメージデータ(以降、非圧縮データと称す)の印刷を要求するコマンド(以降、非圧縮イメージコマンド(第1コマンド)と称す)の場合、その後に受信される非圧縮データについては解釈をしないで、レジスター261から受信バッファー205(第2記憶部)の所定のアドレスにメモリー間転送(DMA転送:Direct Memory ACCESS 転送)する。また、圧縮したイメージデータ(以降、圧縮データと称す)の印刷を要求するコマンド(以降、圧縮イメージコマンド(第3コマンド)と称す)の場合、その後に受信される圧縮データを解釈しないで、レジスター261から伸張バッファー203(第3記憶部)の所定のアドレスにメモリー間転送(DMA転送)する。これにより、圧縮データまたは非圧縮データをコマンドとして解釈しないので、プリンター2におけるリアルタイムコマンドの誤動作を確実に防止できる。また、プリンター2は常にリアルタイムコマンドを実行できる状態なので、必要な処理をすぐに実行させることができる。また、データ量により、イメージデータの圧縮の有無を変えられるため、圧縮データについては、転送処理を速くでき、非圧縮データについては、圧縮伸張処理をせずに処理を速くすることができる。また、メモリー間転送(DMA転送)方式によって直接メモリー間でデータの受け渡しをするため、処理が速い。
なお、本明細書中において、「印刷要求データ」とは、ホストコンピューター1から印刷要求をする際に、プリンター2に送られるデータを示す。また、「印刷データ」とは、印刷要求データのうち、コマンドを除いた実際に印刷対象となる実データの部分を示す。「印刷実行データ」とは、後述する印刷実行データ生成部206にて生成され、後述するプリントバッファー204に記憶されるデータを示す。「イメージコマンド」とは、非圧縮イメージコマンドまたは圧縮イメージコマンドの総称を示す。「イメージデータ」とは、圧縮データまたは非圧縮データの総称を示す。
図1に示す本実施の形態例に係る印刷システムは、BLUETOOTH(登録商標)等の無線通信3で接続されるホストコンピューター1とプリンター2を備える。かかる印刷システムは、ここでは一例として、POS(Point of Sales)システムの一部として機能し、商品販売後のレシートの印刷等を主に行う。
ホストコンピューター1は、プリンター2にレシート等の印刷命令を行うプリンター2のホスト装置である。ここでは一例として、ホストコンピューター1は、いわゆるレジ端末であり、商品販売時の精算処理等を行う。また、ホストコンピューター1は、販売員が携帯できるモバイル型の端末装置であっても構わない。
図示していないが、ホストコンピューター1は、ハードウェア構成として、CPU、R
AM、ROM、HDD、表示装置、通信インターフェース、操作装置、バーコードリーダー等の入力装置、現金を収納するドロワー等を備えている。
ホストコンピューター1は、機能構成としては、図1に示すように、アプリケーション11とプリンタードライバー12を備える。
アプリケーション11は、ここでは、いわゆるPOSアプリケーションであり、商品販売時の精算処理等を実行する。具体的には、例えば、アプリケーション11は、バーコードリーダー等の入力装置から入力された販売商品の情報に基づいて合計金額を算出、表示し、代金の受領後、レシートの印刷要求を行う。当該レシートの印刷要求は、GDI(Graphics Device Interface)等の標準形式の印刷要求データをプリンタードライバー12に送信して行う。
なお、レシートには、店舗のロゴ、販売日時、販売商品の名称、個数、金額、合計金額、店舗情報、及び、販売員情報等を含むバーコード等が含まれ、これらがプリンター2において印刷される。これら印刷対象を表すデータが上述した印刷要求データに含まれる。
また、アプリケーション11は、ホストコンピューター1のHDD等に記憶されるアプリケーションプログラム、当該プログラムに従って処理を実行するCPU、前記プログラムや処理データがロードされるRAM等(いずれも図示せず)によって構成される。
プリンタードライバー12は、プリンター2用のドライバーである。プリンタードライバー12は、上述したアプリケーション11等からの印刷要求データを受信し、そのデータからプリンター2用のコマンドで表現された印刷要求データを生成する。その後、プリンタードライバー12は、生成した印刷要求データをプリンター2に送信する。
なお、プリンタードライバー12は、ホストコンピューター1のHDD等に記憶されるドライバープログラム、当該プログラムに従って処理を実行するCPU、前記プログラムや処理されるデータがロードされるRAM等(いずれも図示せず)によって構成される。
プリンター2は、ホストコンピューター1の命令に従ってレシート等を印刷する、いわゆるPOSプリンターである。プリンター2は、ここでは一例として、サーマル方式を採用するものし、印刷媒体である用紙(ロール紙等)に連続して(印刷中用紙の搬送を止めずに)印刷を行うラインプリンターである。
図1に示すように、プリンター2は、通信部26、制御部20、印刷機構部22(印刷部)、受信バッファー205、伸張バッファー203、及び、プリントバッファー204(第4記憶部)を備える。プリンター2は、ハードウェア構成として、図示していないが、CPU、ROM、RAM、NVRAM、ASIC等を備え、更に、ユーザーへの表示装置、ユーザーの操作装置、警報音を発する装置、及び、無線通信インターフェース等を備える。
通信部26は、プリンター2の通信インターフェースを担う部分であり、ホストコンピューター1から無線通信3によって印刷要求データを受信する部分である。通信部26は、図1に示すように、レジスター261を備える。
レジスター261は、上述したプリンタードライバー12が生成するプリンター2用のコマンドに変換された印刷要求データを順次受信して、記憶するメモリーである。なお、レジスター261は、RAM等で構成される。
制御部20は、プリンター2の各部を制御し、コマンドに従った処理を実行する部分である。図1に示すように、制御部20は、機能構成として、コマンド解析部200、リアルタイムコマンド実行部207、DMA転送部201(転送部)、印刷データ生成部206、及び、データ処理部208等を備える。
なお、制御部20は、ハードウェア構成として、図示していないが、CPU、ROM、RAM、NVRAM、ASIC等を備える。
コマンド解析部200は、レジスター261にて受信した印刷要求データに含まれる各コマンドを解釈する部分である。
ホストコンピューター1から送信されるリアルタイムコマンド、圧縮イメージコマンド、及び、非圧縮イメージコマンド、及び、テキスト等コマンドがある(非圧縮イメージコマンドとテキスト等コマンドが第1コマンド)。ここで、テキスト等コマンドとは、テキスト等のイメージ以外のオブジェクトの印刷を要求するコマンドである。
コマンド解析部200は、受信したこれらコマンドに応じた処理を実行する。具体的には、コマンド解析部200は、解釈したコマンドがリアルタイムコマンドであれば、リアルタイムコマンド実行部207に処理を実行させ、解釈したコマンドがテキスト等コマンドであれば、コマンド解析部200は、その、コマンドを受信バッファー205に記憶する。また、解釈したコマンドが非圧縮イメージコマンドまたは圧縮イメージコマンドである場合には、DMA転送部201へメモリー間転送(DMA転送)を行う。この転送処理の詳細については、後述する。
リアルタイムコマンド実行部207は、コマンド解析部200において解釈したコマンドがリアルタイムコマンドの場合にそのコマンドに従った処理を実行する部分である。
なお、リアルタイムコマンドには、印刷要求データの送信前等に発せられる、プリンター2のステータス情報を取得するコマンド、印刷の中止時等に発せられる、プリンター2のデータバッファー(受信バッファー205、伸張バッファー203、及び、プリントバッファー204等)に蓄積されたデータをクリアにさせるコマンド等がある。また、POS端末(ホストコンピューター1)のドロワーを開ける指示を出させるコマンド、警報音の指示を出させるコマンド等、装置の駆動を指示させるコマンドもリアルタイムコマンドである。これら、リアルタイムコマンドは、リアルタイムコマンド実行部207が指示を受けると即座に実行される。
DMA転送部201は、コマンド解析部200にて解釈されたコマンドが、イメージコマンドである場合、イメージデータをレジスター261の所定のアドレスから、伸張バッファー203または受信バッファー205の所定のアドレスへメモリー間転送(DMA転送)する部分である。なお、DMA転送部201は、DMA専用回路で構成される。
印刷実行データ生成部206は、受信バッファー205に記憶されたコマンドを、受信バッファー205に記憶された順に処理し、印刷実行データを生成する部分である。生成された印刷実行データは、印刷対象物(オブジェクト)の画像を画素毎に展開した画像データであり、プリントバッファー204に記憶される。プリントバッファー204に記憶された印刷実行データに従って、印刷機構部22で印刷の実行がなされる。
データ処理部208は、DMA転送部201によってレジスター261から伸張バッファー203へメモリー間転送(DMA転送)された圧縮データを伸張(展開)処理を実行する部分である。データ処理部208は、伸張後のデータをプリントバッファー204に
展開する。なお、データ処理部208は、論理回路(スタンダードセル、ゲートアレイ等)を備える。
なお、コマンド解析部200、リアルタイムコマンド実行部207、及び、印刷データ生成部206は、プリンター2に搭載されたROM(図示せず)に記憶されるプログラム(ファームウェア)、当該プログラムに従って動作するCPU等で構成することができる。
上述したように、プリンター2は、データバッファーとして、受信バッファー205、伸張バッファー203、及び、プリントバッファー204を備える。
受信バッファー205は、ホストコンピューター1から受信した印刷要求データを受信順に格納する(蓄積する)データバッファーである。具体的には、非圧縮イメージコマンド及びテキスト等コマンド等を記憶する。
伸張バッファー203は、DMA転送部201によってレジスター261からメモリー間転送(DMA転送)される圧縮データを記憶するデータバッファーである。受信バッファー205とは別途備えられ、圧縮データを格納するための専用のデータバッファーである。
プリントバッファー204は、印刷対象となる印刷実行データを格納する(蓄積する)データバッファーであり、当該プリントバッファー204に格納された印刷実行データは、順次、制御部20から印刷機構部22に渡されて、それらに従った印刷処理がなされる。
なお、受信バッファー205、伸張バッファー203、及び、プリントバッファー204は、RAM等で構成される。
なお、プリンター2は、図示していないが、NVRAMを備え、そこには、設定情報、ステータス情報、フォントデータ、ロゴ等のイメージデータ等プリンター2の電源が切断されても消さずに記憶しておくべき情報が格納される。
印刷機構部22は、制御部20の指示に従って用紙への印刷処理を実行する部分であり、用紙を搬送する搬送部、ラインヘッド等、用紙に印字をする印字部(いずれも図示せず)等を備える。ここでは、制御部20の指示に従って、レシート等を印刷する。
以上のような構成を備えるプリンター2では、コマンド受信時の処理、特にイメージデータの処理に特徴があり、以下、その具体的な処理内容について説明する。
図2は、プリンター2におけるコマンド受信時の処理手順を例示したフローチャートである。
ここで、まず、ホストコンピューター1からプリンター2へ渡される印刷要求データのうち、イメージデータに係るデータの構造について説明する。
図3は、ホストコンピューター1から送信される1コマンド分の印刷要求データ(イメージデータ)の構造を模式的に示した図である。
図3は、イメージコマンドと、そのイメージデータ示している。図3に示すようにイメージコマンドの後ろに実際に印刷対象となるイメージデータが続いている(付随している
)。イメージコマンドが圧縮イメージコマンドのときは、圧縮データが付され、イメージコマンドが非圧縮イメージコマンドのときは、非圧縮データが付される。また、イメージコマンドには、付されるイメージデータの容量を示す情報が含まれる。
本実施の形態例では、印刷対象がレシートであるので、店舗のロゴ、バーコード等の印刷要求データがこのように表現される。
図2のフローチャートにおいて、ホストコンピューター1から受信される1コマンド分(1オブジェクト分)のデータをレジスター261にて受信する(図2のステップS1)。
次に、コマンド解析部200は、レジスター261に受信されたコマンドの解釈を実行する(図2のステップS2)。具体的には、コマンド解析部200は、受信したコマンドがリアルタイムコマンド、イメージコマンド、及び、テキスト等コマンドのいずれかであるかを解釈(識別)する。その解釈の結果、レジスター261で受信したコマンドがリアルタイムコマンドであった場合(図2のステップS3のYes)、コマンド解析部200は、リアルタイムコマンド実行部207に対してその処理を実行するよう指示する。指示を受けたリアルタイムコマンド実行部207は、そのコマンドにて指示された処理を即座に実行する(図2のステップS4)。具体的には、例えば、受信バッファー205、伸張バッファー203、及び、プリントバッファー204等のプリンター2が備えるデータバッファーに蓄積されたデータをクリアにしたり、POS端末(ホストコンピューター1)のドロワーを開けたり、警報音を発したりする。
一方、レジスター261で受信したコマンドがリアルタイムコマンド以外のコマンドであり、イメージコマンドではなかった場合、つまり、テキスト等コマンドであった場合(図2のステップS5のNo)、コマンド解析部200は、受信されたテキスト等コマンドを受信バッファー205へ順次渡し、受信バッファー205は、当該テキスト等コマンドの記憶をする(図2のステップS6)。
その後、印刷実行データ生成部206は、受信バッファー205に記憶された当該テキスト等コマンドを処理し、そのコマンドによって要求された印刷対象の印刷実行データを生成する(図2のステップS7)。
次に、印刷実行データ生成部206は、生成した印刷実行データをプリントバッファー204へ記憶する(図2のステップS8)。例えば、テキスト等コマンドが、所定のテキストの印刷を要求するものであれば、そのテキストのフォントデータを上記NVRAMから読み出し、そのフォントの画像データを生成して、プリントバッファー204に格納(展開)する。
一方、受信したコマンドが、イメージコマンドであって(図2のステップS5のYes)、圧縮イメージコマンドであった場合(図2のステップS9のYes)、コマンド解析部200は、DMA転送部201に対して、当該コマンドの後に送信されるイメージデータ(ここでは、圧縮データ)をレジスター261から、伸張バッファー203へメモリー間転送(DMA転送)するよう指示をする(図3のステップS10)。具体的には、コマンド解析部200は、当該コマンド(圧縮データコマンド)に含まれる情報から、付随する圧縮データの容量を把握し、それに応じた回数のデータ転送をDMA転送部201に指示する。各転送指示において、コマンド解析部200は、レジスター261の読み出し先アドレスと、伸張バッファー203の書き込み先アドレスを適切に変更して、DMA転送部201に与える。指示を受けたDMA転送部201は、レジスター261の所定のアドレス(指示を受けたアドレス)から、伸張バッファー203のメモリーの所定のアドレス
(指示を受けたアドレス)へ、アドレスを変えながら図3に示すイメージデータの部分(ここでは、圧縮されたイメージデータ)をメモリー間転送(DMA転送)する。メモリー間転送(DMA転送)されたイメージデータは、伸張バッファー203へ順次記憶される(図2のステップS11)。ここで、コマンド解析部200は、コマンドの後に続くイメージデータの解釈(コマンドの識別)はしない。
次に、伸張バッファー203へ転送されたイメージデータは、データ処理部208にて、ハードウェア方式によって伸張処理がなされ(図2のステップS12)、データ処理部208は、伸張処理をしたイメージデータを順次プリントバッファー204へ記憶(展開)する(図2のステップS8)。ここで、データ処理部208は、イメージデータの伸張処理をしながら、伸張処理後のイメージデータを順次プリントバッファー204へ記憶していく。
一方、ステップS9に戻って、受信したコマンドが、圧縮イメージコマンドでない場合(図2のステップS9のNo)、つまり、非圧縮イメージコマンドであった場合には、コマンド解析部200は、DMA転送部201に対して、図3に示すイメージデータの部分(ここでは、非圧縮データ)をレジスター261から、受信バッファー205へ直接転送するよう指示をする。指示を受けたDMA転送部201は、イメージデータをレジスター261の所定のアドレスから、受信バッファー205の所定のアドレスへアドレスを変えながらメモリー間転送(DMA転送)する(図2のステップS13)。転送されたイメージデータは、順次受信バッファー205へ記憶(展開)される(図2のステップS14)。ここで、コマンド解析部200は、コマンドの後に続くイメージデータの解釈はしない。その後、受信バッファー205へ記憶したイメージデータは、印刷実行データ生成部206により、受信バッファー205への記憶の順で処理され、印刷実行データとして生成をされる(図2のステップS7)。その後、プリントバッファー204へ記憶される(図2のステップS8)。
このようにして、各種コマンドを受信した際のコマンド解析部200によるコマンドの解釈からリアルタイムコマンドの実行、または、印刷実行データの生成及びプリントバッファー204への展開処理が終了し、プリンター2は、プリントバッファー204へ記憶された各印刷実行データに従って印刷する。当該例においては、レシートに印刷する1コマンド(1オブジェクト分)の印刷を実行する。
以上説明したように、本実施の形態例に係るプリンター2では、ホストコンピューター1から送信される各コマンドをレジスター261で受信し、コマンド解析部200は、コマンドを解釈して、そのコマンドが、非圧縮イメージコマンドの場合は、その後に受信するイメージデータ(非圧縮データ)の解釈をしないで、そのイメージデータをレジスター261から受信バッファー205の所定のアドレスへ、メモリー間転送(DMA転送)する。また、コマンド解析部200は、解釈したコマンドが圧縮イメージコマンドの場合、その後に受信するイメージデータ(圧縮データ)の解釈をしないで、イメージデータ(圧縮データ)をレジスター261から、伸張バッファー203の所定のアドレスへ、メモリー間転送(DMA転送)する。
これにより、受信した印刷要求データに含まれるイメージデータをコマンドとして解釈しないので、イメージデータの中に、リアルタイムコマンドと同一のデータ列が含まれていた場合にも、誤動作を確実に実行できる。
また、プリンター2では常にリアルタイムコマンドを実行できる状態なので、必要なリアルタイムコマンドによる処理をすぐに実行させることができる。
また、イメージデータは圧縮/非圧縮に関わらず処理できるので、データ量により圧縮の有無を変えられ、データ量の多いイメージデータでは通信速度が速く、データ量の少ないイメージデータは、圧縮伸張処理に時間がかかることがないという、両方のメリットを維持できる。
また、メモリー間転送方式(DMA転送)を採用することにより、レジスター261の所定のアドレスから、伸張バッファー203または受信バッファー205の所定のアドレスへのデータ転送を確実に行うことができる。
また、圧縮データを受信する伸張バッファー203と、非圧縮データやテキスト等コマンドを受信する受信バッファー205が区別され、データバッファーとして2つのバッファーを備えるため、印刷に必要な処理を並行して実行でき、処理の効率が良い。
また、データ処理部208は、伸張バッファー203に転送された圧縮データのみ伸張処理を実行すれば良いため、データの区別をする必要がなく、実装を容易にでき、処理効率が良い。
また、データ処理部208は、伸張処理をハードウェア方式で行うため、プリンター2のファームウェア等、ソフトウェアが実行中でも伸張処理を行うことができ、処理効率が良く、伸張処理を速くできる。
なお、プリンター2は、印刷方式としてサーマル式を採用しているが、インクジェット方式等の他の印刷方式を搭載したプリンターとしても良い。
本発明の保護範囲は、上記の実施の形態に限定されず、特許請求の範囲に記載された発明とその均等物に及ぶものとする。
1…ホストコンピューター、2…プリンター、3…無線通信、11…アプリケーション、12…プリンタードライバー、20…制御部、22…印刷機構部、26…通信部、200…コマンド解析部、201…DMA転送部、203…伸張バッファー、204…プリントバッファー、205…受信バッファー、206…印刷データ生成部、207…リアルタイムコマンド実行部、208…データ処理部、261…レジスター。

Claims (5)

  1. コマンドを受信し、当該受信した前記コマンドを記憶する第1記憶部を備える通信部と、
    前記第1記憶部に記憶された前記コマンドを解釈し、解釈した前記コマンドが第1コマンドまたは第3コマンドなら、受信順に処理を実行し、解釈した前記コマンドが第2コマンドなら、前記第1コマンドまたは前記第3コマンドに優先して処理を実行する制御部と、
    前記第1コマンドに係るデータを記憶する第2記憶部と、
    前記第3コマンドに係るデータを記憶する第3記憶部と、
    展開された印刷実行データを記憶する第4記憶部と、
    前記第4記憶部に記憶された前記印刷実行データに基づいて印刷を実行する印刷部と、を備え、
    前記制御部は、
    前記第1記憶部に受信された前記コマンドが前記第1コマンドのイメージコマンドであれば、その後に受信される所定数のイメージデータを前記第1記憶部から、前記第2記憶部の所定のアドレスへメモリー間転送方式によって転送し、転送した前記イメージデータを前記第4記憶部に前記印刷実行データとして展開して記憶し、
    前記第1記憶部に受信された前記コマンドが前記第3コマンドであれば、その後に受信される所定数の圧縮されたイメージデータを前記第1記憶部から前記第3記憶部の所定のアドレスへ前記メモリー間転送方式によって転送し、転送した前記圧縮されたイメージデータを伸張しながら、前記第4記憶部に前記印刷実行データとして展開して記憶する
    ことを特徴とする印刷装置。
  2. 請求項1において、
    前記制御部は、前記第1記憶部から前記第2記憶部または前記第3記憶部への前記メモリー間転送方式によるデータ転送を実行する転送部を備え、
    前記制御部は、前記データ転送の際に、前記所定数のデータに亘り、前記第2記憶部または前記第3記憶部の前記所定のアドレスを直接的に変えながら、前記転送部に与える
    ことを特徴とする印刷装置。
  3. 請求項1あるいは2において、
    前記制御部は、前記第3コマンドの後に受信される前記圧縮されたイメージデータを伸張する論理回路を含むデータ処理部を備え、
    前記データ処理部は、前記第3コマンドの後に受信される前記圧縮されたイメージデータを前記論理回路に基づくハードウェア方式により伸張しながら前記第4記憶部へ展開する
    ことを特徴とする印刷装置。
  4. 請求項3において、
    前記制御部は、前記データ処理部による前記伸張の処理と並行して、前記第2記憶部に記憶された前記データを前記第4記憶部へ展開して記憶する
    ことを特徴とする印刷装置。
  5. 印刷装置が、コマンドを受信し、当該受信した前記コマンドを記憶する第1記憶部を備える通信部と、前記第1記憶部に記憶された前記コマンドを解釈し、解釈した前記コマンドが第1コマンドまたは第3コマンドなら、受信順に処理を実行し、解釈した前記コマンドが第2コマンドなら、前記第1コマンドまたは前記第3コマンドに優先して処理を実行する制御部と、前記第1コマンドに係るデータを記憶する第2記憶部と、前記第3コマンドに係るデータ記憶する第3記憶部と、展開された印刷実行データを記憶する第4記憶部
    と、前記第4記憶部に記憶された前記印刷実行データに基づいて印刷を実行する印刷部と、を備える印刷装置の制御方法であって、
    前記制御部が、前記第1記憶部に受信された前記コマンドが前記第1コマンドのイメージコマンドであれば、その後に受信される所定数のイメージデータを前記第1記憶部から、前記第2記憶部の所定のアドレスへメモリー間転送方式によって転送し、転送した前記イメージデータを前記第4記憶部に前記印刷実行データとして展開して記憶し、前記第1記憶部に受信された前記コマンドが前記第3コマンドであれば、その後に受信される所定数の圧縮されたイメージデータを前記第1記憶部から前記第3記憶部の所定のアドレスへ前記メモリー間転送方式によって転送し、転送した前記圧縮されたイメージデータを伸張しながら、前記第4記憶部に前記印刷実行データとして展開して記憶する
    ことを特徴とする制御方法。
JP2016134817A 2016-07-07 2016-07-07 印刷装置、及び、制御方法 Active JP6680118B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016134817A JP6680118B2 (ja) 2016-07-07 2016-07-07 印刷装置、及び、制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016134817A JP6680118B2 (ja) 2016-07-07 2016-07-07 印刷装置、及び、制御方法

Publications (2)

Publication Number Publication Date
JP2018001692A JP2018001692A (ja) 2018-01-11
JP6680118B2 true JP6680118B2 (ja) 2020-04-15

Family

ID=60945679

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016134817A Active JP6680118B2 (ja) 2016-07-07 2016-07-07 印刷装置、及び、制御方法

Country Status (1)

Country Link
JP (1) JP6680118B2 (ja)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH064230A (ja) * 1992-03-25 1994-01-14 Nec Corp プリンタ装置
JPH09309233A (ja) * 1996-05-23 1997-12-02 Tec Corp 画像形成装置及び画像形成方法
JPH11305962A (ja) * 1998-04-20 1999-11-05 Canon Inc 印刷処理装置および印刷処理装置のデータ処理方法およびコンピュータが読み出し可能なプログラムを格納した記憶媒体
JP2006024134A (ja) * 2004-07-09 2006-01-26 Sony Corp Dma転送装置及びdma転送方法
KR100535442B1 (ko) * 2005-04-18 2005-12-09 주식회사 빅솔론 프린팅 장치, 상기 프린팅 장치의 제어 방법 및 상기프린팅 장치를 이용한 데이터 처리 장치
JP2011235568A (ja) * 2010-05-12 2011-11-24 Seiko Epson Corp 印刷装置およびその制御方法

Also Published As

Publication number Publication date
JP2018001692A (ja) 2018-01-11

Similar Documents

Publication Publication Date Title
JP5807343B2 (ja) 印刷データを用いた機能拡張プログラム、機能拡張装置、及び、機能拡張方法
US9001171B2 (en) Double-sided receipt printing method and double-sided receipt printer
US9928454B2 (en) Host computer, control method of a host computer, and medium
JP2019040564A (ja) プリンタドライバ、および情報処理装置
US10046577B2 (en) Printing device, printing system, and control method of a printing device
JP6680118B2 (ja) 印刷装置、及び、制御方法
JP6372170B2 (ja) プリンターの制御装置、プリントシステム、制御方法、及び、制御プログラム
US9058133B2 (en) Control device, control method for a control device, and recording medium
JP5929431B2 (ja) 画像記録装置、画像記録装置の制御方法、及び制御プログラム
US10048901B2 (en) Control device, control method of a control device, and storage medium
JP2016016631A (ja) 記録装置の制御方法、記録装置、及び、制御プログラム
JP6986948B2 (ja) プリンタ装置
US20190210377A1 (en) Printer and printer system
JP2015219683A (ja) 印刷装置及び印刷装置の制御方法
JP2007152898A (ja) 印刷処理装置
JP2015005311A (ja) 印刷データを用いた機能拡張プログラム、機能拡張装置、及び、機能拡張方法
US9047209B2 (en) Controlling communication between a point of sale terminal and a printer without changing an application on the point of sale terminal
US20200341710A1 (en) Job transmission device, job processing device, program, and job transmission method performed by job transmission device
JP3679493B2 (ja) 画像処理装置および画像処理方法
JP2007149035A (ja) 画像形成装置
JP2016099636A (ja) 印刷データ処理装置、印刷データ処理方法、プログラム、及び、印刷システム
JP6075427B2 (ja) 印刷制御方法、及び、プリンタードライバー
JP6236943B2 (ja) 通信制御方法、及び、情報処理装置
JP2016043642A (ja) 印刷装置、制御方法、及び、プログラム
JP2007301893A (ja) 画像形成装置

Legal Events

Date Code Title Description
RD05 Notification of revocation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7425

Effective date: 20180907

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20181120

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190520

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20200218

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200302

R150 Certificate of patent or registration of utility model

Ref document number: 6680118

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150