JPS6095634A - マイクロコンピユ−タにおける割込み処理方法 - Google Patents
マイクロコンピユ−タにおける割込み処理方法Info
- Publication number
- JPS6095634A JPS6095634A JP58201058A JP20105883A JPS6095634A JP S6095634 A JPS6095634 A JP S6095634A JP 58201058 A JP58201058 A JP 58201058A JP 20105883 A JP20105883 A JP 20105883A JP S6095634 A JPS6095634 A JP S6095634A
- Authority
- JP
- Japan
- Prior art keywords
- interrupt
- timer
- processing
- microcomputer
- motor
- 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.)
- Pending
Links
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
技■公災
この発明は、マイクロコンピュータ(以下「マイコン」
と称す)における割込み処理方法に関する。
と称す)における割込み処理方法に関する。
従」U1肪
一般に、プリンタ、コピア、パーソナルコンピュータ、
フロッピディスク装置等のシステムに才)いては、制御
部にマイコンを使用している。
フロッピディスク装置等のシステムに才)いては、制御
部にマイコンを使用している。
従来、このようなマイコンどして、−の割込み要求を受
イ」けた後は、他の割込み要求を前記受付けた割込み要
求の処理が終了するまで受(lけないようにした。すな
わち割込みレベルか1のものがある(例えばインテル社
製のMC3−48フアミリ)。
イ」けた後は、他の割込み要求を前記受付けた割込み要
求の処理が終了するまで受(lけないようにした。すな
わち割込みレベルか1のものがある(例えばインテル社
製のMC3−48フアミリ)。
このようなマイコンにあっては、例えは外部割込みが発
生したときに、タイマ(内部)割込み処理がンヨさ九で
いると、内部割込み処理が終了するまで外部割込みの処
理の開始が遅れる。
生したときに、タイマ(内部)割込み処理がンヨさ九で
いると、内部割込み処理が終了するまで外部割込みの処
理の開始が遅れる。
ところで、例えはプリンタを制御する場合に、キャリッ
ジをIBIK動するスペータモータ、活字ボイールを1
兎動するセレクションモータ等の回転に同期して発生さ
ILるエンコーダからの信号を外部割込みに入力して、
モータスピードを制御すると共に、一定時間毎にタイマ
割込みを発生させてリボンドライブ、ラインフィート等
のドライブ制御をする場合がある。
ジをIBIK動するスペータモータ、活字ボイールを1
兎動するセレクションモータ等の回転に同期して発生さ
ILるエンコーダからの信号を外部割込みに入力して、
モータスピードを制御すると共に、一定時間毎にタイマ
割込みを発生させてリボンドライブ、ラインフィート等
のドライブ制御をする場合がある。
この場合、例えはキャリッジリターンとラインフィ−ト
あるいはセレクションとリボンフィー1’は動作が競a
する二とがある。
あるいはセレクションとリボンフィー1’は動作が競a
する二とがある。
ところか、このときマイコンの外部割込みとタイマ割込
みとは非同期の独立した動作をするため、例えば第1図
に示すように、タイマ割込み処理かなさJしているどき
に、外部割込みか要求されて速度制御か必要であっても
、タイマ割込み処理力傅3了するまで外部割込みを受イ
」けない。
みとは非同期の独立した動作をするため、例えば第1図
に示すように、タイマ割込み処理かなさJしているどき
に、外部割込みか要求されて速度制御か必要であっても
、タイマ割込み処理力傅3了するまで外部割込みを受イ
」けない。
そのため、モータの速度制御が時間LAたけ遅れ、以後
のモータ制御に支障か生じるという問題かある。
のモータ制御に支障か生じるという問題かある。
目 的
この発明は上記の点に鑑みてなさ汎たものであり、上述
のようなマイコンにおいて、−の割込み処理の実行中に
も他の割込み要求を処理できるようにして、実質的に割
込みレヘルを増加することを目的とする。
のようなマイコンにおいて、−の割込み処理の実行中に
も他の割込み要求を処理できるようにして、実質的に割
込みレヘルを増加することを目的とする。
ル【及び実妊低
以下、この発明の構成を一実施例に基づいて説明する。
第2図及び第6図は、この発明を実施した活字ホイール
型インバク1へプリンタの外観を示す斜視図及びその外
筐部の分解斜視図である。
型インバク1へプリンタの外観を示す斜視図及びその外
筐部の分解斜視図である。
このプリンタの外筐部は、印字機構部及び印字制御部を
収納する本体ケース1と、カバー2及び底板ろとによっ
て構成されている。
収納する本体ケース1と、カバー2及び底板ろとによっ
て構成されている。
第41″ilは、このプリンタの印字機構部を示す平面
図である。
図である。
この印字機構部は、まず、フレーム10に印字する用紙
を巻付けて給送するプラテン11を回転自在に取fりけ
である。
を巻付けて給送するプラテン11を回転自在に取fりけ
である。
このプラテン11は、フレーム10に固着した用紙給送
モータ (ラインフィードモータ)12によってギア列
16を介して駆動さ汎て、自動的に用紙を給送する。
モータ (ラインフィードモータ)12によってギア列
16を介して駆動さ汎て、自動的に用紙を給送する。
また、このプラテン11は、両端部にノブ14゜15を
固着してあり、用紙装填時や用紙抜き取り時には、この
ノブ14.15を回すことによって手動で回転できる。
固着してあり、用紙装填時や用紙抜き取り時には、この
ノブ14.15を回すことによって手動で回転できる。
なお、このプラテン11の前方には、用紙を表面に押し
伺けるための2個のローラ16.IEiを回転自在に嵌
挿した用紙押え17を設けて、そのローラ16,16を
押圧接触させている。
伺けるための2個のローラ16.IEiを回転自在に嵌
挿した用紙押え17を設けて、そのローラ16,16を
押圧接触させている。
そして、フレーム10に固着したロツl−18及びステ
ー19上に、キャリッジ21をプラテン11に対してそ
の軸方向に平行移動可能に載置している。
ー19上に、キャリッジ21をプラテン11に対してそ
の軸方向に平行移動可能に載置している。
このキャリッジ21は、活字ホイール23を力セラ1ヘ
ケース24に収納してなるカセットホイール22と、活
字ホイール23を活字を叩く印字ハンマ25と、活字ホ
イール23を回転駆動するセレクションモータ26及び
このセレクションモータ26の回転位置を検出するエン
コーダ(セレクションセンサ)27等を備えているか、
その詳細は後述する。
ケース24に収納してなるカセットホイール22と、活
字ホイール23を活字を叩く印字ハンマ25と、活字ホ
イール23を回転駆動するセレクションモータ26及び
このセレクションモータ26の回転位置を検出するエン
コーダ(セレクションセンサ)27等を備えているか、
その詳細は後述する。
そして、このキャリッジ21は、フレーム10に装着さ
れ、回転位置を検出するエンコーチ(スペースセンサ)
2日を取付けたモータ(スペースモータ)28によって
、その回転軸に固着したタイミングプーリ乙0及びフレ
ーム10に回転自在に固定した4個のプーリ61〜ろ4
に張装して。
れ、回転位置を検出するエンコーチ(スペースセンサ)
2日を取付けたモータ(スペースモータ)28によって
、その回転軸に固着したタイミングプーリ乙0及びフレ
ーム10に回転自在に固定した4個のプーリ61〜ろ4
に張装して。
キャリッジ21の下部に固定したスペースワイヤ65を
介して移動される。
介して移動される。
この印字機構部におけるカセツ1−ホイール22の5子
細を第5図乃至第7図を参照して説明する。
細を第5図乃至第7図を参照して説明する。
このカセットホイールは22は、第5図及び第6図に示
すように、活字ホイール23を不透明体からなるカセッ
トケース24内に収納してなる。
すように、活字ホイール23を不透明体からなるカセッ
トケース24内に収納してなる。
その活字ホイール2乙は、第5図乃至第7図に示すよう
に、裏側に後述するセレクションモータ26の冠歯車に
噴み合う冠歯40を形成した中央ボス部41に、放射状
に複数のスポーク42を延設し、このスポーク42の先
端に活字46を担持してなる。
に、裏側に後述するセレクションモータ26の冠歯車に
噴み合う冠歯40を形成した中央ボス部41に、放射状
に複数のスポーク42を延設し、このスポーク42の先
端に活字46を担持してなる。
そして、この活字ホイール26の中央ボス部41のプラ
テン側(表側)の周面には、第7図に示すように、同一
円周上にホーム位置識別標識とである反射板からなるマ
ーク45及びホイール種別識別標識である反射板からな
るマーク46を付設している。
テン側(表側)の周面には、第7図に示すように、同一
円周上にホーム位置識別標識とである反射板からなるマ
ーク45及びホイール種別識別標識である反射板からな
るマーク46を付設している。
なお、マーク45はマーク46よりも活字ホイール23
の回転方向の幅を広く形成してあり、またマーク45と
マーク46との間隔は活字ホイールの種類に応じて予め
定めている。
の回転方向の幅を広く形成してあり、またマーク45と
マーク46との間隔は活字ホイールの種類に応じて予め
定めている。
−一方、カセッ1ヘケース24には、第5図に示すよう
に、この活字ホイール23にイ」設したマーク45及び
46の半径方向位置に対応して切欠部24aを形成して
いる。
に、この活字ホイール23にイ」設したマーク45及び
46の半径方向位置に対応して切欠部24aを形成して
いる。
次に、この印字機構部におけるキャリッジ21の詳釦を
第8図乃至第10図を参照して説明する。
第8図乃至第10図を参照して説明する。
なお、これ等の各図では、図示の都合上相互に部品の一
部の図示を省略している。
部の図示を省略している。
まず、キャリッジ21のカセット支持フレーム51は、
第10図に示すようにロット18が貫通する筒状の軸受
部52と、その軸受部52から延びるフレーム部5乙と
からなる。
第10図に示すようにロット18が貫通する筒状の軸受
部52と、その軸受部52から延びるフレーム部5乙と
からなる。
そして、このカセット支持フレーム151のフレーム部
53には、その中間両側にそれぞれねし孔5乙aを設け
てあり、それらのねじ孔53aに力セラ1へホイール2
2(第5図参照)を装填するカセットボルタ54をねし
止めで取イー」けている。
53には、その中間両側にそれぞれねし孔5乙aを設け
てあり、それらのねじ孔53aに力セラ1へホイール2
2(第5図参照)を装填するカセットボルタ54をねし
止めで取イー」けている。
また、このフレー11部5ろには、ねじ孔5ろaのそれ
ぞれ少し」二に別のねじ孔53bを設けてあり、それ等
のねじ孔5乙すにハンマブラケッ1−55をねし止めで
取付け、活字ホイール26の活字43を叩く印字ハンマ
25を装着している。
ぞれ少し」二に別のねじ孔53bを設けてあり、それ等
のねじ孔5乙すにハンマブラケッ1−55をねし止めで
取付け、活字ホイール26の活字43を叩く印字ハンマ
25を装着している。
一方、このカセット支持フレーム
52には、第8図及び第S図に示すように略中央部にス
ペースワイヤ′55を固定するためのフック52bを形
成すると共に、両端にそれぞれ樹脂製のキャップ56を
嵌着してあり、そ、ltらのキャップ56上にキャリア
フレーム57の前方下端を載置している。
ペースワイヤ′55を固定するためのフック52bを形
成すると共に、両端にそれぞれ樹脂製のキャップ56を
嵌着してあり、そ、ltらのキャップ56上にキャリア
フレーム57の前方下端を載置している。
このキャリアフレーム57は、711部フレーム58、
側部フレーム5日及び後部フレーム6oがらなり、その
後部フレーム60にステー19上に載置されてステー1
9上を転がるローラ61を回転自在に取り付けている。
側部フレーム5日及び後部フレーム6oがらなり、その
後部フレーム60にステー19上に載置されてステー1
9上を転がるローラ61を回転自在に取り付けている。
また、キャリアフレーム57の側部フレーム5日には、
それぞれ前方上方にロッ1(18を中心とする円弧孔5
9aを穿設し、この円弧孔59aとカセット支持フレー
ム51のフレーム部53の先端に穿設した貫通孔53c
及びモータブラヶッ1へ63の両側に穿設した連結孔6
3aとを合わせて、1本の連結軸64で連結している。
それぞれ前方上方にロッ1(18を中心とする円弧孔5
9aを穿設し、この円弧孔59aとカセット支持フレー
ム51のフレーム部53の先端に穿設した貫通孔53c
及びモータブラヶッ1へ63の両側に穿設した連結孔6
3aとを合わせて、1本の連結軸64で連結している。
そのモータブラケット63は、片側から後方に向けての
びる腕65を一体的に形成して、この腕65の先端外側
に係合ピン66を植設し、この係合ピン66をキャリア
フレーム57の一方の側部フレーム5日の円弧孔59.
の若干後方に水平方向に直線的に穿設した長孔59bに
係合している。
びる腕65を一体的に形成して、この腕65の先端外側
に係合ピン66を植設し、この係合ピン66をキャリア
フレーム57の一方の側部フレーム5日の円弧孔59.
の若干後方に水平方向に直線的に穿設した長孔59bに
係合している。
このように、モータブラケット63は、連結軸64と係
合ピン66とでキャリアフレーム57に吊り下げて、円
弧孔59aと長孔59bとに案内されてプラテン11と
直角な方向に移動可能に装着している。
合ピン66とでキャリアフレーム57に吊り下げて、円
弧孔59aと長孔59bとに案内されてプラテン11と
直角な方向に移動可能に装着している。
そして、第8図に示すように、連結軸54の両端に、他
端をキャリアフレーム57に固定したビン68に掛けら
れたトクルバネ6Bの一端を掛けて、モータブラケッ1
−63を円弧孔59a及び長孔59bの前方又は後方の
いずれかに押し当てられるようにする。なお、第8図及
び第9図は、前方に押し当てられた状態を示している。
端をキャリアフレーム57に固定したビン68に掛けら
れたトクルバネ6Bの一端を掛けて、モータブラケッ1
−63を円弧孔59a及び長孔59bの前方又は後方の
いずれかに押し当てられるようにする。なお、第8図及
び第9図は、前方に押し当てられた状態を示している。
そして、このモータブラケット6乙には、複数の取付孔
Ei3bを設けて、セレクションセンサ27を一体とす
るセレクションモータ26をねし止めで取り付けている
。
Ei3bを設けて、セレクションセンサ27を一体とす
るセレクションモータ26をねし止めで取り付けている
。
このセレクションモータ26の回転軸26aの先端には
、冠歯車71を固着してあり、モータブラケット66が
前方に位置する(第8図及び第9図図示の状態)とき、
その冠歯車71が活字ホイ−ル26の冠歯41と噛み合
う。
、冠歯車71を固着してあり、モータブラケット66が
前方に位置する(第8図及び第9図図示の状態)とき、
その冠歯車71が活字ホイ−ル26の冠歯41と噛み合
う。
また、第10図に示すように、キャリアフレーム57の
両側部フレーム5日の前方に夫々2つの取付孔59C,
59dを穿設して、カセット支持フレーム51及びカセ
ッ1−ホルダ54を挾むように、フロン1−フレーム7
2(第8図では図示を省略)を取イ」けている。
両側部フレーム5日の前方に夫々2つの取付孔59C,
59dを穿設して、カセット支持フレーム51及びカセ
ッ1−ホルダ54を挾むように、フロン1−フレーム7
2(第8図では図示を省略)を取イ」けている。
このフロン1−フレーム72の前方には、活字ホイール
23のホーム位置及び種別識別標識であるマーク45及
び46を検知する第11図に示すように発光素子7乙及
び受光素子74からなる反射型フ第1へセンサセンサ(
ホイールセンサ)75を取イ」けている。
23のホーム位置及び種別識別標識であるマーク45及
び46を検知する第11図に示すように発光素子7乙及
び受光素子74からなる反射型フ第1へセンサセンサ(
ホイールセンサ)75を取イ」けている。
また、フロン1−フレーム22の前方には、カセツ1−
24内の活字ホイール23をセレクションモータ26側
へ付勢する板ばね76と、カー1−ホルダ77とを数句
けている。なお、第8図中、Pは用紙であり、また第8
図及び第9図中、Rはインクリボンである。
24内の活字ホイール23をセレクションモータ26側
へ付勢する板ばね76と、カー1−ホルダ77とを数句
けている。なお、第8図中、Pは用紙であり、また第8
図及び第9図中、Rはインクリボンである。
このように構成したキャリッジ21は、第8図に示す状
態にあるときに、セレクションモータ26の回転軸26
aが活字ホイール26に連結されるので、活字ホイール
23を回転して所望の活字を選択し、印字ハンマ25で
叩いて用紙Pに印字することができる。
態にあるときに、セレクションモータ26の回転軸26
aが活字ホイール26に連結されるので、活字ホイール
23を回転して所望の活字を選択し、印字ハンマ25で
叩いて用紙Pに印字することができる。
この第8図に示す印字状態から、カセツ1−ポイール2
2を交換するときに、第12図に示すように、1−クル
ハネ6日に抗してカセット支持フレーム51をロット1
8を中心にして後方に回動し、連結軸64に吊り下げた
モータブラケット66を後退させてロッド18から活字
ホイール2乙の冠歯41までの距離とロツ(・18から
連結軸64までの距離のレバー比によって、活字ホイー
ル2ろとセレクションモータ26との連結を解除する。
2を交換するときに、第12図に示すように、1−クル
ハネ6日に抗してカセット支持フレーム51をロット1
8を中心にして後方に回動し、連結軸64に吊り下げた
モータブラケット66を後退させてロッド18から活字
ホイール2乙の冠歯41までの距離とロツ(・18から
連結軸64までの距離のレバー比によって、活字ホイー
ル2ろとセレクションモータ26との連結を解除する。
このとき、カセッ1へ支持フレー1151は、1−クル
バネ69の伺勢力でロツ1−18を中心として後方に倒
れ、カセツ1〜ボルタ54の上方がプラテン11から離
れて、カセッ1〜ホイール22の交換かできる。
バネ69の伺勢力でロツ1−18を中心として後方に倒
れ、カセツ1〜ボルタ54の上方がプラテン11から離
れて、カセッ1〜ホイール22の交換かできる。
第13図は、このプリンタの制御部を示すブロック図で
ある。
ある。
この制御部のプリンタコン1−ロール回路8oは。
このプリンタ全体の制御を司り、CPU (中央処理装
置)、プログラムメモリ(ROM)、データメモリ(R
AM)及びl10(入出力装置)等からなる2個のマイ
コン81.82と、I10ポート83.84と、1/4
分周器85.86等で構成されている。
置)、プログラムメモリ(ROM)、データメモリ(R
AM)及びl10(入出力装置)等からなる2個のマイ
コン81.82と、I10ポート83.84と、1/4
分周器85.86等で構成されている。
そのマイコン81.82は、インテル社製のr8048
」を、またI10ポー1−83.84は、同社のr13
212Jを使用している。
」を、またI10ポー1−83.84は、同社のr13
212Jを使用している。
そして、そのマイコン81.82は、アドレスラッチス
トローブサイクルクロック端子ALEがらのクロックパ
ルスを、1/4分周器85.Ej6で分周したパルスを
テスト端子T1に入力する。
トローブサイクルクロック端子ALEがらのクロックパ
ルスを、1/4分周器85.Ej6で分周したパルスを
テスト端子T1に入力する。
また、マイコン81.82は、プログラマブル・コミュ
ニケーション・インタフェース等からなるプリンタ・イ
ンタフェース回路87を介してプリンタコントロール回
路80に入力されるコンピュータ、ワードプロセッサ等
のポストシステム側から印字文字データ、スペース(キ
ャリッジ移動量)データ、ラインフィー1(データ等の
各伸データを、I10ボー1−83.84又はI10ボ
ー1−86を介して夫々入出力ポート1.(PI)に入
力する。
ニケーション・インタフェース等からなるプリンタ・イ
ンタフェース回路87を介してプリンタコントロール回
路80に入力されるコンピュータ、ワードプロセッサ等
のポストシステム側から印字文字データ、スペース(キ
ャリッジ移動量)データ、ラインフィー1(データ等の
各伸データを、I10ボー1−83.84又はI10ボ
ー1−86を介して夫々入出力ポート1.(PI)に入
力する。
そして、マイコン81は、入力さ九た各種データの処理
結果に基づいて、改行(ラインフィー1−)のために、
ポー1−2(P2)から1−ライブパルスDLをドライ
ブ回路90に出力してう・rシフイードモータ12を駆
動制御して、プラテン11を回転させて用紙を送る。
結果に基づいて、改行(ラインフィー1−)のために、
ポー1−2(P2)から1−ライブパルスDLをドライ
ブ回路90に出力してう・rシフイードモータ12を駆
動制御して、プラテン11を回転させて用紙を送る。
また、マイコン81は、各種データの処理結果及びスペ
ースセンサ29から外部割込み端子INTに入力される
位置信号PAに基づいて、印字位置を指定するために、
ポー1〜2からスペースモータ28の駆動を指令する駆
動信号D RV C、スペースモータ28の速度を指令
する指令速度データVDAC及びスペースモータ28の
回転方向を指定する回転方向信号DIRCを、スペース
サーボドライブ回路S1に出力して、スペースモータ2
8を回転駆動してキャリッジ21を所定の方向に所要量
だけ移動させる。
ースセンサ29から外部割込み端子INTに入力される
位置信号PAに基づいて、印字位置を指定するために、
ポー1〜2からスペースモータ28の駆動を指令する駆
動信号D RV C、スペースモータ28の速度を指令
する指令速度データVDAC及びスペースモータ28の
回転方向を指定する回転方向信号DIRCを、スペース
サーボドライブ回路S1に出力して、スペースモータ2
8を回転駆動してキャリッジ21を所定の方向に所要量
だけ移動させる。
一方、マイコン82は、印字のために、ポート2からド
ライブパルスD Hをドライブ回路9乙に出力して、印
字ハンマ25のハンママクネツ1へ94を駆動制御して
ハンマS5によって活字ホイール23の活字を叩かせる
。
ライブパルスD Hをドライブ回路9乙に出力して、印
字ハンマ25のハンママクネツ1へ94を駆動制御して
ハンマS5によって活字ホイール23の活字を叩かせる
。
また、マイコン82は、インクリボンを送るために、ポ
ート2からドライブパルスDRをドライブ回路96に出
力して、第4図では図示を省略したリボンフィードモー
タ97を駆動制御して、インクリボン98を送る。
ート2からドライブパルスDRをドライブ回路96に出
力して、第4図では図示を省略したリボンフィードモー
タ97を駆動制御して、インクリボン98を送る。
さらに、マイコン82は、印字文字テーク及びセレクシ
ョンモータ27から外部割込み端子INTに入力される
位置信号1) Bに基ついて、活字選択のために、セレ
クションモータ26の駆動を指令する駆動信号1) R
V S 、セレクションモータ26の速度を指令する指
令速度データV1つAS及びセレクションモータ26の
回転方向を指定する回転方向信号D1.R3を、セレク
ションサーボドライブ回路S9に出力して、セレクショ
ンモータ26を回転駆動して活字ホイール26を所定の
方向に所要量だけ回転させ、所要の活字を印字Aンマ2
5によって叩かJLる位置にする。
ョンモータ27から外部割込み端子INTに入力される
位置信号1) Bに基ついて、活字選択のために、セレ
クションモータ26の駆動を指令する駆動信号1) R
V S 、セレクションモータ26の速度を指令する指
令速度データV1つAS及びセレクションモータ26の
回転方向を指定する回転方向信号D1.R3を、セレク
ションサーボドライブ回路S9に出力して、セレクショ
ンモータ26を回転駆動して活字ホイール26を所定の
方向に所要量だけ回転させ、所要の活字を印字Aンマ2
5によって叩かJLる位置にする。
さらにまた、マイコン82は、ボー1〜1に入力される
ホイールセンサ75からのホールパルスP Hに基づい
て活字ホイール26の種類を判別する。
ホイールセンサ75からのホールパルスP Hに基づい
て活字ホイール26の種類を判別する。
次に、これ等のマイコン81.82として使用している
インテル社製のr8048Jについて簡単に説明する。
インテル社製のr8048Jについて簡単に説明する。
ます、このマイコンのブロック構成を第14図に、その
ROMのプログラムメモリ・マツプを第1S図に、同じ
<RAMのデータメモリ・マツプを第16図に示す。
ROMのプログラムメモリ・マツプを第1S図に、同じ
<RAMのデータメモリ・マツプを第16図に示す。
そのプログラムメモリには、次の30ケーシヨン(アド
レス)が特別に割当てられている。
レス)が特別に割当てられている。
(I)0番地:リセツ1−人力を加えると、プログラム
開始番地として0番地が割当てら]Lる。
開始番地として0番地が割当てら]Lる。
(2)3番地:外部割込み(INT)要求信号で割込み
がかかると、無条件に3番地からのプロクラムが実行さ
れる。
がかかると、無条件に3番地からのプロクラムが実行さ
れる。
(3)7@地:タイマ/カウンタのオーバフローによる
内部割込みが発生すると、無条件に7番地ガ)らのプロ
グラムが実行される。
内部割込みが発生すると、無条件に7番地ガ)らのプロ
グラムが実行される。
次に、データメモリは、下記のように構成されている。
(L)O−7番地:SEL RBO命令テワーキンクレ
ジスタ0〜7 (RO〜7)として指定され、直接アド
レッシング可能となる。このレジスタ群をバンク0と称
する。データメモリの全アドレスは、RAMポインタレ
ジスタRO又はR1により間接的に指定できる。
ジスタ0〜7 (RO〜7)として指定され、直接アド
レッシング可能となる。このレジスタ群をバンク0と称
する。データメモリの全アドレスは、RAMポインタレ
ジスタRO又はR1により間接的に指定できる。
(2)8〜23番地;2ワードを一組とする8レベルの
プログラムカウンタ・スタックとして使用する。スタッ
クアドレスは、サブルーチンコール中し;プログラム・
ステータス・ワード(PSW)のスタックポインタによ
りアドレスされる。
プログラムカウンタ・スタックとして使用する。スタッ
クアドレスは、サブルーチンコール中し;プログラム・
ステータス・ワード(PSW)のスタックポインタによ
りアドレスされる。
(3)24〜31番地:SEL RBI命令で0〜7番
地の代わりにワーキングレジスタ0〜7として」h定さ
れ、直接アドレツシンク可能になる。このレジスタ群を
バンクlと称し、割込みサブルーチンで使用する。バン
ク1指定時には、データメモリの全アドレスは、RA
MポインタレジスタIり0′又はR1’ により間接的
に指定できる。
地の代わりにワーキングレジスタ0〜7として」h定さ
れ、直接アドレツシンク可能になる。このレジスタ群を
バンクlと称し、割込みサブルーチンで使用する。バン
ク1指定時には、データメモリの全アドレスは、RA
MポインタレジスタIり0′又はR1’ により間接的
に指定できる。
(4)32〜63@地:通常のRAM領域である。
(5)0〜255番地:外イlけのRA M領域である
。
。
次に、プログラムカウンタ(pc)とプログラムカウン
タ・スタック及びブロクラム・ステータス・ワードにつ
いて述べる。
タ・スタック及びブロクラム・ステータス・ワードにつ
いて述べる。
プログラムカウンタは、独立したカウンタであり、一方
プログラムカウンタ・スタックは、データメモリ中で幾
組かのレジスタ対で構成される。
プログラムカウンタ・スタックは、データメモリ中で幾
組かのレジスタ対で構成される。
ブロクラムカウンタは、第17図に示すように、12ピ
ッ1−構成で、その内のビットAO〜Δ9の10ピッ1
−が内部プログラムメモリの1024ワードをアドレス
するために使用され、ピッ1−Δlo+A11の2ピッ
1−は外部メモリフェッチのために使用される。このプ
ログラムカウンタは、リセツ1−信号によって、ゼロに
初期設定さ4しる。
ッ1−構成で、その内のビットAO〜Δ9の10ピッ1
−が内部プログラムメモリの1024ワードをアドレス
するために使用され、ピッ1−Δlo+A11の2ピッ
1−は外部メモリフェッチのために使用される。このプ
ログラムカウンタは、リセツ1−信号によって、ゼロに
初期設定さ4しる。
そして、このプログラムカウンタの内容番よ、割込みや
サブルーチンコールの発生によって、第18図に示すプ
ロクラム・ステータス・ワード(PSW)(7)ビット
o〜2で構成されるスタックポインタSo、s2.s3
で決定される第19図に示すプログラムカウンタ・スタ
ック(データメモリの8〜23番地)の8組のレジスタ
対の内の1つにストアされる。
サブルーチンコールの発生によって、第18図に示すプ
ロクラム・ステータス・ワード(PSW)(7)ビット
o〜2で構成されるスタックポインタSo、s2.s3
で決定される第19図に示すプログラムカウンタ・スタ
ック(データメモリの8〜23番地)の8組のレジスタ
対の内の1つにストアされる。
プログラムカウンタ・スタックは、第19図に示すよう
に、プログラムカウンタP Co ” P C++及び
プログラム・ステータス・ワードの4ビットをストアす
るために用いる。
に、プログラムカウンタP Co ” P C++及び
プログラム・ステータス・ワードの4ビットをストアす
るために用いる。
プロクラム・ステータ・スワ−1−を構成するスタック
ポインタs1.s2.s3は、初期設定でro、O,o
Jになり、データメモリの8番地と9番地を示す。
ポインタs1.s2.s3は、初期設定でro、O,o
Jになり、データメモリの8番地と9番地を示す。
そして、最初のサブルーチンコール又は内部割込みによ
って、そのときのプロクラムカウンタはデータメモリの
8番地と9番地に転送される。
って、そのときのプロクラムカウンタはデータメモリの
8番地と9番地に転送される。
その後、スタックポインタは、インクリメン1−(+1
)され、次のサブルーチンコールに備えて10番地と1
1番地とを示す。
)され、次のサブルーチンコールに備えて10番地と1
1番地とを示す。
また、スタックポインタは5リターン命令(RTEある
いはRTER)の実行によってデクリメン+−(−1)
され、そのスタックポインタの示すレジスタ対の内容が
プロゲラ11カウンタに転送される。
いはRTER)の実行によってデクリメン+−(−1)
され、そのスタックポインタの示すレジスタ対の内容が
プロゲラ11カウンタに転送される。
次に、割込みについて述へる。割込みロジックは第20
図に示すように構成さ狂ている。
図に示すように構成さ狂ている。
割込み(INT)六カは、各マシンサイクル毎にALE
信号のときにサンプルされ、割込みが検知されると、現
在実行中のサイクルが完了したい、プロクラムメモリの
3番地にサブルーチンジャンプが行なわれる。
信号のときにサンプルされ、割込みが検知されると、現
在実行中のサイクルが完了したい、プロクラムメモリの
3番地にサブルーチンジャンプが行なわれる。
割込みのレベル数は1であり、一度割込みが受イ」けら
れると、次の割込み要求は、RE T R命令の実行に
よって割込み入力の回路が再びイネーブルになるまです
べて無視さJしる。この割込みイネーブルは、RET’
R命令の、2番目のサイクルの初めに行なわれる。この
割込みイネーブルのタイミングは、タイマオーバフロー
によって生じる内部割込みの場合も同じである。
れると、次の割込み要求は、RE T R命令の実行に
よって割込み入力の回路が再びイネーブルになるまです
べて無視さJしる。この割込みイネーブルは、RET’
R命令の、2番目のサイクルの初めに行なわれる。この
割込みイネーブルのタイミングは、タイマオーバフロー
によって生じる内部割込みの場合も同じである。
なお、第20図から分るように、割込み進行中フリップ
フロップ回路(F F)がセットさJしているときには
、その後の割込みはすべていずれの割込み許可FFの状
態に関係なく、ロックアラ[・される。つまり、−の割
込み要求を骨細けたときには、その受イ」けた割込み処
理が終了するまで、他の割込み要求の処理を開始しない
。
フロップ回路(F F)がセットさJしているときには
、その後の割込みはすべていずれの割込み許可FFの状
態に関係なく、ロックアラ[・される。つまり、−の割
込み要求を骨細けたときには、その受イ」けた割込み処
理が終了するまで、他の割込み要求の処理を開始しない
。
次に、タイマ/カウンタは、第21図に示ずように構成
されている。
されている。
このタイマ/カウンタのカウンタは、8ビツトのバイナ
リアップカウンタでプリセラ1〜可能であり、MOVE
A、T (リード・タイマカウンタ)とMOVE T
、A (ロード・タイマカランタラ命令により、アキー
ムレータ(ACC)と内容のやりとりができる。
リアップカウンタでプリセラ1〜可能であり、MOVE
A、T (リード・タイマカウンタ)とMOVE T
、A (ロード・タイマカランタラ命令により、アキー
ムレータ(ACC)と内容のやりとりができる。
カウンタの内容は、リセツ1−によって影響されず、M
OVE T、A命令によって初期値が設定さオする。
OVE T、A命令によって初期値が設定さオする。
そして、カウンタは、5TRTT(スタート・タイマ)
命令でタイマとして、5TRTCNT(スター1−・カ
ウンタ)命令でイベントカウンタとして、それぞれカラ
ン1〜を開始する。
命令でタイマとして、5TRTCNT(スター1−・カ
ウンタ)命令でイベントカウンタとして、それぞれカラ
ン1〜を開始する。
カウンタは、一度スタートすると、S T OPTCN
T(カラン1−停止)命令かりセラI−によってストッ
プさせられるまでカラン1−シ続け、最大カウント数(
FF!I)までインクリメン+−(+1)して、OOI
Iでオーバフローする。
T(カラン1−停止)命令かりセラI−によってストッ
プさせられるまでカラン1−シ続け、最大カウント数(
FF!I)までインクリメン+−(+1)して、OOI
Iでオーバフローする。
この最大カラン1−敗(F l” II )からオーバ
フロー(0011)になったときに、オーバフローフラ
グFFかセットされて、割込み要求か発生する。
フロー(0011)になったときに、オーバフローフラ
グFFかセットされて、割込み要求か発生する。
なお、このマイコンr8048Jの他の詳細な説明につ
いては、インテルジャパン社発行の[マイクロコンピュ
ータ ユーザース・マニュアルNiC5’−48Jに委
ねる。
いては、インテルジャパン社発行の[マイクロコンピュ
ータ ユーザース・マニュアルNiC5’−48Jに委
ねる。
次に、このように構成した実施例のイ1:用について第
22図以1咋をも参照して説明する。
22図以1咋をも参照して説明する。
ます、第22図を参照して、このプリンタコン1−ロー
ル回路80が実行するプリンタ制御の概要を説明する。
ル回路80が実行するプリンタ制御の概要を説明する。
プリンタコントロール回路80は、電源投入によって、
リストア動作を行なった後、活字ホイール26のホイー
ル種別及びホーム位置を判別するホイール種別判別動作
をする。
リストア動作を行なった後、活字ホイール26のホイー
ル種別及びホーム位置を判別するホイール種別判別動作
をする。
その後、プリンタ・インタフェース回路87からのデー
タを受け取って、そのデータが印字文字データであれは
、セレクションモータ26を駆動して活字ホイール23
を回転駆動し、所要の活字を選択する動作(セレクショ
ン動作)をして、印字ハンマ25を駆動すると共に、イ
ンクリボンS8を送る印字動作をする。
タを受け取って、そのデータが印字文字データであれは
、セレクションモータ26を駆動して活字ホイール23
を回転駆動し、所要の活字を選択する動作(セレクショ
ン動作)をして、印字ハンマ25を駆動すると共に、イ
ンクリボンS8を送る印字動作をする。
また、データがキャリッジ移動層(スペース)データで
あJLば、スペースモータ28を駆動してキャリッジ2
8を所要の位置に移動し、データが改行(ラインフィー
ド)てあAしは、ラインフィードモータ12を113動
してプラテン11を回動する改行動作をする。
あJLば、スペースモータ28を駆動してキャリッジ2
8を所要の位置に移動し、データが改行(ラインフィー
ド)てあAしは、ラインフィードモータ12を113動
してプラテン11を回動する改行動作をする。
次に、第26図及び第24図を参照してホイール判別動
作について説明する。
作について説明する。
まず、各図に示す略称について説明すると、ステップ・
エラー・ステップSESは、活字ホイール23のボーム
位置の検索のために必要な位置信号PBか1個発生する
回転量を1ステツプどしたときのセレクションモータ2
6のステップ数であり、活字ホイール23の1回転に要
するステップ数にホーム位置識別用マーク45の幅に対
応するステップ数を加えたステップ数より多いステップ
数に設定している。
エラー・ステップSESは、活字ホイール23のボーム
位置の検索のために必要な位置信号PBか1個発生する
回転量を1ステツプどしたときのセレクションモータ2
6のステップ数であり、活字ホイール23の1回転に要
するステップ数にホーム位置識別用マーク45の幅に対
応するステップ数を加えたステップ数より多いステップ
数に設定している。
ステップ・ストップ・ステップSSSは、マーク45か
ら活字ホイール2ろを停止するまでのセレクションモー
タ26のステップ数であり、マーク45とマーク46と
の最大a′1容間隔よりも多いステップ数に設定してい
る。
ら活字ホイール2ろを停止するまでのセレクションモー
タ26のステップ数であり、マーク45とマーク46と
の最大a′1容間隔よりも多いステップ数に設定してい
る。
カラン1−イ直rnは、ボームパルスP I−1がホー
th4立置ハルスI)IIMか否かを判別するためのス
テップ数であり、マーク45に対応するボームパルスP
Hのパルス幅をステップ数M II 、マーク46に
対応するホームパルスP Hのパルス幅をステップ数M
D (MD<Mll)としたとき1M11≧川〉MDの
条件を満すように設定する。ここでは、■1−M fl
に設定している。
th4立置ハルスI)IIMか否かを判別するためのス
テップ数であり、マーク45に対応するボームパルスP
Hのパルス幅をステップ数M II 、マーク46に
対応するホームパルスP Hのパルス幅をステップ数M
D (MD<Mll)としたとき1M11≧川〉MDの
条件を満すように設定する。ここでは、■1−M fl
に設定している。
第23図及び第24図において、5TEP 1で、カウ
ンタCNTlにステップ・エラー・ステップSESをセ
ットし、5TIEP 2でカウンタCNT2及びカウン
タCNT3をリセッ1−する( ” O”にする)。
ンタCNTlにステップ・エラー・ステップSESをセ
ットし、5TIEP 2でカウンタCNT2及びカウン
タCNT3をリセッ1−する( ” O”にする)。
そして、5TEP 3〜5で、セレクションモータ26
の1ステツプの回転駆動を開始して、11動開始から所
定時間経過したか否かを判別し、所定時間経過したとき
にはセレクションエラーとしてエラー処理をし、所定時
間経過してぃなけ」しは1位置信号PB(パルス)が六
カされたが否かを判別する。
の1ステツプの回転駆動を開始して、11動開始から所
定時間経過したか否かを判別し、所定時間経過したとき
にはセレクションエラーとしてエラー処理をし、所定時
間経過してぃなけ」しは1位置信号PB(パルス)が六
カされたが否かを判別する。
そして、所定時間内にパルスが入力されたときには、S
1’EP6で、カウンタCNT1をデクリメント(−1
)L、て、S’l’IF、P7でホームパルスP Hが
入力されているか否かを判別する。
1’EP6で、カウンタCNT1をデクリメント(−1
)L、て、S’l’IF、P7でホームパルスP Hが
入力されているか否かを判別する。
この判別結果がボームパルスPH有りであれは、5TE
l]8でカウンタCNT2をインクリメント(+1)し
た後、5TEPIOに進み、ホームパルスP H無しで
あれは、S1’E139でカウンタcNT2をリセット
した後、5TEPILに進む。
l]8でカウンタCNT2をインクリメント(+1)し
た後、5TEPIOに進み、ホームパルスP H無しで
あれは、S1’E139でカウンタcNT2をリセット
した後、5TEPILに進む。
そして、5TEP 1. OでカウンタCNT2のカラ
ン1−値が予め定めたカウント値rn以上か否かを判別
し、カラン1へ値m以上であれば後述する5TIE11
12にジャンプしてホーム位置及びホイール種別判別動
作に入り、カウント値In以」二でなければ、S 1’
IE 1111でカウンタCNTlが0″か否か、す
なわちン占字ホイール2ろをステップ′・エラー・ステ
ップSES分回転したか否かをニックして、”o”であ
jしばエラー処理ルーチンに入り、0″てなけれは5T
EP 3に戻る。
ン1−値が予め定めたカウント値rn以上か否かを判別
し、カラン1へ値m以上であれば後述する5TIE11
12にジャンプしてホーム位置及びホイール種別判別動
作に入り、カウント値In以」二でなければ、S 1’
IE 1111でカウンタCNTlが0″か否か、す
なわちン占字ホイール2ろをステップ′・エラー・ステ
ップSES分回転したか否かをニックして、”o”であ
jしばエラー処理ルーチンに入り、0″てなけれは5T
EP 3に戻る。
すなわち1.ここでは、ボームパルスP Hのパルス幅
をカラン1−シて、そのボームパルスP l−1がマー
ク45に対応するホーt1位置パルスl) I−I M
か否かを判別する。
をカラン1−シて、そのボームパルスP l−1がマー
ク45に対応するホーt1位置パルスl) I−I M
か否かを判別する。
次に、 5TIEP ]、 OでカウンタCN T 2
のカラン1〜値がカラン1〜値m以上になっており、ホ
ーム位置パルス1) i−I Mを検知できたときには
、ST[iP 12てカウンタCNTlにステップ・ス
トップ・ステップSSSをセラ1−する。
のカラン1〜値がカラン1〜値m以上になっており、ホ
ーム位置パルス1) i−I Mを検知できたときには
、ST[iP 12てカウンタCNTlにステップ・ス
トップ・ステップSSSをセラ1−する。
その後、5TEP l 3−15 ”C,5TEP3−
5と同様の処理をしてセレクションモータ26を1ステ
ップ分回転させ、5TEP 16でカウンタCNTlを
デクリメン1−(−1)L、S1’EP ]、 7 ”
?l’ ホーム(l IJjj パルスP HMを検知
したときにセラ;・する( ” 1 ″にする)フラグ
FがF=0 が否がを判別する。
5と同様の処理をしてセレクションモータ26を1ステ
ップ分回転させ、5TEP 16でカウンタCNTlを
デクリメン1−(−1)L、S1’EP ]、 7 ”
?l’ ホーム(l IJjj パルスP HMを検知
したときにセラ;・する( ” 1 ″にする)フラグ
FがF=0 が否がを判別する。
この判別結果がF=Oでなければ、後述する訂EP21
L:シャンブし、F=oであれば、Si’lN” 18
でカウンタCNT3をインクリメンl−(+IJした後
、5TEP19でホームパルスPMが入力されているか
否かをチェックし、ホームパルスI” Mが無ければ5
TEP13に戻り、ボームパルスPMが有れはフラグF
をセットする( ” 1 ”にする〕。
L:シャンブし、F=oであれば、Si’lN” 18
でカウンタCNT3をインクリメンl−(+IJした後
、5TEP19でホームパルスPMが入力されているか
否かをチェックし、ホームパルスI” Mが無ければ5
TEP13に戻り、ボームパルスPMが有れはフラグF
をセットする( ” 1 ”にする〕。
そして、5TEP21でカウンタCNTlが0゛′にな
ったか否かをチェックして、” o ”でなけれは5T
EP13に戻って、次の1ステップ分の回転動作に入る
。
ったか否かをチェックして、” o ”でなけれは5T
EP13に戻って、次の1ステップ分の回転動作に入る
。
すなわち、ここでは、ホイール位1面パルスPHMを検
知した後、活字ホイール23を予め定めたステップ数I
I分回転したが否かを判別して、そのステップ数I1分
回転した時に、その位置を活字ホイール2乙のホーム位
置とする。
知した後、活字ホイール23を予め定めたステップ数I
I分回転したが否かを判別して、そのステップ数I1分
回転した時に、その位置を活字ホイール2乙のホーム位
置とする。
その後、5TEP22テ、カウンタCN T 3 (1
)カウント値を参照して、ホーム位置用マーク45とホ
イール種別用マーク46との間隔によって活字ホイール
26の種別を判別し、この判別結果に応じてスペースピ
ッチをセラ1へして処理を終了する。
)カウント値を参照して、ホーム位置用マーク45とホ
イール種別用マーク46との間隔によって活字ホイール
26の種別を判別し、この判別結果に応じてスペースピ
ッチをセラ1へして処理を終了する。
次に、第25図を参照して、印字動作及びキャリッジリ
ターンのタイミンクを説明する。
ターンのタイミンクを説明する。
まず、第25図の時点tiで、印字文字データに対応す
る活字を選択するために、マイコン82は同図(、イ)
に示す1駆動信号DRVSと、指令速度データVDC3
及び回転方向信号1) I RSとをセレクションサー
ボドライブ回路9日に出力して、活字ホイール26を所
定の方向に所定量目4υ上する。
る活字を選択するために、マイコン82は同図(、イ)
に示す1駆動信号DRVSと、指令速度データVDC3
及び回転方向信号1) I RSとをセレクションサー
ボドライブ回路9日に出力して、活字ホイール26を所
定の方向に所定量目4υ上する。
そして、活字選択が終了した時点t2から同図(ロ)に
示す所定のセレクション動作時間S■。
示す所定のセレクション動作時間S■。
Bが経過した時点t3で、マイコン82は同図(ハ)に
示すハンマドライブパルスDHを出力して印字ハンマ2
5の!駆動を開始すると共に、同図(トンに示すリボン
ドライブパルスDRを出力してインクリボン98の送り
を開始する。
示すハンマドライブパルスDHを出力して印字ハンマ2
5の!駆動を開始すると共に、同図(トンに示すリボン
ドライブパルスDRを出力してインクリボン98の送り
を開始する。
その後、マイコン81は、印字が終了した後の時点t4
で、同図(ホ)に示す駆動信号D RV Cと、指命速
度データVDAC及び回転方向信号DIRCをスペース
サーボドライブ回路91に出力して、キャリッジ21を
次の印字位置に移動する。
で、同図(ホ)に示す駆動信号D RV Cと、指命速
度データVDAC及び回転方向信号DIRCをスペース
サーボドライブ回路91に出力して、キャリッジ21を
次の印字位置に移動する。
一方、印字ハンマ25の1駆動を開始した時点【4から
同図(ニ)に示す所定のハンマビジィ時間HMBが経過
した時点t5で、マイコン82は前述と同様にして次の
印字活字を選択するセレクション動作を開始し、また、
所定の時点t6でリボンフィート終了する。
同図(ニ)に示す所定のハンマビジィ時間HMBが経過
した時点t5で、マイコン82は前述と同様にして次の
印字活字を選択するセレクション動作を開始し、また、
所定の時点t6でリボンフィート終了する。
そして、今回のセレクションが終了した時点[7でスペ
ースが終了していなければ、スペースが終了した時点t
8から同図(へ)に示す所定のスペースビジィ時間SP
Bが経過した時点t9でマイコン82は印字ハンマ25
の駆動を開始する。
ースが終了していなければ、スペースが終了した時点t
8から同図(へ)に示す所定のスペースビジィ時間SP
Bが経過した時点t9でマイコン82は印字ハンマ25
の駆動を開始する。
その後、例えば時点t 10で次のスペースがキャリッ
ジリターンであれば、マイコン81は、キャリッジ21
の移動を開始すると共に、同図(チフに示すラインフィ
ート1−ライブパルスDLの出力を開始して、改行する
。
ジリターンであれば、マイコン81は、キャリッジ21
の移動を開始すると共に、同図(チフに示すラインフィ
ート1−ライブパルスDLの出力を開始して、改行する
。
なお、リボンフィーlり]<ライブパルスD R及びラ
インフィードドライブパルスDLは、実VAには所定の
時間間隔で出力されるか、第25図では1兎動中を示す
ために連続的に示している。
インフィードドライブパルスDLは、実VAには所定の
時間間隔で出力されるか、第25図では1兎動中を示す
ために連続的に示している。
また、マイコン81は、スペース動作時にはキャリッジ
21の現在位置と目的位置との距離に応じてスペースモ
ータ28の速度を変化させる制御をする。
21の現在位置と目的位置との距離に応じてスペースモ
ータ28の速度を変化させる制御をする。
同様に、マイコン82は、セレクション動作時には活字
ホイール23の現在位置と目的位置との距離に応してセ
レクションモータ26の速度を変化させる制御をする。
ホイール23の現在位置と目的位置との距離に応してセ
レクションモータ26の速度を変化させる制御をする。
このように、プリンタコン(−ロール回路80のマイコ
ン81.82は各種の制御を行なう。
ン81.82は各種の制御を行なう。
この場合、マイコン81.82は、メインルーチンで、
第26図に示すように、内部タイマ(タイマ/カウンタ
)をスタートとして、データを読込み、そのデータに応
じた動作を開始する等の処理をする。
第26図に示すように、内部タイマ(タイマ/カウンタ
)をスタートとして、データを読込み、そのデータに応
じた動作を開始する等の処理をする。
また、マイコン81.82は、タイマ割込みルーチンで
、第27図に示すように、後述するタイマ割込み開始処
理をした後、ドライブ、ビジィ制御をして、後述するタ
イマ割込み終了処理をする。
、第27図に示すように、後述するタイマ割込み開始処
理をした後、ドライブ、ビジィ制御をして、後述するタ
イマ割込み終了処理をする。
その1〜ライブ、ビジィ制御処理では、タイマのオーバ
フロー回数をカウントして、所定の時間間隔で前述した
リボンフィートのためのドライブパルスD Rを出力し
、所定の時間間隔でラインフィートのためのドライブパ
ルスD Lを出力する(第25図参照)。
フロー回数をカウントして、所定の時間間隔で前述した
リボンフィートのためのドライブパルスD Rを出力し
、所定の時間間隔でラインフィートのためのドライブパ
ルスD Lを出力する(第25図参照)。
また、同様にして、セレクションドライブ時。
スペースドライブ時、ハンマドライブ時、リボン1ヘラ
イブ時、ラインフィー1くドライブ時に各ビジィ時間(
SLB、I−IMI3,5r)B)が経過したときにヒ
シイオフにする(第25図参照)。
イブ時、ラインフィー1くドライブ時に各ビジィ時間(
SLB、I−IMI3,5r)B)が経過したときにヒ
シイオフにする(第25図参照)。
さらに、同様にして、セレクションドライブ時。
スペースドライブ時に所定時間内に位置信号か入力され
ないどきに、セレクションエラー(第2乙図参照)、ス
ベーノ、工゛ノーとする。
ないどきに、セレクションエラー(第2乙図参照)、ス
ベーノ、工゛ノーとする。
また、マイコン81.82は、外部割込みルーチンで、
第28図に示すように、サーボモータのスピード(速度
)制御をする。この処理では、セレクションセンサ26
.スペースセンサ29からの位置信号PA、PBをカラ
ンl−して、所定カウント数になる毎に速度を変化させ
る。
第28図に示すように、サーボモータのスピード(速度
)制御をする。この処理では、セレクションセンサ26
.スペースセンサ29からの位置信号PA、PBをカラ
ンl−して、所定カウント数になる毎に速度を変化させ
る。
このように、マイコン81.82は、タイマ割込みで各
種のドライブ、ビジィ制御をし、外部割込みでサーボモ
ータの速度制御をする。
種のドライブ、ビジィ制御をし、外部割込みでサーボモ
ータの速度制御をする。
この場合、前述したように2例えはキャリッジリターン
制御とラインフィート制御、あるいはセレクション制御
とリボンフィート制御は競合することかある(第25図
参照)。つまり、スペースセンサ29.セレクションセ
ンサ26からの位置信号PA、I)Bによる外部割込み
処1!I! (モータの速度制御)とタイマ割込み処理
(1(ライブ、ビシ、子制御)とが競合することがある
。
制御とラインフィート制御、あるいはセレクション制御
とリボンフィート制御は競合することかある(第25図
参照)。つまり、スペースセンサ29.セレクションセ
ンサ26からの位置信号PA、I)Bによる外部割込み
処1!I! (モータの速度制御)とタイマ割込み処理
(1(ライブ、ビシ、子制御)とが競合することがある
。
ところが、マイコン81.82として使用しているr8
048Jは、前述したように、外部割込みとタイマ割込
みとが競合した場合9割込み要求が受付けらオシた方の
処理が終了するまで、他方の処理を開始できない。
048Jは、前述したように、外部割込みとタイマ割込
みとが競合した場合9割込み要求が受付けらオシた方の
処理が終了するまで、他方の処理を開始できない。
そのため、このままではタイマ割込みの時間間隔が間延
びしたり、外部割込み処理が遅れたすする。そこで、第
27図に示したタイマ割込み開始処理及びタイマ割込み
終了処理をする。
びしたり、外部割込み処理が遅れたすする。そこで、第
27図に示したタイマ割込み開始処理及びタイマ割込み
終了処理をする。
第29図は、このタイマ割込み開始処理及びタイマ割込
み終了処理を示すフロー図である。
み終了処理を示すフロー図である。
ます、タイマ割込み処理中の外部割込み処理を可能にす
る部分について説明すると、タイマ割込みルーチン(T
INT)を開始して、第27図に示すタイマ割込み開
始処理に入り、第30図及び第16図をも参照して、ア
キュームレータACCの値を、テ゛−タメモリ中のワー
キンクレジスタの5AVE3にスーヘアし、またRAM
ポインタレジスタRO,ltlの値を通常のRAM領域
のSAVEo、1にスーヘアする。
る部分について説明すると、タイマ割込みルーチン(T
INT)を開始して、第27図に示すタイマ割込み開
始処理に入り、第30図及び第16図をも参照して、ア
キュームレータACCの値を、テ゛−タメモリ中のワー
キンクレジスタの5AVE3にスーヘアし、またRAM
ポインタレジスタRO,ltlの値を通常のRAM領域
のSAVEo、1にスーヘアする。
これは、タイマ処理中でもバンクスイッチBS=0を使
用するため、メインルーチンでのアキュームレータAC
C,RAMポインタレジスタRO。
用するため、メインルーチンでのアキュームレータAC
C,RAMポインタレジスタRO。
R1の値を保護するためである。
そして、現在のスタックポインタS、、S2゜83で示
されるプログラムカウンタ・スタックのレジスタ(デー
タメモリ)にタイマ処理(1〜ライブ、ビジィ制御)の
開始アドレス(T JMI)O)をストアして、スタッ
クポインタをインクリメン1へ(→−1)した後、タイ
マ割込みを禁止して、RE 1” Rを実行する。
されるプログラムカウンタ・スタックのレジスタ(デー
タメモリ)にタイマ処理(1〜ライブ、ビジィ制御)の
開始アドレス(T JMI)O)をストアして、スタッ
クポインタをインクリメン1へ(→−1)した後、タイ
マ割込みを禁止して、RE 1” Rを実行する。
そ4しによって、プログラムカウンタ・スタックのPC
o−ps、、で示されるタイマ処理の開始ア1くレス(
T JMP O)にジャンプするので、タイマ処理であ
る1くライブ、とシイ制御が開始さ、bる。
o−ps、、で示されるタイマ処理の開始ア1くレス(
T JMP O)にジャンプするので、タイマ処理であ
る1くライブ、とシイ制御が開始さ、bる。
このとき、既にRE T R命令か実行されているので
、第20図に示す割込み進行中F I”かりセットされ
、外部割込みを受付けて処理することか可能になる。
、第20図に示す割込み進行中F I”かりセットされ
、外部割込みを受付けて処理することか可能になる。
そして、タイマ処理が終了した後、第27図のタイマ割
込み終了処理に入り、ます、外部割込みを禁止して、メ
インルーチンで使用していたアキュームレータACC,
RAMポインタレジスタRO2R1の値を5AVE3,
0.1から夫々ロードする。
込み終了処理に入り、ます、外部割込みを禁止して、メ
インルーチンで使用していたアキュームレータACC,
RAMポインタレジスタRO2R1の値を5AVE3,
0.1から夫々ロードする。
その後、外部割込み及びタイマ割込みを許可して、後述
するカウント値読出し、タイマ値セツI・の処理をした
後、RETR命令を実行する。
するカウント値読出し、タイマ値セツI・の処理をした
後、RETR命令を実行する。
そAしによって、タイマ割込み処理ルーチンから抜は出
てメインルーチンに戻る。
てメインルーチンに戻る。
次に、この処理を具体的に説明すると、ます、タイマ割
込み直前のプログラムカウンタ(PC8〜PC,、)、
ブロクラム・ステータス・ワード(PSW)のスタック
ポインタSl+s2+s3及びへンクスツチBSの状態
か、PCo−I)C,、=Xll、S、、S2.S3二
000.BS=Oであっ九000゜ この状態でタイマ割込みが発生すると、プログラムカウ
ンタpCo−PC++は(X+1))lになり、このと
きのブロクラム・ステータス・ワードPSWの上位4ピ
ッ1−及びブロクラムカウンタpco−PC,,は、第
19図に示すように、スタックポインタrooOJ (
データメモリの8番地。
込み直前のプログラムカウンタ(PC8〜PC,、)、
ブロクラム・ステータス・ワード(PSW)のスタック
ポインタSl+s2+s3及びへンクスツチBSの状態
か、PCo−I)C,、=Xll、S、、S2.S3二
000.BS=Oであっ九000゜ この状態でタイマ割込みが発生すると、プログラムカウ
ンタpCo−PC++は(X+1))lになり、このと
きのブロクラム・ステータス・ワードPSWの上位4ピ
ッ1−及びブロクラムカウンタpco−PC,,は、第
19図に示すように、スタックポインタrooOJ (
データメモリの8番地。
9番地)に格納され、スタックポインタは「001」に
インクリメンh(+1) さAしる。
インクリメンh(+1) さAしる。
そして、第2S図に示すタイマ割込みルーチン(T I
NT)を開始して、前述のようにアキュームレータAC
C及びRA MポインタレジスタRO,R1(7)値を
、5AVE3,0.1にスi−7する。
NT)を開始して、前述のようにアキュームレータAC
C及びRA MポインタレジスタRO,R1(7)値を
、5AVE3,0.1にスi−7する。
その後、現在のスタックポインタroot」て示さJし
るブロクラムカウンタ・スタックのレジスタ、すなわち
データメモリの10番地、11番地のブロクラムカウン
タPC,−PC目のストアエリアに、タイマ処理の開始
71ヘレス(T、J!vlI)0)をストアして、スタ
ックポインタをインクリメント(+1)すると、スタッ
クポインタは「002」を示す。
るブロクラムカウンタ・スタックのレジスタ、すなわち
データメモリの10番地、11番地のブロクラムカウン
タPC,−PC目のストアエリアに、タイマ処理の開始
71ヘレス(T、J!vlI)0)をストアして、スタ
ックポインタをインクリメント(+1)すると、スタッ
クポインタは「002」を示す。
そして、タイマ割込みを禁止して、 RET R命令を
実行すると、スタックポインタがro O2Jからro
oIJにテクリメン+−<−1)さJしる。
実行すると、スタックポインタがro O2Jからro
oIJにテクリメン+−<−1)さJしる。
したかつて1、プログラムカウンタI)Co−PSll
で示されるタイマ処理の開始アドレス(1゛JMP O
)にジャンプするので、タイマ割込み処理が開始され、
このとき、RE T R命令を実行しているので、外部
割込みを受付けて処理することが可能になる。
で示されるタイマ処理の開始アドレス(1゛JMP O
)にジャンプするので、タイマ割込み処理が開始され、
このとき、RE T R命令を実行しているので、外部
割込みを受付けて処理することが可能になる。
そして、タイマ処理が終了した後、外部割込みを禁止し
て、アキュームレータ、ACC,RΔMポインタレジス
タlで0.1<1の値をSΔV]E3,0゜1から夫々
口−トシ、外部割込み及びタイマ割込みをn′1可して
、カウント値読出し、タイマ幀セットの処理をした後、
RE T11命合を実行する。
て、アキュームレータ、ACC,RΔMポインタレジス
タlで0.1<1の値をSΔV]E3,0゜1から夫々
口−トシ、外部割込み及びタイマ割込みをn′1可して
、カウント値読出し、タイマ幀セットの処理をした後、
RE T11命合を実行する。
このRE T R命令の実行によって、スタックポイン
タはroOOJにデクリメント(−1)さAしるので、
メインルーチンにリターンする。
タはroOOJにデクリメント(−1)さAしるので、
メインルーチンにリターンする。
このようにして、タイマ割込みの処理中に外部割込みが
発生したときには、その外部割込みを受f」けて処理す
ることができる。
発生したときには、その外部割込みを受f」けて処理す
ることができる。
そして、上述のような処理をするために、タイマ割込み
開始時に20バイ1−2終了時に7パイ1へ要するたけ
であり、この期間のみ外部割込みか禁止されるだけであ
るので、外部割込み処理の遅:ALは殆んどないと考え
らAしる。
開始時に20バイ1−2終了時に7パイ1へ要するたけ
であり、この期間のみ外部割込みか禁止されるだけであ
るので、外部割込み処理の遅:ALは殆んどないと考え
らAしる。
次に、タイマ割込みの発生間1’l’?+を正確にする
部分の処理について説明する。
部分の処理について説明する。
まず、このプリンタでは、第13図に示すように、マイ
コン81.82のA L E端rからの信号を1771
分周した信号、ずなわ10μsecの外部クロックパル
スを端子’l’ 1に人力して、第21図に示すカウン
タに人力している。
コン81.82のA L E端rからの信号を1771
分周した信号、ずなわ10μsecの外部クロックパル
スを端子’l’ 1に人力して、第21図に示すカウン
タに人力している。
また、マイコン81.82のクリスタルとしてG MH
Zを使用するので、マイコンは1ステツプを2.5/Z
ST2Cて実行している。
Zを使用するので、マイコンは1ステツプを2.5/Z
ST2Cて実行している。
そして、前述したようにタイマ/カウンタ(以下「タイ
マ」と利;すンのカウンタ(第21図)は、第61図に
示すように、初期1+(−j X (OOn≦X≦F
F II )からクロックパルスか人力さ4しる毎にイ
ンクリメンI−(+1)され、r F F II J
から[0QIIJにオーバフローしたときに、タイマ割
込力が発生し1.カウンタはl’ OOII Jかも引
続きインクリメンl−(+1)される。
マ」と利;すンのカウンタ(第21図)は、第61図に
示すように、初期1+(−j X (OOn≦X≦F
F II )からクロックパルスか人力さ4しる毎にイ
ンクリメンI−(+1)され、r F F II J
から[0QIIJにオーバフローしたときに、タイマ割
込力が発生し1.カウンタはl’ OOII Jかも引
続きインクリメンl−(+1)される。
そこで、例えば1m5ec毎にタイマ割込みを発生させ
るとすると、 1 m5ec/ 10 μsec’= 100であるの
で、初期値Xは、 X=256+1−100=157 (9DII)となる
。
るとすると、 1 m5ec/ 10 μsec’= 100であるの
で、初期値Xは、 X=256+1−100=157 (9DII)となる
。
そこで、この初期値r 9 D II Jをプリセラj
・すると、第32図に示すように、roollJでタイ
マ割込みが発生し、前述したように7番地(ADD7)
からスタートシて、A番地で次のタイマ値をセラ1へす
ると、その時点では既に10μSQC経過しているので
、この時点でr 9 D II J をセラ1〜すると
、次のタイマ割込みは1 m5ecよIJ 10 It
sec長くなる。
・すると、第32図に示すように、roollJでタイ
マ割込みが発生し、前述したように7番地(ADD7)
からスタートシて、A番地で次のタイマ値をセラ1へす
ると、その時点では既に10μSQC経過しているので
、この時点でr 9 D II J をセラ1〜すると
、次のタイマ割込みは1 m5ecよIJ 10 It
sec長くなる。
したがって、2回目以降の初期値Xを。
9Dll+1=913It
とすれば、I m5ec毎にタイマ割込みを発生させる
ことかできる。
ことかできる。
しかしなから、外部割込み中はその処理が終るまでタイ
マ割込みの処理を開始Cきない。
マ割込みの処理を開始Cきない。
そのため、第66図に示すように、カウント値がroO
IIJになってタイマ割込みか発生したときに、外部割
込み中であれば、その外部割込み処理が終了したときに
、カラン1へ値かrzllJになっていたとすると、次
のタイマ割込み発生までの時間は。
IIJになってタイマ割込みか発生したときに、外部割
込み中であれば、その外部割込み処理が終了したときに
、カラン1へ値かrzllJになっていたとすると、次
のタイマ割込み発生までの時間は。
10μ5ecXx=lox/1sec
分1m5ecよりも長くなり、所定の時間間隔でドライ
ブパルスを出力する等の処理かできない。
ブパルスを出力する等の処理かできない。
そこで、第29図に示したように、タイマ割込み終了処
理で、ます、カウンタのカラン1−1直を9売出して、
そのときのカウント値に応した初期値(タイマ値)をタ
イマのカウンタにセットする処理をする。
理で、ます、カウンタのカラン1−1直を9売出して、
そのときのカウント値に応した初期値(タイマ値)をタ
イマのカウンタにセットする処理をする。
すなわち、前述の例で説明すると、第34図に示すよう
に、カウント値r x II Jで外部割込みが終了し
て、タイマ割込み処理を開始し、例えば4ステツプ(カ
ウント値でrol、IN)で必要な処理が終了し、カラ
ン1へ値の読出しに、カラン1−呟で「α11」(処理
時間/10μsec )要するとすると、 9 D IT + x II + I II十αHを初
期値としてセットする。
に、カウント値r x II Jで外部割込みが終了し
て、タイマ割込み処理を開始し、例えば4ステツプ(カ
ウント値でrol、IN)で必要な処理が終了し、カラ
ン1へ値の読出しに、カラン1−呟で「α11」(処理
時間/10μsec )要するとすると、 9 D IT + x II + I II十αHを初
期値としてセットする。
それによって、次のタイマ割込み発生までの時間が、r
9 D If + x II +I II + a
II J分短くなるので、前回の割込み発生からL +
n5ec経過したときに次のタイマ割込みが発生する。
9 D If + x II +I II + a
II J分短くなるので、前回の割込み発生からL +
n5ec経過したときに次のタイマ割込みが発生する。
したがって、正確な時間間隔でタイマ割込みを発生させ
ることができる。
ることができる。
第65図は、サーボモータの速度制御とドライブ(リボ
ン1ヘライブ)制御が競合した場合のマイコンの処理の
流れを示すフロー図及びサーボモータの速度変化の状態
を示すタイミングチャー1へ図である。
ン1ヘライブ)制御が競合した場合のマイコンの処理の
流れを示すフロー図及びサーボモータの速度変化の状態
を示すタイミングチャー1へ図である。
なお、この図は、1〜ライブパルスの出力が必要なタイ
マ割込みの発生時点及び速度変化が必要な外部割込みの
発生時点のみを示してあり、実際はこの間に前述したよ
うに1 m5ec毎にタイマ割込みか発生し、また位置
信号PA又はPBか入力さJしる毎に外部割込みか発生
する。
マ割込みの発生時点及び速度変化が必要な外部割込みの
発生時点のみを示してあり、実際はこの間に前述したよ
うに1 m5ec毎にタイマ割込みか発生し、また位置
信号PA又はPBか入力さJしる毎に外部割込みか発生
する。
こJしを簡単に説明すると、メイル−チンでサーボモー
タのドライブ(速度V3)を開9に L、た後、時点t
oで、タイマ割込みが発生してリボン1−ライフパルス
の発生処理をしているときに、その途中の時点1.で外
部割込みか発生すると、そのタイマ割込みを中断して外
部割込み処理を実行し、速度■2に減速する処理をした
後、中断していたタイマ割込み処理に戻り、このタイマ
割込み処理が終了するとメインルーチンにリターンする
。
タのドライブ(速度V3)を開9に L、た後、時点t
oで、タイマ割込みが発生してリボン1−ライフパルス
の発生処理をしているときに、その途中の時点1.で外
部割込みか発生すると、そのタイマ割込みを中断して外
部割込み処理を実行し、速度■2に減速する処理をした
後、中断していたタイマ割込み処理に戻り、このタイマ
割込み処理が終了するとメインルーチンにリターンする
。
以後、内部(タイマ)割込みと外部割込力か競合したと
きには、外部割込みを優先して実行し。
きには、外部割込みを優先して実行し。
内部割込みのみのときは、内部割込みを実行し、例えば
、時点[2では速度V、に減速処理し・、時点t、]で
ドライブパルスの出力処理を開始し、その途中の時点L
4てモータ停止処理をした後、再度ドライブパルス出力
処理に戻り1時点[5でモータの停止確認処理をし、時
点t6でドラ、イブパルスの出力処理をする。
、時点[2では速度V、に減速処理し・、時点t、]で
ドライブパルスの出力処理を開始し、その途中の時点L
4てモータ停止処理をした後、再度ドライブパルス出力
処理に戻り1時点[5でモータの停止確認処理をし、時
点t6でドラ、イブパルスの出力処理をする。
なお、モータの停止確認は、セレクションセンサ27等
からモータ停止時に出力さJしる位置(a号とは別の1
4号をチェックして行なう。
からモータ停止時に出力さJしる位置(a号とは別の1
4号をチェックして行なう。
このようにして、タイマ割込み処理中でも外部割込みを
骨細け、またタイマ割込みの発生間隔は前述したように
正確な時間間隔txで発生ずる。
骨細け、またタイマ割込みの発生間隔は前述したように
正確な時間間隔txで発生ずる。
このように、このプリンタの制御部を構成するマイコン
は、本来内部(タイマ)割込み処理をしているときには
外部割込みを受イ」けて処理できないにもかかわらず、
内部割込み処理でスタックポインタを操作し・ているの
で、内部割込み処理中でも外部割込を受イ」けて処理で
きる。
は、本来内部(タイマ)割込み処理をしているときには
外部割込みを受イ」けて処理できないにもかかわらず、
内部割込み処理でスタックポインタを操作し・ているの
で、内部割込み処理中でも外部割込を受イ」けて処理で
きる。
そAしによって、例えばサーホモータの速度制御が遅」
しるようなことがない。
しるようなことがない。
また、実施例のように、タイマ割込みを発生させるため
のカウンタの初期値を設定するときに、そのときのカラ
ン1−に基づいて初期値を設定することにより、外部割
込み処理中に内部割込み要求が発生しても、正確な時間
間隔で内部割込みを発生させることができる。
のカウンタの初期値を設定するときに、そのときのカラ
ン1−に基づいて初期値を設定することにより、外部割
込み処理中に内部割込み要求が発生しても、正確な時間
間隔で内部割込みを発生させることができる。
なお、上記実施例では、内部割込み処理中に外部割込み
処理を可能にした例について述べたが。
処理を可能にした例について述べたが。
同様にして例えば内部割込み処理中の内部割込み処理、
外部割込み処理中の内部割込み処理や外部割込み処理を
も可能にすることもできる。
外部割込み処理中の内部割込み処理や外部割込み処理を
も可能にすることもできる。
また、この発明を実施するマイコンも上記実施例のもの
に限るものではなく、例えば他のMC3−48フアミリ
ー(8748)、(8041)。
に限るものではなく、例えば他のMC3−48フアミリ
ー(8748)、(8041)。
(8744ン 、 (8021) 、 (8035)
。
。
<e、 039)にも実施でき、その他のマイコンにも
実施できる。
実施できる。
また、プリンタの活字ホイールとして、活字を外周と内
周に二重に形成したダブル活字ホイールを使用する場合
には、活字ホイールの外周と内周とのいずれかを選択す
るシフ1〜ドライブとセレクションドライブとが競合す
ることになるが、上述と同様にして、シフトドライブ制
御中でもセレクションモータの速度制御を行なうことが
できる。
周に二重に形成したダブル活字ホイールを使用する場合
には、活字ホイールの外周と内周とのいずれかを選択す
るシフ1〜ドライブとセレクションドライブとが競合す
ることになるが、上述と同様にして、シフトドライブ制
御中でもセレクションモータの速度制御を行なうことが
できる。
さらにまた、上記実施例では、この発明をプリンタの制
御部を構成するマイコンに実施した例について述べたが
、これに限るものではなく、複数の割込み制御が競合す
る制御をする制御部に使用するマイコンのすへてに実施
できる。
御部を構成するマイコンに実施した例について述べたが
、これに限るものではなく、複数の割込み制御が競合す
る制御をする制御部に使用するマイコンのすへてに実施
できる。
効果
以上説明したように、この発明によれば、−の割込み処
理を実行しているときに、他の割込み処理を実行するこ
とができないマイコンであっても、−の割込み処理中に
他の割込み処理ができるようになり、実質的な割込みレ
ベル数が増加する。
理を実行しているときに、他の割込み処理を実行するこ
とができないマイコンであっても、−の割込み処理中に
他の割込み処理ができるようになり、実質的な割込みレ
ベル数が増加する。
第1図は、従来のマイクロコンピュータにおける割込み
処理の説明に供するフロー図、 第2図及び第6図は、この発明を実施したプリンタの一
例を示す外観斜視図及びその外筐部の分解斜視図、 第4図は、同じくその印字機構部の一例を示す平面図、 第5図及び第6図は、第4図のカセツ1〜ホイールの一
例を示す正面図及びそのVl −Vl線に沿う断面図、 第7図は、第5図の活字ホイールの一例を示すず面図で
ある。、 第8図乃至第12図は、それぞれ第4図のキャリッジの
側面図、側断面図2分解斜1見図、要部拡大図及びカセ
ツ1へ交換時の状態を示す側面図、 第13図は、プリンタの制御部を示すブロック図、第1
4図乃至第21図は、それぞれ第13図のマイクロコン
ピュータの説明にU(するブロック構成図、プログラム
メモリマツプ図、データメモリマップ図、ブ′ログラム
カウンタのデータ構成図、プログラム・ステータス・ワ
ードのテ゛−タ構成図、プログラムカウンタ・スタック
の説明図2割込みロジックのブロック構成図及びタイマ
/カウンタのブロック構成図である。 第22図は、プリンタの動作の概要の説明に供するフロ
ー図、 第26図及び第24図は、第13図のマイクロコンピュ
ータが実行するホーム位14及びホイール種別判別動作
の一例を示すフロー図、第25図は、印字動作のタイミ
ングの一例を示すタイミングチャート図、 第26図、第27図及び第28図は、それぞれ第13図
のマイクロコンピュータのメインルーチン、タイマ割込
みルーチン及び外部割込みルーチンを示すフロー図、 第2S図は、第27図のタイマ割込み開始処理及びタイ
マ割込み終了処理の詳1l11を示すフロー図、 第30図は、第29図の説明に供するデータメモリマッ
プ図、 第31図乃至第34図は、それぞれタイマ値の設定処理
の説明に供するタイミングチャー1−図。 第65図は、第13図のマイクロコンピュータか実行す
る1−ライブ、ヒジイ処理及びモータの速度制御処理の
流れの一例を示すフロー図及びタイミングチャート図で
ある。 11・・プラテン 21・・キャリッジ22・・カセッ
トホイール 25・・・印字ハンマ 26・・・セレクションモータ
28・・・スペースモータ 80・・・プリンタコン1−ロールl路81、82・・
マイクロコンピュータ 出願人 株式会社 リ コ ー ミ訃45 I71 第 61ど′1 ■ 薫7図 第91゛・り 斧15図 アドレス 第16図 第22図 第23図 エラー処J’1
処理の説明に供するフロー図、 第2図及び第6図は、この発明を実施したプリンタの一
例を示す外観斜視図及びその外筐部の分解斜視図、 第4図は、同じくその印字機構部の一例を示す平面図、 第5図及び第6図は、第4図のカセツ1〜ホイールの一
例を示す正面図及びそのVl −Vl線に沿う断面図、 第7図は、第5図の活字ホイールの一例を示すず面図で
ある。、 第8図乃至第12図は、それぞれ第4図のキャリッジの
側面図、側断面図2分解斜1見図、要部拡大図及びカセ
ツ1へ交換時の状態を示す側面図、 第13図は、プリンタの制御部を示すブロック図、第1
4図乃至第21図は、それぞれ第13図のマイクロコン
ピュータの説明にU(するブロック構成図、プログラム
メモリマツプ図、データメモリマップ図、ブ′ログラム
カウンタのデータ構成図、プログラム・ステータス・ワ
ードのテ゛−タ構成図、プログラムカウンタ・スタック
の説明図2割込みロジックのブロック構成図及びタイマ
/カウンタのブロック構成図である。 第22図は、プリンタの動作の概要の説明に供するフロ
ー図、 第26図及び第24図は、第13図のマイクロコンピュ
ータが実行するホーム位14及びホイール種別判別動作
の一例を示すフロー図、第25図は、印字動作のタイミ
ングの一例を示すタイミングチャート図、 第26図、第27図及び第28図は、それぞれ第13図
のマイクロコンピュータのメインルーチン、タイマ割込
みルーチン及び外部割込みルーチンを示すフロー図、 第2S図は、第27図のタイマ割込み開始処理及びタイ
マ割込み終了処理の詳1l11を示すフロー図、 第30図は、第29図の説明に供するデータメモリマッ
プ図、 第31図乃至第34図は、それぞれタイマ値の設定処理
の説明に供するタイミングチャー1−図。 第65図は、第13図のマイクロコンピュータか実行す
る1−ライブ、ヒジイ処理及びモータの速度制御処理の
流れの一例を示すフロー図及びタイミングチャート図で
ある。 11・・プラテン 21・・キャリッジ22・・カセッ
トホイール 25・・・印字ハンマ 26・・・セレクションモータ
28・・・スペースモータ 80・・・プリンタコン1−ロールl路81、82・・
マイクロコンピュータ 出願人 株式会社 リ コ ー ミ訃45 I71 第 61ど′1 ■ 薫7図 第91゛・り 斧15図 アドレス 第16図 第22図 第23図 エラー処J’1
Claims (1)
- 【特許請求の範囲】 1−の割込み要求を受付けた後は、他の割込み要求を前
記受付けた割込み要求の処理が終了するまで受付けない
ようにしたマイクロコンピュータにおいて、割込み要求
を受(jlけたときに、現在のスタックポインタで決定
されるプログラムカウンタスタックに割込み開始アドレ
スをストアして、前記スタックポインタをインクリメン
トし、新たな同一の割込み要求を禁止した後、リターン
命令を実行させると共に、前記受付けた割込み処理終了
時に割込み禁止を解除してリターン命令を実行させるこ
とを特徴とするマイクロコンピュータにおける割込み処
理方法。 2 前記−の割込み要求による処理がタイマ割込み処理
で、前記他の割込み要求による処理がプリンタのモータ
の速度制御処理である特許請求の範囲第1項記載のマイ
クロコンピュータにおける割込み処理方法。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP58201058A JPS6095634A (ja) | 1983-10-28 | 1983-10-28 | マイクロコンピユ−タにおける割込み処理方法 |
| DE19843439560 DE3439560A1 (de) | 1983-10-28 | 1984-10-29 | Unterbrechungsverarbeitungsverfahren mit einem mikrocomputer |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP58201058A JPS6095634A (ja) | 1983-10-28 | 1983-10-28 | マイクロコンピユ−タにおける割込み処理方法 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPS6095634A true JPS6095634A (ja) | 1985-05-29 |
Family
ID=16434687
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP58201058A Pending JPS6095634A (ja) | 1983-10-28 | 1983-10-28 | マイクロコンピユ−タにおける割込み処理方法 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS6095634A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH02191020A (ja) * | 1989-01-20 | 1990-07-26 | Pfu Ltd | 印字タイミング割込み処理方式 |
Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS6027032A (ja) * | 1983-07-25 | 1985-02-12 | Matsushita Electric Ind Co Ltd | プログラム起動方法 |
-
1983
- 1983-10-28 JP JP58201058A patent/JPS6095634A/ja active Pending
Patent Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS6027032A (ja) * | 1983-07-25 | 1985-02-12 | Matsushita Electric Ind Co Ltd | プログラム起動方法 |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH02191020A (ja) * | 1989-01-20 | 1990-07-26 | Pfu Ltd | 印字タイミング割込み処理方式 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US7034496B2 (en) | Pointing position correcting method, pointing position correcting apparatus, and pointing apparatus | |
| JPS6095635A (ja) | マイクロコンピユ−タにおけるタイマ割込み処理方法 | |
| JPH041704B2 (ja) | ||
| JPH082649B2 (ja) | インクジエツトプリンタ | |
| US4872773A (en) | Printing wheel discriminating apparatus | |
| JP2598555B2 (ja) | シリアルプリンタ | |
| JPS58148684A (ja) | モ−タの停止制御装置 | |
| JP3232166B2 (ja) | スプール停止位置制御装置 | |
| JP2528210Y2 (ja) | 運行記録装置 | |
| JPS59145170A (ja) | 印字装置 | |
| KR0121176B1 (ko) | 레이저 프린터의 엔진 상태 점검 방법 | |
| JPS61177262A (ja) | 印字ホイ−ルを備えた印字装置のホ−ムポジシヨン検出装置 | |
| JP2593518Y2 (ja) | 料金メータ | |
| JPH0784A (ja) | 釣糸巻取装置 | |
| JPS59179351A (ja) | プリンタ | |
| JPH04281396A (ja) | ステッピングモータの制御装置 | |
| JPS63251258A (ja) | プリンタ | |
| JPH07270193A (ja) | 計器の指針駆動装置 | |
| JPS5850875B2 (ja) | シリアルプリンタのパルスモ−タ駆動方法 | |
| JPS6148360B2 (ja) | ||
| JPS62187073A (ja) | 印字装置 | |
| JPH0372474B2 (ja) | ||
| JPH027092B2 (ja) | ||
| JPS6250778A (ja) | トナ−モ−タ制御装置 | |
| JPH02133085A (ja) | トナーの残量検知装置 |