JPS5841242A - Electronic engine control system for motorcar - Google Patents

Electronic engine control system for motorcar

Info

Publication number
JPS5841242A
JPS5841242A JP13843681A JP13843681A JPS5841242A JP S5841242 A JPS5841242 A JP S5841242A JP 13843681 A JP13843681 A JP 13843681A JP 13843681 A JP13843681 A JP 13843681A JP S5841242 A JPS5841242 A JP S5841242A
Authority
JP
Japan
Prior art keywords
task
engine
control
execution
flag
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
Application number
JP13843681A
Other languages
Japanese (ja)
Inventor
Osamu Abe
阿部 攻
Yasunori Mori
毛利 康典
Akira Teragakinai
寺垣内 昭
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP13843681A priority Critical patent/JPS5841242A/en
Publication of JPS5841242A publication Critical patent/JPS5841242A/en
Pending legal-status Critical Current

Links

Classifications

    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D41/00Electrical control of supply of combustible mixture or its constituents
    • F02D41/24Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means
    • F02D41/26Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means using computer, e.g. microprocessor
    • F02D41/28Interface circuits

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Chemical & Material Sciences (AREA)
  • Combustion & Propulsion (AREA)
  • Mechanical Engineering (AREA)
  • General Engineering & Computer Science (AREA)
  • Control Of Vehicle Engines Or Engines For Specific Uses (AREA)
  • Electrical Control Of Air Or Fuel Supplied To Internal-Combustion Engine (AREA)
  • Combined Controls Of Internal Combustion Engines (AREA)

Abstract

PURPOSE:To enable to select the engine control suitable to respective specifications automatically by a method wherein a conventional control unit, controlling in general purpose manner the ignition timing, fuel supply or the like of the engine, is provided with a detecting system detecting the specifications of the engine and the kind of car. CONSTITUTION:The detecting signals of an O2 sensor, provided in an exhaust pipe 10, a suction air volume sensor 24, a water temperature sensor 56 and a crank angle sensor are inputted into a control circuit 64 while these signals are operated and processed to control synthetically an injector 12, an ignition coil 58 or the like. Here, the control circuit 64 is connected with a car speed sensor 44 provided in a change gear 60, an automatic mission switch 46 and a manual mission switch 48 while the specification detecting signal is inputted in accordance with the specification of the mission from either one of the switches 46, 48 and the control as well as the data suitable for respective specifications are selected automatically in accordance with the specification detecting signal.

Description

【発明の詳細な説明】 本発明はエンジン制御装置、さらに具体的にはマイクロ
コンピュータを使用した自動車のエンジン制御装置に係
シ、特に異なる特性の複数のエンジンの全ての特性を備
えた1個のコントロールユニットを信号入力端子によっ
て当該エンジンの特性を判別して制御する電子式ニンジ
ン制御装置に関する。
DETAILED DESCRIPTION OF THE INVENTION The present invention relates to an engine control device, and more specifically to an automobile engine control device using a microcomputer. The present invention relates to an electronic carrot control device that controls a control unit by determining characteristics of the engine using a signal input terminal.

最近ではエンジンの制御機能を向上させる目的でマイク
ロコンピュータを使用したエンジンの総合的制御が行な
われつつある。
Recently, comprehensive control of engines using microcomputers is being carried out in order to improve engine control functions.

一方、自動車の車種および用途に応じてエンジンに必t
[々制御機能は様々であシ、それゆえマイクロコンピュ
ータを使用したエンジン制御システムではエンジン制御
装置を操作するソフトウェアとして車種および用途に応
じて汎用性ある、すなわち各種の制御機能の修正、変更
および追加が可能であるものがコスト面あるいは制御性
の向上といった観点から要請される。
On the other hand, depending on the vehicle type and application, the engine
[There are various control functions, so in an engine control system using a microcomputer, the software that operates the engine control device is versatile depending on the vehicle type and application.In other words, various control functions can be modified, changed, and added. There is a need for something that can do this from the viewpoint of cost or improved controllability.

周知の如く、自動車のトランスミッションにはマニアル
ミッションCM/T)とオートマチックミッション(λ
/T)の2種がある。この区別は、高給車、低給車とい
った車種のグレードによって区別されておシ、従来、コ
ントロールユニットに2種類の制御系統を内蔵させてい
た。このコントロールユニットトトランスミッションと
の接続ハ、コントロールユニットに設けられた1個の端
子と行い、マニアルミッションが、オートマチックミツ
ションかの圧別を切換スイッチを用いてコントロールユ
ニット内部で行っていた。ところが、このようにコント
ロールユニット側で切換えると、コントロールユニット
に接続された端子が、オートマチックミッションである
のに1マニアルミツシヨン用の端子に接続し、あるいは
、マニアルミッションであるのに、オートマチックミッ
ション用の端子に接続するといったことが実際に起きて
いる。このオートマチックミッションは3段ミッション
であシ、マニアルミッションは4段である。
As is well known, automobile transmissions include manual transmission (CM/T) and automatic transmission (λ
There are two types: /T). This distinction is based on the grade of the vehicle, such as high-paying cars and low-paying cars. Conventionally, two types of control systems were built into the control unit. The connection between the control unit and the transmission was made through a single terminal provided on the control unit, and a changeover switch was used to separate the manual transmission from the automatic transmission inside the control unit. However, when switching on the control unit side in this way, the terminal connected to the control unit is connected to the terminal for 1 manual transmission even though it is an automatic transmission, or it is connected to the terminal for 1 manual transmission even though it is a manual transmission. Connecting to the terminal actually occurs. This automatic transmission is a 3-speed transmission, and the manual transmission is a 4-speed transmission.

シタがって、オートマチックミッションとマニアルミッ
ションとを間遠いて接続すると、同じ40K m / 
hのときオートマチックミッションのときは燃料を多く
出しており、マニアルミッションのときは少なく出すよ
うに構成されている。したがって、供給燃料量が異なる
ため、排気ガスの で要求性能よシ多く燃料が供給され
ることになシCO濃度が高くなる。また、オートマチッ
クミッションな゛マニアルミッションに間違えると加速
感が悪くな夛、余計アクセルを踏む結果となり、COス
パイクとハイドロカーボンの濃度が変ってくる。
If you turn around and connect the automatic transmission and manual transmission far apart, the same 40Km/
At h, the system is configured so that more fuel is produced when the automatic transmission is used, and less fuel is produced when the manual transmission is used. Therefore, since the amount of fuel supplied is different, more fuel is supplied than the required performance of the exhaust gas, and the CO concentration increases. Also, if you mistake the automatic transmission for the manual transmission, the feeling of acceleration will be poor and you will have to step on the accelerator more, which will change the concentration of CO spikes and hydrocarbons.

また、オートマチックミッション用の制御マツプとマニ
アルミッション用の制御マツプとをもっておシ、オート
マチックミッション用とマニアルミッション用とは゛制
御内容が異なるため、この両者を接続間違いすると例え
ば、回転数200゜rpmで走る場合、加速して50度
に進角が変化〜するマニアルミッション車に対し、オー
トマチックミッション車の場合42〜43度と低く進角
度が抑えられている。すなわち、マニアルミッション車
の接続をオートマチックミッション車用に間違えると加
速性が悪くなってしまう。
Also, if you have a control map for automatic transmission and a control map for manual transmission, the control contents are different for automatic transmission and manual transmission, so if you connect the two incorrectly, for example, the engine will run at a rotation speed of 200° rpm. In the case of a manual transmission car, the advance angle changes to 50 degrees when accelerating, whereas in the case of an automatic transmission vehicle, the advance angle is kept low at 42 to 43 degrees. In other words, if a manual transmission vehicle is incorrectly connected to an automatic transmission vehicle, acceleration performance will deteriorate.

本発明の目的は、オートマチックミッションとマニアル
ミッションの接続間違いを生じることのない自動車用電
子式エンジン制御装置を提供することにあ、る。
SUMMARY OF THE INVENTION An object of the present invention is to provide an electronic engine control device for an automobile that does not cause connection errors between an automatic transmission and a manual transmission.

不発tmFi、工ンジンコントロールユモットニ二/ジ
ン特性に対応した複数の入力端子を設け、該入力端子に
車種別に接続し、該コントロールユニット自体に入力信
号によって車種の選別を行わせることKよりオートマチ
ックミッションとマニアルミッションの接続間違いを無
くそうというものである。
It is automatic than K by providing multiple input terminals corresponding to the misfire tmFi and engine control unit characteristics, and connecting each input terminal to each vehicle type, and having the control unit itself select the vehicle type based on the input signal. The aim is to eliminate mistakes in connecting missions and manual missions.

以下、本発明の実施例について説明する。Examples of the present invention will be described below.

第1図にはエンジン系統全体の制御装置が示されている
。図において、吸入空気はエアクリーナ2、スロットル
チャンバ4、吸気管6を通シ、シリンダ8へ供給される
。シリンダ8で燃焼したガスは、シリンダ8から排気管
10を通り、大気中へ排出される。
FIG. 1 shows a control device for the entire engine system. In the figure, intake air is supplied to a cylinder 8 through an air cleaner 2, a throttle chamber 4, and an intake pipe 6. The gas burned in the cylinder 8 passes through the exhaust pipe 10 from the cylinder 8 and is discharged into the atmosphere.

スロットルチャンバ4には、燃料を噴射するだめのイン
ジェクタ12が設けられており、このインジェクタ12
から噴出した燃料はスロットルチャンバ4の空気通路内
で霧化され、吸入空気と混合して混合気を形成し、この
混合気は吸気管6を通って、吸気弁20の開弁によシ、
シリンダ8の燃焼室へ供給される。
The throttle chamber 4 is provided with an injector 12 for injecting fuel.
The fuel ejected from the throttle chamber 4 is atomized in the air passage of the throttle chamber 4 and mixed with intake air to form a mixture, and this mixture passes through the intake pipe 6 and is opened by opening the intake valve 20.
It is supplied to the combustion chamber of cylinder 8.

インジェクタ12の出口近傍には絞シ弁14゜16が設
けられている。絞°り弁14は、アクセルペダルと機械
的に連通ずるように構成され、運転者により駆動される
。一方、絞シ弁16はダイヤフラム18により駆動され
るように配置され、空気流量が小の領域で全閉状態とな
シ、空気流量が増大するにつれてダイヤフラム18への
負圧が増大することによシ絞シ弁16は開き始め、吸入
抵抗の増大を抑止する。
Throttle valves 14 and 16 are provided near the outlet of the injector 12. The throttle valve 14 is configured to be in mechanical communication with the accelerator pedal and is driven by the driver. On the other hand, the throttle valve 16 is arranged to be driven by the diaphragm 18, and is not fully closed when the air flow rate is small.As the air flow rate increases, the negative pressure on the diaphragm 18 increases. The throttle valve 16 begins to open, suppressing an increase in suction resistance.

スロットルチャンバ4の絞1’14,16の上流には空
気通路22が設けられ、この空気通路22には熱式空気
流量計を構成する電気的発熱体24が配設され、空気流
速と発熱体の伝熱量との関係から定まる空気流速に応じ
て変化する電気信号が取シ出される1発熱体24d空気
通路22内に設けられているので、シリンダ80バック
7アイア時に生じる高温ガスから保護されると共に、吸
入空気中のごみなどによって汚染されることからも保■
される。この空気通路22の出口はベンチュリO最狭部
近傍に開口され、その入口はペンチエリの上流11Il
に開口されている。
An air passage 22 is provided upstream of the throttles 1' 14 and 16 of the throttle chamber 4, and an electric heating element 24 constituting a thermal air flow meter is disposed in this air passage 22, and the air flow rate and the heating element are An electrical signal that changes according to the air flow rate determined from the relationship with the amount of heat transfer is taken out.Since it is provided in the air passage 22 of the heating element 24d, it is protected from the high-temperature gas generated when the cylinder 80 backs up. At the same time, it is also protected from being contaminated by dust in the inhaled air.
be done. The outlet of this air passage 22 is opened near the narrowest part of the venturi O, and the inlet is located upstream of the venturi O.
It is opened to

インジェクタ12に供給される燃料は、燃料りンク30
かう、フューエルポンプ32、フューエルダンパ34及
びフィルタ36を介して燃圧レギュレータ38へ供給さ
れる。一方、燃圧レギュレータ38からはインジェクタ
12ヘパイブ40を介して加圧燃料が供給され、そのイ
ンジェクタ12から燃料が噴射される吸気管6の圧力と
上記インジェクタ12への燃量圧の差が常に一定になる
ように、燃圧レギュレータ38から燃料タンク30ヘリ
ターンパイプ42を介して燃料が戻されるようになって
る。
The fuel supplied to the injector 12 is supplied to the fuel link 30
The fuel is then supplied to a fuel pressure regulator 38 via a fuel pump 32, a fuel damper 34, and a filter 36. On the other hand, pressurized fuel is supplied from the fuel pressure regulator 38 to the injector 12 via a pipe 40, and the difference between the pressure in the intake pipe 6 through which fuel is injected from the injector 12 and the fuel amount pressure to the injector 12 is always constant. As such, fuel is returned from the fuel pressure regulator 38 to the fuel tank 30 via the return pipe 42.

吸気弁20から吸入された混合気はピストン50によシ
圧縮され、点火プラグ52よるスパークによシ燃焼し、
この燃焼は運動エネルギに変換される。シリンダ8は冷
却水54によシ冷却され、この冷却水の温度は水温セン
サ56により計測され、この計測値はエンジン温度とし
て利用される。
The air-fuel mixture taken in from the intake valve 20 is compressed by the piston 50, and combusted by the spark from the ignition plug 52.
This combustion is converted into kinetic energy. The cylinder 8 is cooled by cooling water 54, and the temperature of this cooling water is measured by a water temperature sensor 56, and this measured value is used as the engine temperature.

点火プラグ5zには点火コイル58よシ点火タイミング
に合わせて高電圧が供給される。
A high voltage is supplied to the ignition plug 5z in accordance with the ignition timing of the ignition coil 58.

また、クランク軸28には図示されていないエンジンの
回転に応じて基準クランク角毎におよび一定角度(例え
ば0.5度)毎に基準角信号およびポジション信号を出
すクランク角センナが設けられている。
Further, the crankshaft 28 is provided with a crank angle sensor (not shown) that outputs a reference angle signal and a position signal at each reference crank angle and at each fixed angle (for example, 0.5 degrees) in accordance with the rotation of the engine. .

このクランク角センナの出力、水温センサ56の出力5
6A及び発熱体24からの電気信号はマイクロコンピュ
ータなどからなる制御回路64に入力され、制御回路6
4で演算処理され、この制御回路64の出力によってイ
ンジェクタ12及び点火コイル58が駆動される。
Output of this crank angle sensor, output 5 of water temperature sensor 56
6A and the electric signals from the heating element 24 are input to a control circuit 64 consisting of a microcomputer, etc.
4, and the injector 12 and ignition coil 58 are driven by the output of the control circuit 64.

また、シリンダ8内のピストン50に連動しているクラ
ンク軸28には、変速機60において、プロペラシャフ
ト61と連結されている。この変速機60内には、車速
センサ44と、オートマチックミッションスイッチ46
と、マニアルミッションスイッチ48とが設けられてい
る。この車速センサ44は、車速をクランク軸28に連
結されるプロペラシャフト61よシ計測するものであシ
、オートマチックミッションスイッチ46とマニアルミ
ッションスイッチ48とは、それぞれオートマチックミ
ッション車のときは、オートマチックミッションスイッ
チ46から信号が出力され、マニアルミッション車のと
きは、マニアルミッションスイッチ48から信号が出力
されるものである。
Further, the crankshaft 28 that is interlocked with the piston 50 in the cylinder 8 is connected to a propeller shaft 61 in the transmission 60 . This transmission 60 includes a vehicle speed sensor 44 and an automatic mission switch 46.
and a manual mission switch 48 are provided. This vehicle speed sensor 44 measures the vehicle speed from the propeller shaft 61 connected to the crankshaft 28.The automatic mission switch 46 and the manual mission switch 48 are respectively the automatic mission switch in the case of an automatic transmission vehicle. A signal is output from the manual transmission switch 46, and when the vehicle is a manual transmission vehicle, a signal is output from the manual transmission switch 48.

これら、車速センサ44と、オートマチックミッション
スイッチ46と、マニアルミッションスイッチ48とは
、制御回路64に入力されている。
These vehicle speed sensor 44 , automatic mission switch 46 , and manual mission switch 48 are input to a control circuit 64 .

以上の構成に基づき制御されるエンジン系統において、
スロットルチャンバ4にはスロットルの絞シ弁16を跨
いで吸気管6に連通するバイパス26が設けられ、この
バイパス26には開閉制御されるバイパスパルプ62が
設けられている。このバイパスパルプ62の駆動部には
、前記制御回路64の制御入力が供給され、開閉制御さ
れるようになっている。
In the engine system controlled based on the above configuration,
The throttle chamber 4 is provided with a bypass 26 that communicates with the intake pipe 6 across the throttle valve 16, and this bypass 26 is provided with a bypass pulp 62 that is controlled to open and close. A control input from the control circuit 64 is supplied to the driving section of the bypass pulp 62, so that the opening and closing of the bypass pulp 62 is controlled.

このバイパスパルプ62は絞シ弁16を迂回して設けら
れたバイパス26に臨ませられ、パルス電流によって開
閉制御がなされる。このバイパスパルプ62は弁のリフ
ト量によシバイパス26の断面積を変更するもので、こ
のリフト量は制御回路64の出力によって駆動系が駆動
され制御される。即ち、制御回路64においては駆動系
の制御のため開閉周期信号が発生され、駆動系はこの開
閉周期信号によってバイパスパルプ64のリフト量を調
節するための制御信号をバイパスパルプ62の駆動部に
付与するものである。
This bypass pulp 62 is made to face a bypass 26 provided by bypassing the throttle valve 16, and its opening and closing are controlled by a pulse current. This bypass pulp 62 changes the cross-sectional area of the bypass 26 according to the lift amount of the valve, and this lift amount is controlled by driving the drive system by the output of the control circuit 64. That is, the control circuit 64 generates an opening/closing cycle signal to control the drive system, and the drive system applies a control signal to the drive section of the bypass pulp 62 to adjust the lift amount of the bypass pulp 64 based on the opening/closing cycle signal. It is something to do.

第2図、第1図の点火装置の説明図であり、増幅器68
を介してパワー・トラノンスタフ2ヘパルス醒流が供給
され、この電流によりトランジスタ72はONする。こ
れによりバッテリ66より点火コイル68へ一次コイル
成流が流れる。このパルス電流の立ち下がりでトランジ
スタ74は遮断状態となり、点火コイル58の2次コイ
ルに高電圧を発生する。
FIG. 2 is an explanatory diagram of the ignition device of FIG. 1, and an amplifier 68
A pulse current is supplied to the power transponder 2 through the transistor 72, and the transistor 72 is turned on by this current. This causes a primary coil current to flow from the battery 66 to the ignition coil 68 . The fall of this pulse current turns the transistor 74 into a cut-off state, and generates a high voltage in the secondary coil of the ignition coil 58.

この高電圧は配電器70を介してエンジンの各シリンダ
にある点火プラグ52のそれぞれにエンジン回転に同期
して高電圧を配電する。
This high voltage is distributed via the power distributor 70 to each of the spark plugs 52 in each cylinder of the engine in synchronization with the engine rotation.

第3図は排気ガスm流(以下EGRと記す)システムを
説明するためのもので、負圧源80の一定負圧が制圧弁
84を介して制御弁86へ加えている。制圧弁84はト
ランジスタ90に加えられ繰返しパルスのONデユーテ
ィ比率に応じ、負圧源の一定負圧を大気88へ開放に対
する比率を制御し、制御弁86への負圧の印加状態を制
御する。
FIG. 3 is for explaining an exhaust gas flow (hereinafter referred to as EGR) system, in which constant negative pressure from a negative pressure source 80 is applied to a control valve 86 via a pressure control valve 84. The pressure control valve 84 is applied to the transistor 90 and controls the ratio of the constant negative pressure of the negative pressure source to the atmosphere 88 in accordance with the ON duty ratio of the repetitive pulse, thereby controlling the application state of the negative pressure to the control valve 86.

従って制御弁86へ加えられる負圧はトランジスタ90
のONデユーティ比率で定まる。この定圧弁84の制御
負圧により排気管10から吸気管6へのEGR,量が制
御される。
Therefore, the negative pressure applied to control valve 86 is
It is determined by the ON duty ratio of The controlled negative pressure of the constant pressure valve 84 controls the amount of EGR from the exhaust pipe 10 to the intake pipe 6.

第4図は制御システムの全体構成図である。FIG. 4 is an overall configuration diagram of the control system.

CPUI O2とリード・オンリ・メモリ104(以下
ROMと記す)とランダム・アクセス・メモIJ 10
6 (以下RAMと記す)と入出力回路108とから構
成されている。上記CPU102はFtOM104内に
記憶された各種のプログラムによシ、入出力回路108
からの入力データを演算し、その演算結果を再び入出力
回路108へ戻す。これらの演算に必要な中間的な記憶
はf’LAM106を使用する。CPU102.fLO
M104゜ftOMx 06、入出力回路108間の各
種データのやり取シはデータ・バスとコントロール・バ
スとアドレス・バスからなるパスライン110によって
行なわれる。
CPUI O2, read-only memory 104 (hereinafter referred to as ROM), and random access memory IJ 10
6 (hereinafter referred to as RAM) and an input/output circuit 108. The CPU 102 operates according to various programs stored in the FtOM 104, and the input/output circuit 108
It calculates the input data from and returns the calculation result to the input/output circuit 108 again. The intermediate storage required for these operations uses f'LAM 106. CPU102. fLO
Exchange of various data between the M104°ftOMx 06 and the input/output circuit 108 is performed by a path line 110 consisting of a data bus, a control bus, and an address bus.

入出力回路108には第1のアナログ・ディジタル・コ
ンバータ(以下ADC1と記す)と第2のアナログ・デ
ィジタル・コンバータ(以下ADC2と記す)と角度信
号処理回路126と1ビツト情報を入出力する為のディ
スクリート入出力回路(以下DIOと記す)との入力手
段を持つ。
The input/output circuit 108 has a first analog-to-digital converter (hereinafter referred to as ADC1), a second analog-to-digital converter (hereinafter referred to as ADC2), and an angle signal processing circuit 126 for inputting and outputting 1-bit information. It has an input means for a discrete input/output circuit (hereinafter referred to as DIO).

ADClにはバッテリ電圧検出センサ132(以下VH
8と記す)と冷却水温センサ56(以下TWSと記す)
と大気温七ンサ112(以下TASと記す)と調整電圧
発生器114(以下VI’LSと記す)とスロットル角
七ンサ116(以下θTH8と記す)とλセンサ118
(以下λS、!:記f)とマニアルミッションスイッチ
48(以下M/Tと興す)とオートマチックミッション
スイッチ46(以下A/Tと記す)との出力がマルチ・
プレクサ120(以下MPXと記す)に加えられ、MP
X120によシこの内の1つを選択してアナログ・ディ
ジタル・変換回路122(以下ADCと記す)へ入力す
る。ADC122の出力であるディジタル値はレジスタ
124(以下KEGと記す)に保持される。
ADCl has a battery voltage detection sensor 132 (hereinafter VH
8) and cooling water temperature sensor 56 (hereinafter referred to as TWS)
, an atmospheric temperature sensor 112 (hereinafter referred to as TAS), an adjustment voltage generator 114 (hereinafter referred to as VI'LS), a throttle angle sensor 116 (hereinafter referred to as θTH8), and a λ sensor 118.
(hereinafter referred to as λS, !: f), the output of the manual mission switch 48 (hereinafter referred to as M/T) and the automatic mission switch 46 (hereinafter referred to as A/T) is
It is added to the plexer 120 (hereinafter referred to as MPX), and
One of these is selected by the X120 and inputted to an analog-to-digital conversion circuit 122 (hereinafter referred to as ADC). The digital value that is the output of the ADC 122 is held in a register 124 (hereinafter referred to as KEG).

また流量センサ24(以下AFSと記す)はADC2へ
入力され、アナログ・ディジタル・変換回路128(以
下AI)Cと記す)を介してディジタル変換されレジス
タ130(以下ルEGと記す)へセットされる。
In addition, the flow rate sensor 24 (hereinafter referred to as AFS) is input to the ADC 2, is digitally converted via an analog-to-digital conversion circuit 128 (hereinafter referred to as AI)C, and is set in a register 130 (hereinafter referred to as EG). .

角度上ンサ146(以下ANGSと記す)からは基準ク
ランク角例えば180度クランク角を示す信号(以下R
EFと記す)と微少角例えば1度クランク角を示す信号
(以下PO8と記す)とが出力され、角度信号処理回路
126へ加えられ、ここで波形整形される。
An angle sensor 146 (hereinafter referred to as ANGS) outputs a signal indicating a reference crank angle, for example, 180 degrees crank angle (hereinafter referred to as R
EF) and a signal (hereinafter referred to as PO8) indicating a minute angle, for example, 1 degree crank angle, are output and applied to the angle signal processing circuit 126, where they are waveform-shaped.

DIOにはアイドル・スイッチ148(以下IDLE−
8Wと記す)とトップ・ギヤ・スイッチ150(以下T
OP−8Wと記す)とスタータ・スイッチ152(以下
5TAR,T−8Wと記す)とが入力される。
DIO has an idle switch 148 (hereinafter IDLE-
8W) and top gear switch 150 (hereinafter T)
OP-8W) and a starter switch 152 (hereinafter referred to as 5TAR, T-8W) are input.

次にCPUの演算結果に基づくパルス出力回路および制
御対象について説明する。インジェクタ制御回路(IN
JCと記す)は演算結果のディジタル値をパルス出力に
変換する回路である。従って燃料噴射量に相当したパル
ス幅を有するパルスがINJC134で作られ、AND
ゲート136を介してインジェクタ12へ印加される。
Next, a pulse output circuit and a controlled object based on the calculation results of the CPU will be explained. Injector control circuit (IN
JC) is a circuit that converts the digital value of the calculation result into a pulse output. Therefore, a pulse having a pulse width corresponding to the fuel injection amount is generated by INJC134, and the AND
It is applied to the injector 12 via the gate 136.

点火パルス発生回路138(以下IGNCと記す)は点
火時期をセットするレジスタ(ADVと記す)と点火コ
イルの1次電流通電開始時間をセットするレジスタ(D
WLと記す)とを有し、CPUよりこれらデータがセッ
トされる。セットされたデータに基づいてパルスを発生
し、第1図に詳述した増幅器68へANDゲート140
を介してこのパルスを加エル。
The ignition pulse generation circuit 138 (hereinafter referred to as IGNC) includes a register (hereinafter referred to as ADV) for setting the ignition timing and a register (hereinafter referred to as D) for setting the primary current supply start time of the ignition coil.
WL), and these data are set by the CPU. AND gate 140 generates a pulse based on the set data and sends it to amplifier 68 detailed in FIG.
Add this pulse through El.

バイパスパルプ62の開弁率は制御回路(以下l5CC
と記す)142からANDゲート144を介して加えら
れるパルスによって制御される。
The valve opening rate of the bypass pulp 62 is determined by the control circuit (hereinafter referred to as 15CC).
) 142 through an AND gate 144.

l8CC142はパルス幅をセットするレジスタl5C
Dと繰返しパルス周期をセットするレジスタl5CPと
を持っている。
l8CC142 is a register l5C that sets the pulse width.
D and a register l5CP for setting the repetition pulse period.

第2図に示し九EGR制御弁86を制御するトランジス
タ90を制御するEGRi制御パルス発生回路180(
以下EGRCと記す)にはパルスのデユーティを表わす
値をセットするレジスタEGRDとパルスの繰返し周期
を表わす値をセットするレジスタEGRPとを有してい
る。このEGRCの出力パルスはANDゲート156を
介してトランジスタ90に加えられる。
An EGRi control pulse generation circuit 180 (shown in FIG. 2) that controls a transistor 90 that controls an EGR control valve 86 (
The EGRC (hereinafter referred to as EGRC) has a register EGRD for setting a value representing a pulse duty and a register EGRP for setting a value representing a pulse repetition period. This EGRC output pulse is applied to transistor 90 via AND gate 156.

また1ビツトの入出力信号は回路1)IOにより制御さ
れる。入力信号としてはI D L E −S W信号
、T OP −S W信号、5TART−8W信号があ
る。また出力信号としては燃料ポンプを駆動するための
パルス出力信号がある。このDIOは端子を入力端子と
して使用するか、出力端子として使用するかを決定する
だめのレジスタDDRと、出力データをラッチするだめ
のレジスタDOUTとが設けられている。
Further, the 1-bit input/output signal is controlled by the circuit 1) IO. Input signals include an IDLE-SW signal, a TOP-SW signal, and a 5TART-8W signal. Further, the output signal includes a pulse output signal for driving the fuel pump. This DIO is provided with a register DDR for determining whether a terminal is used as an input terminal or an output terminal, and a register DOUT for latching output data.

レジスタ160は入出力回路108内部の色々な状態を
指令する命令を保持するレジスタ(以下MODと記す)
であり、例えばこのレジスタに命令をセットすることに
より、ANDゲート136゜140.144,156を
総てター7オンさせたり、ターンオフさせたシする。こ
のようにMODレジスタ160に命令をセットすること
により、INJCやIGNC,l5CCの出力の停止や
起動を制御できる。
The register 160 is a register (hereinafter referred to as MOD) that holds instructions for commanding various states inside the input/output circuit 108.
For example, by setting a command in this register, all the AND gates 136, 140, 144, and 156 are turned on or turned off. By setting a command in the MOD register 160 in this way, it is possible to control the stop and start of output of INJC, IGNC, and 15CC.

第5図は第4図の制御回路のプログラムシステムの基本
構成を示す図である。
FIG. 5 is a diagram showing the basic configuration of a program system for the control circuit shown in FIG. 4.

図においてイニシャル処理プログラム202、割込処理
プログラム206、マクロ処理プログラム228および
タスクディスパッチャ208はタスク群を管理するため
の管理プログラムである。
In the figure, an initial processing program 202, an interrupt processing program 206, a macro processing program 228, and a task dispatcher 208 are management programs for managing a group of tasks.

イニシャル処理プログラム202はマイクロコンピュー
タを作動させるための前処理を行なうためのプログラム
であシ例えば、RAMIQ5の記憶内容をクリアしたり
入出力インターフェイス回路108のレジスタ類の初期
値を設定したり、さらにはエンジン制御を行なうのに必
要な前処理を行なうための入力情報例えば冷却水温7w
5バツテリ電圧等のデータを取込むための処理を行なう
The initial processing program 202 is a program for performing preprocessing for operating the microcomputer. For example, it clears the memory contents of RAMIQ5, sets initial values of registers of the input/output interface circuit 108, and further performs processing. Input information for pre-processing necessary for engine control, e.g. cooling water temperature 7w
5 Performs processing to import data such as battery voltage.

また、割込処理プログラム206は各種の割込を受は付
け、その割込要因を分析し、タスク群210ないし22
6の内の必要なタスクを起動させるだめの起動要求をタ
スクディスパッチャ208に出す。割込要因には後述す
るごとく電源電圧、冷却水温度等の入力情報をAD変換
終了後に発生するAD変換割込(Af)C)、エンジン
回転に同期して発生するイニンヤル割込(INTL)、
又設定された一定時間毎に、例えばl □ms毎に発生
するインターバル割込(INTV)、更にはエンジンの
ストップ状轢を検出し、発生するエンスト割込(ENS
T)等がある。
Further, the interrupt processing program 206 accepts various interrupts, analyzes the cause of the interrupt, and processes the task groups 210 to 22.
A startup request is issued to the task dispatcher 208 to start the necessary tasks among the tasks listed in step 6. Interrupt factors include AD conversion interrupts (Af)C) that occur after AD conversion of input information such as power supply voltage and cooling water temperature, as described later, and initial interrupts (INTL) that occur in synchronization with engine rotation.
In addition, it detects interval interrupts (INTV) that occur at set fixed time intervals, for example every 1 ms, and engine stall interrupts (ENS) that occur when an engine stop condition is detected.
T) etc.

タスク群210乃至226の各タスクには優先順位を表
わすタスク番号が割当てられており、各タスクはタスク
レベルO乃至2の何れかのタスクレベルに属する。即ち
、タスクO乃至タスク2はタスクレベルOに、タスク3
乃至タスク5はタスクレベルlに、更にタスク6乃至タ
スク8はタスクレベル2に各々属する。
A task number representing a priority is assigned to each task in the task groups 210 to 226, and each task belongs to one of task levels O to 2. That is, tasks O through task 2 are at task level O, and task 3 is at task level O.
Tasks 5 to 5 belong to task level 1, and tasks 6 to 8 belong to task level 2.

タスクディスパッチャ208は前記各種割込の起動要求
を受けこれらの起動要求に対応する各種タスクに付けら
れた優先順位に基づきCPUの占有時間を割り当てる。
The task dispatcher 208 receives the activation requests for the various interrupts and allocates CPU occupation time based on the priorities assigned to the various tasks corresponding to these activation requests.

ここでタスクダイスバッチャ208によるタスクの優先
制御は下記の方法に拠る。(1)優先度の低いタスクを
中断し、優先度の高いタスクへの実行権の移行はタスク
レベル間のみで行なう。なおここではレベルOが最も優
先度が高いものとする。
Here, task priority control by the task dice batcher 208 is based on the following method. (1) A task with a low priority is interrupted and the execution right is transferred to a task with a high priority only between task levels. Note that level O has the highest priority here.

(2)同じタスクレベル内で、現在実行中又は中断中の
タスクがある場合は、該タスクが最も優先度が高く該タ
スクが終了するまで他のタスクは動作できない。(3)
同じタスクレベル内で複数のタスクに起動要求がある場
合には、タスク番号が小さい程優先度が高いものとする
。タスクディスパッチャ208の処理内容は後述するが
本発明では上記優先制御を行なうためにタスク単位にI
(AMにノットタイマを設け、又タスクレベル単位にタ
スクを管理する制御ブロックをftAM中に設定するよ
うに構成している。そして上記各タスクの実行終了毎に
そのタスクの実行終了報告をマクロ処理プログラム22
8によりタスクディスパッチャ208  □に行なうよ
うにしている。
(2) If there is a task currently being executed or suspended within the same task level, this task has the highest priority and other tasks cannot operate until this task is completed. (3)
If there are activation requests for multiple tasks within the same task level, the smaller the task number, the higher the priority. The processing contents of the task dispatcher 208 will be described later, but in the present invention, in order to perform the above-mentioned priority control, I
(A knot timer is provided in the AM, and a control block for managing tasks on a task level basis is set in the ftAM.Then, each time the execution of each of the above tasks is completed, the execution completion report of that task is sent to the macro processing program. 22
8, the task dispatcher 208 □ is configured to do so.

次にタスクディスパッチャ208の処理内容について第
6図乃至第12図に基づき説明する。第6図はタスクデ
ィスパッチャ208の管理するRAMに設けられたタス
ク制御ブロックが設けられている。このタスク制御ブロ
ックがタスクレベルの数だけ設けられておシ本実施例で
はタスクレベル0乃至2の3つ設けられている。各制御
ブロックには各々8ビツトが割り当てられ、その内0乃
至2ビツト目(Q、−Q2)までが起動要求夕。
Next, the processing contents of the task dispatcher 208 will be explained based on FIGS. 6 to 12. In FIG. 6, a task control block is provided in the RAM managed by the task dispatcher 208. The number of task control blocks is equal to the number of task levels, and in this embodiment, there are three task control blocks for task levels 0 to 2. Eight bits are assigned to each control block, of which the 0th to 2nd bits (Q, -Q2) are the activation request data.

スフ表示を行なう起動ビットであり、7ビツト目(R)
が同一タスクレベル中の何れかのタスクが現在実行中で
あるか又は中断中であるかを示す実行ピットを表わす。
This is the startup bit that performs the screen display, and the 7th bit (R)
represents an execution pit indicating whether any task in the same task level is currently being executed or suspended.

そして前記起動ピッ)QO乃至Q2はそれぞれ各タスク
レベル中で実行優先度の高いJ願に配列されておシ、例
えば4@5図中でタスク4に該当する起動ビットはタス
クレベル1のQ、である。ここでタスクの起動要求があ
った場合には起動ビットの何れかにフラグが立てられ、
一方タスクダイスパッチャ208は出された起動要求を
高いレベルのタスクに該当する起動ビットより順に検索
し、出された起動要求に該当するフラグをリセットする
と共に実行ピットにフラグ1を立て、該当タスクを起動
させるための処理を行なう。
The activation bits QO to Q2 are arranged in J requests with high execution priority in each task level. For example, in the 4@5 diagram, the activation bit corresponding to task 4 is the Q of task level 1, It is. If there is a request to start a task, a flag is set in one of the start bits,
On the other hand, the task die patcher 208 searches the issued startup requests in order from the startup bits corresponding to the high-level tasks, resets the flag corresponding to the issued startup request, sets flag 1 in the execution pit, Performs processing to start.

第7図はタスクディスパッチャ208の管理するRAM
106に設けられたスタートアドレステーブルである。
FIG. 7 shows the RAM managed by the task dispatcher 208.
This is a start address table provided in 106.

スタートアドレスSAQ乃至SA8は第5図に示したタ
スク群210乃至226の各タスクO乃至8に該当する
スタートアドレスを示す。各スタートアドレス情報には
16ビツトが割合てられ、これらのスタートアドレス情
報は後述する如くタスクディスパッチャ208によシ起
動要求のあった該当タスクを起動するのに使用される。
Start addresses SAQ to SA8 indicate the start addresses corresponding to each task O to 8 of the task groups 210 to 226 shown in FIG. 16 bits are allocated to each start address information, and these start address information are used by the task dispatcher 208 to start the corresponding task for which a start request has been made, as will be described later.

次に第8図乃至第9図にタスクディスパッチャの処理フ
ローを示す。第7図に於いてステップ300でタスクデ
ィスパッチャの処理が開始されるとステップ302でタ
スクレベルlに属するタスクが実行中断中か否かが判断
される。即ち、実行ピットに1が立っていたらマクロ処
理プログラム228により未だタスク終了報告がタスク
ディスパッチャ208に出されていない状態であり、実
行中だったタスクがより優先レベルが高い割込みが生じ
たために中断させられている状態を示す。
Next, FIGS. 8 and 9 show the processing flow of the task dispatcher. In FIG. 7, when the process of the task dispatcher is started in step 300, it is determined in step 302 whether or not the execution of a task belonging to task level l is suspended. In other words, if 1 is set in the execution pit, it means that the macro processing program 228 has not yet sent a task completion report to the task dispatcher 208, and the task that was being executed was interrupted due to an interrupt with a higher priority level. Indicates the state in which the

従って、実行ピットにフラグ1が立っていたらステップ
314にジャンプし、中断タスクを再開する。
Therefore, if flag 1 is set in the execution pit, the process jumps to step 314 and restarts the interrupted task.

一方、実行ピットにフラグ1が立っていない即ち実行表
示フラグがリセットされている場合にはステップ304
に移行し、レベルlに起動待ちタスクがあるか否かが判
断される。即ち、レベルlの起動ビットを対応するタス
クの実行優先度の高い順、即ちQ。+ Ql  + Q
2の順に検索する。タスクレベルeに属する起動ビット
にフラグ1が立っていない場合はステップ306に移行
し、タスクレベルの更新が行なわれる。即ちタスクレベ
ルlは+1インクリメントされ/+1とする。ステップ
306でタスクレベルの更新が行なわれるとステップ3
08に移行しタスクレベルの全レベルがチェックされた
か否かが判断される。全レベルのチェックが行なわれて
いない、即ち/=2でない場合にはステップ302に戻
り同様に上記手順で処理が行なわれる。ステップ308
でタスクレベルの全レベルがチェックされている場合に
はステップ310に移行し、割込み解除が行なわれる。
On the other hand, if flag 1 is not set in the execution pit, that is, the execution display flag is reset, step 304
Then, it is determined whether there is a task waiting to be started at level l. That is, the execution priority of the tasks corresponding to the activation bits of level l is ranked in order of priority, that is, Q. + Ql + Q
Search in the order of 2. If flag 1 is not set in the activation bit belonging to task level e, the process moves to step 306, and the task level is updated. That is, the task level l is incremented by +1. When the task level is updated in step 306, step 3
08, it is determined whether all task levels have been checked. If all levels have not been checked, that is, if /=2 is not performed, the process returns to step 302 and the above procedure is similarly performed. Step 308
If all task levels have been checked in step 310, the interrupt is canceled.

即ち、ステップ302乃至ステップ308までの処理期
間中は割込みを禁止しているのでこのステップで割込み
解除が為される。そして次のステップ312で次の堂込
みを持つ。
That is, since interrupts are prohibited during the processing period from step 302 to step 308, interrupts are canceled at this step. Then, in the next step 312, the next hall is created.

次に前記ステップ304でタスクレベルlに起\ 動待ちタスクがある場合、即ちタスクレベルlに属する
起動ビットにフラグ1−が立っている場合にはステップ
400に移行する。ステップ500及び502のループ
でタスクレベル−〇どの起動ビットにフラグ1が立って
いるか対応する優先実行度の高いレベルの順に即ちQo
、 Ql、 Qtの順で検索する。該当する起動ビット
を割出したらステップ404に移行し、ステップ404
ではそのフラグの立っている起動ビットをリセットし、
その該当タスクレベルのeの実行ピント(以下Rビット
)にフラグ1を立てる。更にステップ406では起動タ
スク番号の割出しを行ないステップ408で第7図に示
したRAMに設けられたスタートアドレステーブルによ
り該当する起動タスクのスタートアドレス情報を取出す
Next, in step 304, if there is a task waiting to be activated at task level l, that is, if the flag 1- is set in the activation bit belonging to task level l, the process moves to step 400. In the loop of steps 500 and 502, the task level - 〇Which activation bit has flag 1 set, in order of the corresponding priority execution level, that is, Qo
, Ql, Qt in this order. Once the relevant activation bit has been determined, the process moves to step 404;
Now reset the flagged startup bit,
A flag 1 is set in the execution focus (hereinafter referred to as the R bit) of e at the corresponding task level. Further, in step 406, the starting task number is determined, and in step 408, start address information of the corresponding starting task is retrieved from the start address table provided in the RAM shown in FIG.

次にステップ410では該当起動タスクを実行するか否
かの判断が行なわれる。ここでは取出したスタートアド
レス情報が特定の値例えば0であれば該当タスクの実行
は行なわなくてよいと判断される。この判断ステップは
工/ジン制御を行なう前記タスク群の内容車種により選
択的に特定のタスクのみの機能を持たせるのに必要なも
のである。ステップ410で該当タスクの実行が停止で
あると判断された場合にはステップ414に移行し、該
当タスクレベルlのRビットをリセットする。そして更
にステップ302に戻りタスクレベル/は中断中である
か否かが判断される。これは同一タスクレベルl中に複
数の起動ビットにフラグが立っている場合があり得るの
でステップ414でRビットをリセットした後ステップ
302に移行するように構成されている。
Next, in step 410, it is determined whether or not to execute the corresponding startup task. Here, if the extracted start address information is a specific value, for example 0, it is determined that the corresponding task does not need to be executed. This determination step is necessary to selectively provide the function of only a specific task depending on the type of vehicle in the task group that performs engine/engine control. If it is determined in step 410 that the execution of the corresponding task is stopped, the process moves to step 414, and the R bit of the corresponding task level l is reset. Then, the process returns to step 302 and it is determined whether the task level / is being suspended. Since a plurality of activation bits may be flagged in the same task level l, the R bit is reset in step 414 and then the process proceeds to step 302.

一方ステップ410で該当タスクの実行が停止でない場
合即ち実行する場合にはステップ412へ移行し該当タ
スクへジャンプし、タスクの実行が行なわれる。
On the other hand, if the execution of the relevant task is not stopped in step 410, that is, if it is to be executed, the process moves to step 412, jumps to the relevant task, and the task is executed.

次に第10図はマクロ処理プログラム228の処理フロ
ーを示す図である。このプログラムは終了タスクを見つ
けるためのステップ562と564から成る。このステ
ップ562と564で先ずタスクレベルのOよシ検索し
終了したタスクレベルを見つける。これによりステップ
568へ進みここで終了したタスクのタスク制御ブロッ
クの7ビツト目の実行(RUN)フラグをリセットする
Next, FIG. 10 is a diagram showing the processing flow of the macro processing program 228. The program consists of steps 562 and 564 to find the finished task. In steps 562 and 564, the task level is first searched by O to find the completed task level. As a result, the process advances to step 568, where the execution (RUN) flag in the 7th bit of the task control block of the completed task is reset.

これによシそのタスクの実行が完全に終わった事になる
。そして再びタスクディスパッチャ208に戻シ次の実
行タスクが決定される。
This means that the task has been completely executed. Then, the process returns to the task dispatcher 208 again, and the next task to be executed is determined.

次にタスクディスパッチャ208によりタスク優先制御
が行なわれる場合のタスクの実行と中断の様子を第11
図に基づき説明する。ここで起動要求N mnに於ける
mはタスクレベルm中わし、nはタスクレベルm中に於
ける陵先度の順位を表わすものとする。今CPUは管理
プログラムO8を実行していたとすると、この管理プロ
グラムO8の実行中に起動要求N2.が発生した場合K
id時刻T1で起動要求N21に該当するタスク、即ち
タスク6の実行が開始される。ここでタスク6の実行中
に時刻T2でより実行優先度の高いタスクの起動要求N
。1が生じた場合には管理プログラムO8に実行が移り
既に述べた所定の処理を行なった後に時刻T、で起動要
求N。1に該当するタスク、即ちタスクOの実行が開始
される。このタスクOの実行中に更に時刻T4で起動要
求N1.が入った場合には一旦、管理プログラムO8に
実行が移り所定の処理が行なわれた後再び時刻T5で中
断されていたタスクOの実行が再開される。そしてタス
ク0の実行が時刻T。で終了すると再び管埋プログラム
O8に実行が移りここでマクロ処理プログラム228に
よシタスフディスパッチャ208ヘタスク0の実行終了
報告がなされ時刻T7で再び起動待ちになっていた起動
要求N1.に該当するタスク3のi行が開始される。こ
のタスク3の実行中時刻T、で同じタスクレベル1のよ
り優先度の低い起動要求N、が入った場合にはタスク3
の実行は一旦中断され実行は管理プログラムO8に移り
所定の処理が為された後、時刻T、でタスク3の実行が
再開される。そして時刻T10でタスク3の実行が終了
するとCPUの実行は管理プログラムO8に移り前記マ
クロ処理プログラム228によシタスフディスパッチャ
208ヘタスク3の実行終了報告が為され、次いで時刻
TI+でより優先レベルの低い起動要求N、2に該当す
るタスク4の実行が開始され、時刻TI 2でタスク4
の実行が終了すると実行は管理プログラムO8に移り所
定の処理が為された後、今まで中断されていた起動要求
N2Iに該当するタスク6の実行が時刻T13から再開
される。
Next, we will explain how tasks are executed and interrupted when task priority control is performed by the task dispatcher 208.
This will be explained based on the diagram. Here, in the startup request N mn, m represents the task level m, and n represents the ranking of the task level m. Assuming that the CPU is currently executing the management program O8, the activation request N2. If occurs, K
At id time T1, execution of the task corresponding to the activation request N21, that is, task 6, is started. Here, while task 6 is being executed, a request N to start a task with a higher execution priority is made at time T2.
. 1 occurs, the execution moves to the management program O8, and after performing the predetermined processing described above, a startup request N is issued at time T. Execution of the task corresponding to 1, that is, task O, is started. During the execution of this task O, a start request N1 is issued at time T4. When the task O is entered, execution is once transferred to the management program O8, predetermined processing is performed, and then the execution of the task O, which was interrupted at time T5, is resumed. Task 0 is executed at time T. When the task is finished, the execution returns to the management program O8, where the macro processing program 228 reports the completion of execution of task 0 to the task force dispatcher 208, and at time T7, the activation request N1. The i line of task 3 corresponding to is started. If a startup request N of the same task level 1 with a lower priority is received at time T when task 3 is being executed, task 3
The execution of task 3 is temporarily interrupted, the execution moves to the management program O8, and after predetermined processing is performed, the execution of task 3 is resumed at time T. When the execution of task 3 ends at time T10, the execution of the CPU shifts to the management program O8, and the macro processing program 228 reports the completion of execution of task 3 to the task force dispatcher 208, and then at time TI+, the execution of task 3, which has a lower priority level, is reported. Execution of task 4 corresponding to startup request N, 2 is started, and task 4 is executed at time TI 2.
When the execution is completed, the execution moves to the management program O8, and after predetermined processing is performed, the execution of the task 6 corresponding to the startup request N2I, which has been suspended until now, is resumed from time T13.

以上の様にしてタスクの優先制御が行なわれる。Priority control of tasks is performed in the manner described above.

タスクの優先制御に於ける状態遷移を第12図に示す。FIG. 12 shows state transitions in task priority control.

1旧e状態は起動待ちの状態であシ、りスフにまだ起動
要求が出されていない。次に起動要求が出されるとタス
ク制御ブロックの起動ピントにフラグが立ち、起動が必
要ということが表示される。1旧e状態からQu e 
u e状態へ移動する時間は各タスクのレベルにより定
まっている。更にQu e u e状態になっても実行
され順序は優先度により定まる。そのタスクが実行状態
に入るのは管理プログラムO8の内のタスクディスパッ
チャ208でタスク制御ブロックの起動ビットのフラグ
がリセットされ、Rビット(7ビツト目)にフラグが立
ってからである。これによシタスフの実行が始められる
。この状態がRUN状態である。そして実行が終るとタ
スク制御ブロックの几ビットのフラグがクリアされ、終
了報告を終了する。これKよシ几UN状態は終り、再び
1旧e状態となシ次の起動要求が出るのを待つ。しかし
、タスクの実行中即ちRUN中に割込みIR,Qが発生
すると、そのタスクは実行を中断しなければならない。
1 The old e state is a state of waiting for activation, and no activation request has been issued to the system yet. The next time a startup request is issued, a flag is set in the task control block's startup focus, indicating that startup is required. 1 Qu e from old e state
The time to move to the ue state is determined by the level of each task. Furthermore, they are executed even in the Queue state, and the order is determined by the priority. The task enters the execution state after the task dispatcher 208 in the management program O8 resets the activation bit flag of the task control block and sets the flag in the R bit (seventh bit). This will start executing the sitasf. This state is the RUN state. When the execution is finished, the flag in the task control block's execution bit is cleared, and the completion report ends. This ends the UN state and returns to the old state again, waiting for the next activation request. However, if an interrupt IR or Q occurs during execution of a task, that is, during RUN, the execution of that task must be interrupted.

このためCPUの内容が待避され、実行が中断する。Therefore, the contents of the CPU are saved and execution is interrupted.

この状態がk a d y状態であるう次にこのタスク
が再び実行される状態になると待避エリアよシ、待避し
ていた内容を再びCPUへ戻し、実行が再開される。つ
まりk a d y状態から再びRUN状態へ戻る。こ
の様に各レベルプログラムは第11図の4つの状態を繰
シ返す。第11図は代表的な流れであるがRe a d
 y状態でタスク制御ブロックの起動ビットにフラグが
立つ可能性がある。これは例えば起動中断中にそのタス
クの次の起動要求タイミングになってしまった場合であ
る。この時にはRピットのフラグが優先されて先ず、中
断中のタスクを終了させる。これによfiRビットのフ
ラグが消光、起動ビットのフラグによシエ旧e状態を通
らずにQueue状態となる。
This state is a ka dy state, and when the task enters a state where it is to be executed again, the saved contents are returned to the CPU in the save area and execution is resumed. In other words, it returns from the ka dy state to the RUN state again. In this way, each level program repeats the four states shown in FIG. Figure 11 shows a typical flow.
There is a possibility that the activation bit of the task control block will be flagged in the y state. This is the case, for example, when the next activation request timing for the task comes while the activation is being suspended. At this time, priority is given to the R pit flag, and the suspended task is first terminated. As a result, the fiR bit flag is extinguished, and the startup bit flag causes the device to enter the Queue state without passing through the old e state.

この様にタスク0〜8は各々第12図の何れかの状態に
ある。
In this way, tasks 0 to 8 are each in one of the states shown in FIG.

次に第13図は第5図のプログラムシステムの具体的実
施例を示している。図に於いて管理プログラムO8はイ
ニシャル処理プログラム202、割込み処理プログラム
206、タスクディスパッチャ208及びマクロ処理プ
ログラム228よシ成る。
Next, FIG. 13 shows a specific embodiment of the program system shown in FIG. In the figure, the management program O8 consists of an initial processing program 202, an interrupt processing program 206, a task dispatcher 208, and a macro processing program 228.

割込み処理プログラム206には各種の割込み処理プロ
グラムがあり、イニシャル割込み処理(以下INTL割
込み処理という)6o2は工/ジン回転に同期して発生
するイニシャル割込み信号によって、エンジン1回転当
たりエンジン気筒数の半分、即ち4気筒なら2回イニシ
ャル割込みが発生する。このイニシャル割込みによっテ
EGエタスク612で計算した燃料の噴射時間を入出力
インターフニス回路108のEGIレジスタに設定する
。AI)変換割込み処理604は2種類あり1つはAI
)変換器1割込み(以下ADC1と略す)及びAD変換
62割込み(以下ADC2と略す)である。AD変換器
1は8ピツトの精度を有し、電源電圧、冷却水温度、吸
気温度及び使用調整などの入力に用いられ、マルチプレ
クサ−120に対する入カポインドの指定を行なうと同
時に変換を開始し、変換終了後にADCI割込みを発生
する。なお本割込みはクランキング前にのみ使用する。
The interrupt processing program 206 includes various interrupt processing programs, and the initial interrupt processing (hereinafter referred to as INTL interrupt processing) 6o2 uses an initial interrupt signal that is generated in synchronization with engine/engine rotation to interrupt half of the number of engine cylinders per engine rotation. In other words, if there are four cylinders, the initial interrupt will occur twice. By this initial interrupt, the fuel injection time calculated by the EG task 612 is set in the EGI register of the input/output interface circuit 108. AI) There are two types of conversion interrupt processing 604, one is AI
) converter 1 interrupt (hereinafter abbreviated as ADC1) and AD conversion 62 interrupt (hereinafter abbreviated as ADC2). The AD converter 1 has an accuracy of 8 pits and is used for inputting power supply voltage, cooling water temperature, intake air temperature, usage adjustment, etc., and starts conversion at the same time as specifying the input point to the multiplexer 120. Generates ADCI interrupt after completion. Note that this interrupt is used only before cranking.

又AD変換器128は空気流量の入力に用いられ変換終
了後にADC2割込みを発生する。なお、本割込みもク
ランキング前にのみ使用する。
Further, the AD converter 128 is used to input the air flow rate and generates an ADC2 interrupt after the conversion is completed. Note that this interrupt is also used only before cranking.

次にインターバル割込み処理プログラム(以下INTV
割込み処理プログラムと示す。)606ではINTV割
込み信号はINTVレジスタに設定した時間例えばl 
Qms毎に発生し、一定周期で起動すべきタスクの時間
監視用基本信号として用いられる。本割込み信号によっ
て、ソフトタイマの更新を行ない、規定周期に達したマ
スクを起動する。更にエンスト割込み処理プログラム(
以下ENST割込み処理プログラムと記す。)608で
はエンジンのストップ状態を検出するもので、INTL
割込み信号を検出すると、計数を開始し所定時間例えば
1秒以内に次にINTL割込み信号を検出できなかった
時、ENST割込みが発生する。そしてENST割込み
が3回、例えば3秒経過してもINTL割込み信号が検
出できなかった場合にエンストが起ったものと判断し点
火コイルへの通電及び燃料ポンプの停止を行なう。これ
らの処理の後スタータスイッチ152がオンするまで待
機する。上記割込み要因に対する処理概要を表1に示す
Next, the interval interrupt processing program (hereinafter INTV)
It is referred to as an interrupt processing program. ) 606, the INTV interrupt signal is used for the time set in the INTV register, e.g.
It is generated every Qms and is used as a basic signal for time monitoring of tasks that should be started at regular intervals. This interrupt signal updates the soft timer and activates the mask that has reached the specified period. In addition, the stalled interrupt processing program (
Hereinafter, this will be referred to as the ENST interrupt processing program. ) 608 detects the stopped state of the engine, and INTL
When an interrupt signal is detected, counting is started, and when an INTL interrupt signal cannot be detected within a predetermined period of time, for example, one second, an ENST interrupt is generated. If the INTL interrupt signal is not detected after three ENST interrupts, for example three seconds, it is determined that an engine stall has occurred, and the ignition coil is energized and the fuel pump is stopped. After these processes, the process waits until the starter switch 152 is turned on. Table 1 shows an overview of the processing for the above interrupt factors.

イニシャル処理プログラム202及びマクロ処理プログ
ラム228については前述の通シの処理を行なう。
The initial processing program 202 and macro processing program 228 perform the same processing as described above.

上記各種の割込みによシ起動されるタスク群は次の通り
である。タスクレベルOに属するタスクとしては空気量
信号処理タスク(以下Asタスクと記す)、燃料噴射制
御タスク(以下EGIタスクと記す)及び始動モニタタ
スク(MONIT  タスクと言う)がある。又タスク
レベル1に属するタスクとしてはAD1人カタカタスク
上AD I N1タスクと記す)、時間係数処理タスク
(以下AFSIAタスク)がある。更にタスクレベル2
に属するタスクとしてはアイドル回転制御タスク(以下
ISOタスクと記す)、補正計算タスク(以下HO8E
Iタスクと配す)及び始動前処理タスク(以下l5TR
Tタスクと記す)がある。
The task groups activated by the various interrupts mentioned above are as follows. Tasks belonging to task level O include an air amount signal processing task (hereinafter referred to as As task), a fuel injection control task (hereinafter referred to as EGI task), and a starting monitor task (hereinafter referred to as MONIT task). Tasks belonging to task level 1 include the AD 1-person Kataka task (hereinafter referred to as the AD I N1 task) and the time coefficient processing task (hereinafter referred to as the AFSIA task). Furthermore, task level 2
The tasks that belong to the
I task) and startup preprocessing task (hereinafter referred to as l5TR)
(denoted as T-task).

上記各タスクレベルの割り当てとタスクの機能を表2に
示す。
Table 2 shows the assignment of each task level and the function of the task.

表2から明らかなように各種割込みにより起動される各
タスクの起動周期は予め定められておシこれらの情報は
ROMI O4に格納されている。
As is clear from Table 2, the activation cycle of each task activated by various interrupts is determined in advance, and this information is stored in the ROMI O4.

次に第13図図示空気量信号処理(AC)610のタス
クについて説明する。空気量信号処理タスクは第14図
に示す如く、ステップ901においてタスクを起動する
。タスクが起動されると、ステップ902において、■
の取込禁止フラグをセットする。次に、ステップ903
において、(v2)2の計算を行ないRAMへ格納する
。次にステップ904において、取込禁止フラグをリセ
ットする。
Next, the task of air amount signal processing (AC) 610 shown in FIG. 13 will be explained. The air amount signal processing task is activated in step 901, as shown in FIG. When the task is started, in step 902, ■
Set the import prohibition flag. Next, step 903
, calculates (v2)2 and stores it in RAM. Next, in step 904, the import prohibition flag is reset.

取込禁止フラグをリセットすると、ステップ905にお
いてステップ993 RAMに格納された値(V”) 
2  を積算して平均化する。積算して平均化するとス
テップ906において、エンジンの加速状態か否かを判
定する。このステップ906において加速状態であると
判定するとステップ907において加速噴射する。ステ
ップ906において加速状態でないと判定した場合、ス
テップ907において加速噴射した後、第13図におけ
るマク口処理228に移る。
When the import prohibition flag is reset, in step 905 the value (V") stored in step 993 RAM is
2 are integrated and averaged. After integrating and averaging, it is determined in step 906 whether or not the engine is in an accelerating state. If it is determined in step 906 that the fuel is in an accelerated state, accelerated injection is performed in step 907. If it is determined in step 906 that the fuel is not in an accelerated state, accelerated injection is carried out in step 907, and then the process moves to mouth processing 228 in FIG. 13.

以下第15図乃至第17図に基づきINTV割込み処理
について説明する。第13図はRAM106に設けられ
たソフトタイマテーブルであり、このソフトタイマテー
ブルには各種割込みにより起動される異なる起動周期の
数だけのタイマブロックが設けられている。ここでタイ
マブロックとはROM104に格納されているタスクの
起動周期に関する時間情報が転送される記憶エリアを指
している。同図に於いて左端に記憶されているTMBは
RAM106に於けるソフトタイマテーブルの先頭番地
を意味する。このソフトタイマテーブルの各タイマブロ
ックにはエンジン始動時にROM104より前記起動周
期に関する時間情報、即ちINTV割込みを例えば10
m5毎に行なう場合にはその整数倍の値が転送され、格
納される。
The INTV interrupt processing will be explained below based on FIGS. 15 to 17. FIG. 13 shows a soft timer table provided in the RAM 106, and this soft timer table is provided with timer blocks corresponding to the number of different activation cycles activated by various interrupts. Here, the timer block refers to a storage area to which time information regarding the activation cycle of tasks stored in the ROM 104 is transferred. The TMB stored at the left end in the figure means the starting address of the soft timer table in the RAM 106. Each timer block of this soft timer table receives time information related to the startup cycle, that is, INTV interrupt, from the ROM 104 at the time of engine startup.
If it is performed every m5, a value that is an integer multiple thereof is transferred and stored.

次に第16図にINTV割込み処理606の処理フロー
を示す。同図に於いてステップ626でプログラムが起
動されるとステップ628 テf<−1’−M2O3に
設けられたソフトタイマテーブルのイニシャルライズが
行なわれる。Poち、インデックスレジスタの内容iを
0にし前記ソフトタイマテーブルの番地TMB4−0の
タイマブロックに記憶されている残り時間T1 を調べ
る。ここでこの場合にはT、=Toである。次にステッ
プ630で上記ステップ628で調べたソフトタイマが
停止中テするか否かが判断される。即ち、ソフトタイマ
テーブルに記憶されている残シ時間T1 がT、  =
0である場合にはソフトタイマは停止中であると判断さ
れ、該ソフトタイマにょシ起動されるべき該当タスクは
停止中であると判断され、ステップ640にジャンプし
、ソフトタイマテーブルの更新が行なわれる。
Next, FIG. 16 shows the processing flow of INTV interrupt processing 606. In the same figure, when the program is started in step 626, the soft timer table provided in step 628 (te f<-1'-M2O3) is initialized. Po, the content i of the index register is set to 0 and the remaining time T1 stored in the timer block at address TMB4-0 of the soft timer table is checked. Here, in this case, T,=To. Next, in step 630, it is determined whether the soft timer checked in step 628 is stopped. That is, the remaining time T1 stored in the soft timer table is T, =
If it is 0, it is determined that the soft timer is stopped, and the corresponding task to be started by the soft timer is determined to be stopped, and the process jumps to step 640, where the soft timer table is updated. It will be done.

一方、ソフトタイマテーブルの残シ時間T1 がT、 
失Oである場合にはステップ632に移行し前記タイマ
ブロックの残り時間の更新が行なわれる。即ち、残シ時
間T1 から−1だけディクリメントされる。次にステ
ップ634では前記タイマテーブルのソフトタイマが起
動周期に達したか否かが判断される。即ち残シ時間T1
がT+=0である場合には起動周期に達したと判断され
その場合にはステップ636に移行する。又ソフトタイ
マが起動周期に達していないと判断される場合にはステ
ップ640にジャンプし、ソフトタイマテーブルの更新
が行なわれる。前記ソフトタイマテーブルが起動周期に
達している場合にはステップ636でソフトタイマテー
ブルの残シ時間T、を初期化する。即ち、FLOMI 
Q 4よ51’tAM106へ該当タスクの起動周期の
時間情報を転送する。
On the other hand, the remaining time T1 in the soft timer table is T,
If O is lost, the process moves to step 632 and the remaining time of the timer block is updated. That is, the remaining time T1 is decremented by -1. Next, in step 634, it is determined whether the soft timer in the timer table has reached its activation cycle. That is, the remaining time T1
If T+=0, it is determined that the activation period has been reached, and in that case, the process moves to step 636. If it is determined that the soft timer has not reached its activation period, the process jumps to step 640, and the soft timer table is updated. If the soft timer table has reached its activation period, the remaining time T of the soft timer table is initialized at step 636. That is, FLOMI
Q 4 to 51't Transfer time information of the activation cycle of the relevant task to the AM 106.

そしてステップ636で前記ソフトタイマテーブルの残
り時間T1  を初期化した後、ステップ638でその
ソフトタイマテーブルに該当するタスクの起動要求を行
なう。次にステップ640でソフトタイマテーブルの更
新を行なう。即ち、インデックスレジスタの内容を+1
インクリメントする。
After initializing the remaining time T1 of the soft timer table in step 636, a request is made to start the task corresponding to the soft timer table in step 638. Next, in step 640, the soft timer table is updated. In other words, the contents of the index register are increased by +1.
Increment.

更にステップ642では全部のソフトタイマテーブルを
チェックしたか否かが判断される。即ち、第15図に示
したように本実施例ではソフトタイマテーブルをN+1
個だけ設けであるのでインデックスレジスタの内容iが
i =N−4−1である場合には全ソフトタイマテーブ
ルのチェックが完了したと判断されステップ644でI
−N T V割込み処理プログラム606は終了する。
Further, in step 642, it is determined whether all soft timer tables have been checked. That is, as shown in FIG. 15, in this embodiment, the soft timer table is set to N+1.
Therefore, if the content i of the index register is i = N-4-1, it is determined that the checking of all soft timer tables has been completed, and in step 644
-N TV interrupt processing program 606 ends.

一方ステップ642で全ソフトタイマテーブルがチェッ
クされていないと判断された場合にはステップ630に
戻シ、前述と同様の処理が行なわれる。
On the other hand, if it is determined in step 642 that all soft timer tables have not been checked, the process returns to step 630 and the same processing as described above is performed.

以上の様にして各種の割込みに応じて該当タスクの起動
要求が出され、それに基づいて該当タスクの実行が為さ
れるが、表2に掲げられたタスク群が常にすべてが実行
されるのではなく、エンジンの運転情報に基づいてRO
MI 04に設けられている前記タスク群の起動周期に
関する時間情報を選択してRAM106のソフトタイマ
テーブル中に転送し格納する。そして与えられたそのタ
スクの起動周期が例えば20m5であるとすれば、その
時間毎にタスクが起動されるがそのタスクの起動が運転
条件に応じて継続して行なう必要があるものであれば常
にそのタスクに該当するソフトタイマテーブルは更新し
て初期化される。次にエンジンの運転条件に応じて各種
割込みによシ前記タスク群が起動停止される様子を第1
3図に示すタイムチャートにより説明する。スタータス
イッチ152の操作によりパワーオンの状態になるとC
PUが作動し、ソフトウェアフラグIST及びソフトウ
ェアフラグEMに1が立てられる。ソフトウェアフラグ
ISTはエンジンが始動前の状態にあることを示すフラ
グであり、ソフトウェアフラグEMはENST割込みを
禁止するためのフラグである。これらの2つのフラグに
よりエンジンが始動前の状態にあるか或いは始動中か又
は始動後の状態にあるのかの判別が為される。さてスタ
ータスイッチ152の操作によりパワーオンの状態にな
ると先ず最初にタスクADIN1が起動され各種センサ
によりエンジンの始動に必要なデータ例えば冷却水温度
、バッテリ電圧等の入力情報がマルチプレクサ120を
介してAD変換器122に取込まれ、これらのデータの
一巡入力毎にタスクHO8EIタスク補正が起動され前
記入力情報に基づき補正計算が行なわれる。又前記タス
クADIN1によシAD変換器122に各種センサから
のデータの一巡入力毎にタスクl5TRTが起動されエ
ンジン始動中に必要な燃料噴射量の計算がなされる。以
上の3つのタスク、即ちタスクADINl、タスクHO
8EI及びタスクl5Tf%Tはイニンヤル処理プログ
ラム202により起動されるものである。
As described above, a request to start the corresponding task is issued in response to various interrupts, and the corresponding task is executed based on the request, but it is possible that all of the task groups listed in Table 2 are always executed. RO based on engine operating information.
Time information regarding the activation cycle of the task group provided in the MI 04 is selected and transferred and stored in the soft timer table of the RAM 106. If the activation cycle of a given task is, for example, 20m5, then the task will be activated every time, but if the task needs to be activated continuously depending on the operating conditions, it will be activated at all times. The soft timer table corresponding to that task is updated and initialized. Next, the first example shows how the task group is started and stopped by various interrupts depending on the engine operating conditions.
This will be explained using the time chart shown in FIG. When the power is turned on by operating the starter switch 152, C
The PU is activated and 1 is set in the software flag IST and software flag EM. The software flag IST is a flag indicating that the engine is in a pre-start state, and the software flag EM is a flag for inhibiting ENST interrupts. These two flags are used to determine whether the engine is in a pre-starting state, in a starting state, or in a post-starting state. Now, when the power is turned on by operating the starter switch 152, the task ADIN1 is activated first, and various sensors input information necessary for starting the engine, such as cooling water temperature and battery voltage, through the multiplexer 120 and AD conversion. 122, task HO8EI task correction is activated every time these data are input in one cycle, and correction calculations are performed based on the input information. Furthermore, the task ADIN1 activates the task 15TRT every time data from various sensors is input to the AD converter 122, and calculates the fuel injection amount required during engine starting. The above three tasks, namely task ADINl, task HO
8EI and task 15Tf%T are started by the initial processing program 202.

スタータスイッチ152がON状態になるとタスクl5
TRTの割込み信号によりタスクAD I Nl、タス
クMONIT及びタスクADIN2の3つのタスクに起
動が掛けられる。即ち、これらのタスクはスタータスイ
ッチ152がON状態になっている期間(エンジンのク
ランキング時)のみ実行される必要がある。この期間で
はROMIQ4からRAM106に設けられた前記タス
クにそれぞれ該当するソフトタイマテーブルに所定の起
動周期の時間情報が転送され格納される。そしてこの期
間は前記ソフトタイマテーブルの起動周期の残り時間T
、は初期化され起動周期の設定が繰シ返し行なわれる。
When the starter switch 152 is turned on, task l5
Three tasks, task AD I Nl, task MONIT, and task ADIN2, are activated by the TRT interrupt signal. That is, these tasks need to be executed only while the starter switch 152 is in the ON state (during cranking of the engine). During this period, time information of a predetermined activation cycle is transferred from the ROMIQ4 to a soft timer table provided in the RAM 106 and corresponding to each of the tasks, and is stored therein. This period is the remaining time T of the activation cycle of the soft timer table.
, are initialized and the activation cycle is set repeatedly.

タスクMONITはエンジン始動時の燃料噴射量を計算
するためのタスクであうエンジン始動後は不要なタスク
であるので所定の回数だけタスクの実行を終了したらソ
フトタイマの起動を停止し、そのタスク終了時に発せら
れる停止信号により上記以外のエンジン始動後に必要な
タスク群の起動を行なう。ここでタスクの停止をソフト
タイマにより行なうにはそのタスクの終了に於ける判断
時点でそのタスクが終了したことを示す信号によシその
タスクの該当するソフトタイマテーブルにOを格納する
、即ちソフトタイマの内容をクリアすることによりタス
クの停止を行なうものである。したがって、タスクの起
動停止をソフトタイマによシ簡単に行なえるように構成
したので異なる起動周期を有する複数のタスクに対し能
率的且つ信頼性有る管理を行なうことが可能となる。
Task MONIT is a task to calculate the fuel injection amount when starting the engine. Since it is an unnecessary task after the engine starts, the soft timer is stopped after the task has been executed a predetermined number of times, and is issued when the task ends. A stop signal generated by the engine starts a group of tasks other than those mentioned above that are required after the engine starts. In order to stop a task using a soft timer, a signal indicating that the task has ended is stored at the time when the task is determined to have ended, and O is stored in the soft timer table corresponding to the task. The task is stopped by clearing the contents of the timer. Therefore, since the configuration is such that tasks can be easily activated and stopped using a soft timer, it is possible to efficiently and reliably manage a plurality of tasks having different activation cycles.

次にIRQの発生回路を第18図に示す。レジスタ73
5とカウンタ736と比較器737とフリップフロップ
738はINTV IRQの発生回路であシ、レジスタ
735にII’JTVIRQの発生周期例えば本実施例
ではl Q(ms )がセットされる。これに対しクロ
ックパルスがカウンタ736ヘセノトされ、そのカウン
ト値がレジスタ735と一致するとノリツブフロップ7
38をセット状態とする。このセット状態でカウンタ7
36をクリアし、再びカウントを再開する。従って一定
時間(10m5ec)ごとKINTVIRQが発生する
Next, FIG. 18 shows an IRQ generation circuit. register 73
5, a counter 736, a comparator 737, and a flip-flop 738 are an INTV IRQ generation circuit, and a register 735 is set to the generation period of II'JTVIRQ, for example, lQ (ms) in this embodiment. In response, a clock pulse is input to the counter 736, and when the count value matches the register 735, the Noritsu flop 7
38 is set. In this set state, counter 7
Clear 36 and restart counting again. Therefore, KINTVIRQ occurs every fixed period of time (10m5ec).

レジスタ741とカウンタ742と比較器743、フリ
ップフロップ744はエンジンの停止を検知するENS
T IFLQの発生回路である。レジスタ741とカウ
ンタ742と比較器743は上の説明と同様であシ、カ
ウント値がレジスタ741の値に達するとENST I
RQを発生する。しかしエンジンの回転中はクランク角
センサよシ一定クランク角毎に発生するREFパルスに
よりカウンタ742がクリアされるのでカウンタ742
のカウント値がレジスタ741の値に達しないのでEN
ST IRQは発生しない。
A register 741, a counter 742, a comparator 743, and a flip-flop 744 are an ENS that detects engine stoppage.
This is a T IFLQ generation circuit. The register 741, the counter 742, and the comparator 743 are the same as those described above, and when the count value reaches the value of the register 741, the ENST I
Generate RQ. However, while the engine is rotating, the counter 742 is cleared by the REF pulse generated by the crank angle sensor at every constant crank angle.
Since the count value does not reach the value of register 741, EN
ST IRQ does not occur.

フリップフロッグ738に発生したI NTVIfLQ
やフリップフロップ744に発生したENST IRQ
さらにADClやADC2で発生したIRQはそれぞれ
フリップフロップ740゜746,764,768ヘセ
ツトされる。またフリップフロップ737,745,7
62,766にはIRQを発生させるか禁止するかの信
号がセットされる。フリップフロップ737,745゜
762.766にH°がセットされていればANDゲー
ト748,750,770,772は能動となり、IR
Qが発生するとORゲートよシただちにIRQが発生す
る。
INTVIfLQ generated in flip frog 738
ENST IRQ generated in flip-flop 744
Furthermore, the IRQs generated by ADCl and ADC2 are set in flip-flops 740.degree. 746, 764, and 768, respectively. Also flip-flops 737, 745, 7
A signal indicating whether to generate or inhibit IRQ is set in 62 and 766. If H° is set in the flip-flops 737, 745°, 762, and 766, the AND gates 748, 750, 770, and 772 become active, and the IR
When a Q occurs, an IRQ is immediately generated by the OR gate.

従ってフリップフロップ737,745,762゜76
6のそれぞれに°H゛を入るか°L°を入るかによって
IR,Qの発生を禁止したり、禁止を解除したりできる
。またIRQが発生するとフリップフロップ740,7
46,764,768の内容をCPUに取シ込むことに
よシ、IRQ発生の原因が解かる。
Therefore, flip-flops 737, 745, 762°76
The generation of IR and Q can be prohibited or canceled depending on whether °H or °L is entered in each of 6. Also, when an IRQ occurs, the flip-flops 740, 7
By importing the contents of 46,764,768 into the CPU, the cause of the IRQ occurrence can be determined.

IRQに応じてCPUがプログラムを実行し始めた場合
、その1几Q信号はクリアする必要があるので実行を始
めたIRQに関するフリップフロップ740,746,
764,768の1つをクリアする。
When the CPU starts executing a program according to the IRQ, the first Q signal needs to be cleared, so the flip-flops 740, 746,
Clear one of 764 and 768.

次に、本発明に係る自動車用電子式エンジン制御装置の
制御について説明する。
Next, control of the automobile electronic engine control device according to the present invention will be explained.

いま、オートマチックミッション車である場合と、マニ
アルミッション車の場合のそれぞれについて説明する。
Now, we will explain the case of an automatic transmission car and the case of a manual transmission car.

クラッチとギヤ位置との関係によッテ、マニアルミッシ
ョンスイッチ48からは、第19図に示す如き信号が制
御回路64に出力される。すなわち、ギヤがニュートラ
ルの位置にある場合、クラッチが「接jの位置すなわち
クラッチが入っているとき、「LOW」レベル(0°)
の信号が出力される。また、ギヤがニュートラルでクラ
ッチが「断」の位置すなわち、切れているときは「LO
W」レベル(“0”)の信号が出力される。また、ギヤ
の位置がニュートラルレンジ以外のときでクラッチが「
接」のとき、すなわち、クラッチが入っているときはU
HIGHJ (”1”)の信号が出力され、クラッチが
切れているときは[LOWJ(”0°)の信号が出力さ
れる。また、オートマチックミッション車の場合は第2
0図の如くなる。すなわちドライブレンジCD)、1速
レンジ(L+)、2速レンジ(L2)のときは「HIG
Jの信号が出力され、前記レンジ以外のときには「LO
Jの信号が出力される。このスイッチ構成は、第21図
の如きものである。オートマチックミッションスイッチ
46は、1個所のスイッチであす、マニアルミッション
スイッチ48は、ギヤスイッチとクラッチスイッチの2
個のスイッチが直列につながっているのと同様の構成と
なっている。
Depending on the relationship between the clutch and gear position, the manual transmission switch 48 outputs a signal as shown in FIG. 19 to the control circuit 64. In other words, when the gear is in the neutral position, the clutch is in the "engaged" position, that is, when the clutch is engaged, the clutch is at the "LOW" level (0°).
signal is output. Also, when the gear is neutral and the clutch is in the "disengaged" position, that is, when it is disengaged, the "LO
A signal of "W" level ("0") is output. Also, when the gear position is outside the neutral range, the clutch
When the clutch is engaged, that is, when the clutch is engaged, the U
A HIGHJ ("1") signal is output, and when the clutch is disengaged, a LOWJ ("0°) signal is output. Also, in the case of automatic transmission vehicles, the second
It will look like Figure 0. In other words, when in the drive range (CD), 1st gear range (L+), or 2nd gear range (L2), the
J signal is output, and when the range is other than the above, "LO
J signal is output. This switch configuration is as shown in FIG. The automatic transmission switch 46 has one switch, and the manual transmission switch 48 has two switches, a gear switch and a clutch switch.
The configuration is similar to that of several switches connected in series.

これらの、オートマチックミッション車か、マニアルミ
ッション車かの判定は、点火時期、l5C(アイドル回
転数制御)、燃料演算を行なう際にそのつど行われる。
These determinations as to whether the vehicle is an automatic transmission vehicle or a manual transmission vehicle are made each time ignition timing, I5C (idle speed control), and fuel calculations are performed.

これらの処理フローを第22図乃至第25図を用いて説
明する。
These processing flows will be explained using FIGS. 22 to 25.

まず、車種選定は、第22図に示す如きフローチャート
によって行われる。すなわち、プログラムがスタートす
ると、まず、ステップ801において、既に車種の選定
を終了したか否かを判定する。すなわち、フラグMTか
フラグATのいずれかが立っているか否か(いずれかの
フラグに°1“がセットされているか否か)を判定する
。いずれかのフラグが立っているとEXITプラグラム
にジャンプする。このステップ801において、車種の
選定を終了していないと判定すると、ステップ802に
おいて、M/TスイッチがONか否がを判定し、(JN
であると、ステップ803におい   ゛てフラグM/
Tをセットする。また、ステップ802においてM/T
スイッチONでないと判定するとステップ804におい
てA/TスイッチONか否かを判定し、ONであれば、
ステップ805においてフラグA/Tに1をセットする
First, vehicle type selection is performed according to a flowchart as shown in FIG. That is, when the program starts, first, in step 801, it is determined whether or not the selection of the vehicle type has already been completed. That is, it is determined whether either flag MT or flag AT is set (whether °1 is set in either flag). If either flag is set, jump to the EXIT program. In this step 801, if it is determined that the vehicle type selection has not been completed, in step 802, it is determined whether the M/T switch is ON or not, and (JN
If so, in step 803 the flag M/
Set T. Also, in step 802, M/T
If it is determined that the switch is not ON, it is determined in step 804 whether the A/T switch is ON, and if it is ON,
In step 805, flag A/T is set to 1.

また、ステップ804において、A/TスイッチONで
ないと判定するとEXITに行く。
Further, in step 804, if it is determined that the A/T switch is not ON, the process goes to EXIT.

次に、点火時期の際のオートマチックミッショ/かマニ
アルミッションかの判定について第23図を用いて説明
する。点火時期演算フローチャートがスタートすると、
まず、ステップ811において、負荷TPO演算を行な
い、ステップ812において、^/Tフラグがセットさ
れているか否かを判定する。このステップ812におい
て、A/Tフラグがセットされていると判定すると、ス
テップ813において、負荷TPと、回転数NとよりA
/T用テーブルから点火時期(A/T用の)を検索する
。また、ステップ812において、A/ T−yラグが
セットされていないと判定すると、ステップ814にお
いて、負荷TPとエンジン速度NとよpMfT用テーブ
ルからM / T用の点火時期を検索する。
Next, the determination of automatic transmission or manual transmission at the time of ignition timing will be explained using FIG. 23. When the ignition timing calculation flowchart starts,
First, in step 811, a load TPO calculation is performed, and in step 812, it is determined whether the ^/T flag is set. If it is determined in step 812 that the A/T flag is set, then in step 813 A
/Search the ignition timing (for A/T) from the T table. If it is determined in step 812 that the A/T-y lag is not set, then in step 814, the ignition timing for M/T is searched from the MfT table based on the load TP and engine speed N.

次にアイドル回転数制御(ISC)についてのマニアル
ミッション車かオートマチックミノンヨン車かの判定に
ついて第24図を用いて説明する。
Next, the determination of whether the vehicle is a manual transmission vehicle or an automatic transmission vehicle regarding idle speed control (ISC) will be explained using FIG. 24.

ISCフローチャートがスタートすると、まず、ステッ
プ821において、エンジン回転数Nを読み出し、ステ
ップ822において、A/Tフラグがセットされている
か否かを判定し、セットされていると判定すると、ステ
ップ823において、エンジン冷却水温TWよシ目標エ
ンジン速度NTをA/T用テーブルから検索してステッ
プ825に移る。また、ステップ822において、A/
Tフラグがセットされていないと判定すると、ステップ
824において、エンジン冷却水温TWより目標エンジ
ン速度NTをM/T用テーブルから検索し、ス・テップ
825において、目標エンジン速度NTと現在のエンジ
ン速度との差ΔNを演算する。このステップ825にお
いて差の速度ΔNを演算すると、ステップ826におい
て、前回の制御量を差の速度分ΔNT補正して新たな制
御量とする。次にステップ827において、新たな制御
量をl10108のl5CDレジスタ142ヘセツトす
る。
When the ISC flowchart starts, first, in step 821, the engine speed N is read, and in step 822, it is determined whether or not the A/T flag is set. If it is determined that the A/T flag is set, then in step 823, The engine cooling water temperature TW and target engine speed NT are searched from the A/T table and the process moves to step 825. Also, in step 822, A/
If it is determined that the T flag is not set, the target engine speed NT is searched from the M/T table based on the engine cooling water temperature TW in step 824, and the target engine speed NT and the current engine speed are compared in step 825. The difference ΔN is calculated. When the speed difference ΔN is calculated in step 825, the previous control amount is corrected by the speed difference ΔNT in step 826 to obtain a new control amount. Next, in step 827, a new control amount is set in the l5CD register 142 of l10108.

次に、燃料量を演算する際のオートマチックミッション
とマニアルミッションの判定について説明する。燃料演
算フローがスタートすると、ステップ831において、
吸入空気量とエンジン速度とよシ負荷TPを演算する。
Next, the determination of automatic transmission and manual transmission when calculating the amount of fuel will be explained. When the fuel calculation flow starts, in step 831,
Calculate the intake air amount, engine speed, and engine load TP.

次に、ステップ832において、A/Tフラグがセット
されているか否かを判定し、セットされていると判定す
ると、ステップ833において、A/T用補正係数KA
の絖出しを行ない、ステップ835に移る。また、ステ
ップ832においてA/Tフラグがセノ1へされていな
いと判定するとステップ834において1〜(/T用補
正係数KMの読出しを行ない、ステップ835において
、 TPx(KM又はKA) より、燃料量を演算する。
Next, in step 832, it is determined whether or not the A/T flag is set. If it is determined that the A/T flag is set, in step 833, the A/T correction coefficient KA
Then, the process moves to step 835. Further, if it is determined in step 832 that the A/T flag is not set to Seno 1, the correction coefficient KM for 1 to (/T is read in step 834, and the fuel amount is determined from TPx (KM or KA) in step 835. Calculate.

以上のように、オートマチツクミツンヨンの場合ト、マ
ニアルミッションの場合は、点火時期、アイドル回転数
制御(工sc)、燃料量の3つの場合に問題となるため
、各フローにおいて、マニアルミッション車か、オート
マチソクミツンヨン車かの判定をその都度性なっている
As mentioned above, in the case of automatic transmission and manual transmission, there are problems in three cases: ignition timing, idle speed control (engineering sc), and fuel amount, so in each flow, manual transmission car The decision is made each time whether it is an automatic or an automatic car.

したがって、本実施例によれば、自動車組立て作業者が
、コントロールユニット内の切換スイッチをセットし忘
れてることによる接続間違いを起すことがない。
Therefore, according to this embodiment, there is no possibility that an automobile assembly worker will make a connection mistake due to forgetting to set the changeover switch in the control unit.

以上説明したように、本発明によれば、オートマチック
ミッションとマニアルミッションの接続間違いを生じる
ことがない。
As explained above, according to the present invention, there is no possibility that the automatic transmission and the manual transmission are connected incorrectly.

【図面の簡単な説明】[Brief explanation of drawings]

第1図はエンジン系統全体の制御装置を示す構成図、第
2図は第1図の点火装置の説明図、第3図は排気ガス環
流システムを説明するための構成図、第4図はエンジン
制御システムの全体構成図、第5図は本発明に係わるエ
ンジン制御方法のプログラムシステムの基本的構成を示
す図、第6図はタスクディスパッチャの管理するRAM
に設けられたタスク制御ブロックのテーブルを示す図、
第7図は各種割込みによシ起動されるタスク群のスター
トアドレステーブルを示す図、第8図及び第9図はタス
クディスパッチャの処理フローを示す図、第10図はマ
クロ処理プログラムの処理フローを示す図、第11図は
タスク優先制御の一例を示す図、第12図は上記タスク
優先制御に於けるタスクの状態遷移を示す図、第13図
は第6図に於ける具体的フローを示す図、第14図は空
気量信号処理タスクのフローチャート、第15図は1(
、AMに設けられたソフトタイマテーブルを示す図、第
16図はINTV割込み処理プログラムの処理フローを
示す図、第17図はエンジンの運転状態に応じて各種タ
スクの起動停止が行なわれる様子を示したタイミングチ
ャート、第18図は割込みIRQの発生回路、第19図
はマニアルミッションスイッチからの水力信号を示す図
、第20図はオートマチックミッションスイッチからの
出力信号を示す図、第21図は各ミッションの接続構成
図、第22図は車種選定フローチャート、第23図は点
火時期制御フローチャート、第24図はISOフローチ
ャート、第25図は燃料演算フローチャートである。 46・・・オートマチックミッションスイッチ、48・
・・マニアルミッションスイッチ、64・・・制御回路
、102・・・CPU、104・・・ROM、106・
・・唄第5図 第8図 第q図 Y73(21 革74=図 〒7b図 第73図 −240− 第23(2) 蹟?4−口
Figure 1 is a configuration diagram showing the control device for the entire engine system, Figure 2 is an explanatory diagram of the ignition system in Figure 1, Figure 3 is a configuration diagram to explain the exhaust gas recirculation system, and Figure 4 is the engine An overall configuration diagram of the control system, FIG. 5 is a diagram showing the basic configuration of the program system for the engine control method according to the present invention, and FIG. 6 is a diagram showing the RAM managed by the task dispatcher.
A diagram showing a table of task control blocks provided in
Figure 7 is a diagram showing the start address table of task groups activated by various interrupts, Figures 8 and 9 are diagrams showing the processing flow of the task dispatcher, and Figure 10 is a diagram showing the processing flow of the macro processing program. 11 is a diagram showing an example of task priority control, FIG. 12 is a diagram showing task state transition in the above task priority control, and FIG. 13 is a diagram showing a specific flow in FIG. 6. Figure 14 is a flowchart of the air amount signal processing task, and Figure 15 is 1 (
, a diagram showing the soft timer table provided in the AM, FIG. 16 is a diagram showing the processing flow of the INTV interrupt processing program, and FIG. 17 shows how various tasks are started and stopped depending on the operating state of the engine. Figure 18 shows the interrupt IRQ generation circuit, Figure 19 shows the hydraulic signal from the manual mission switch, Figure 20 shows the output signal from the automatic mission switch, and Figure 21 shows the output signal for each mission. 22 is a vehicle type selection flowchart, FIG. 23 is an ignition timing control flowchart, FIG. 24 is an ISO flowchart, and FIG. 25 is a fuel calculation flowchart. 46... automatic mission switch, 48...
...Manual mission switch, 64...Control circuit, 102...CPU, 104...ROM, 106...
...Song Figure 5 Figure 8 Figure q Y73 (21 Leather 74 = Figure 7b Figure 73-240- Chapter 23 (2) ?4-mouth

Claims (1)

【特許請求の範囲】[Claims] 1、 エンジンの点火時期、供給燃料量等全てのエンジ
ン制御を行なうものにおいて、特性のそれぞれ異なる複
数のエンジンの全ての特性を備えた1個のコントロール
ユニットと、該コントロールユニットにエンジン特性に
対応した複数の入力端子とを設け、エンジン状態を検出
する信号の入力される端子によって尚該自動車のエンジ
ン特性を選定する機能を上記コントロールユニツ)K持
たせたことを特徴とする電子式エンジン制御装置。
1. For those that perform all engine control such as engine ignition timing and fuel supply amount, one control unit has all the characteristics of multiple engines with different characteristics, and the control unit has a control unit that corresponds to the engine characteristics. 1. An electronic engine control device, characterized in that said control unit is provided with a plurality of input terminals, and has a function of selecting engine characteristics of said automobile by means of said terminal into which a signal for detecting an engine state is input.
JP13843681A 1981-09-04 1981-09-04 Electronic engine control system for motorcar Pending JPS5841242A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP13843681A JPS5841242A (en) 1981-09-04 1981-09-04 Electronic engine control system for motorcar

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP13843681A JPS5841242A (en) 1981-09-04 1981-09-04 Electronic engine control system for motorcar

Publications (1)

Publication Number Publication Date
JPS5841242A true JPS5841242A (en) 1983-03-10

Family

ID=15221931

Family Applications (1)

Application Number Title Priority Date Filing Date
JP13843681A Pending JPS5841242A (en) 1981-09-04 1981-09-04 Electronic engine control system for motorcar

Country Status (1)

Country Link
JP (1) JPS5841242A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61229920A (en) * 1985-04-01 1986-10-14 Toyota Motor Corp Cooling controller of radiator for vehicle
JPH04100103U (en) * 1991-01-31 1992-08-28
JPH04339158A (en) * 1991-05-16 1992-11-26 Kokusan Denki Co Ltd Controller for internal combustion engine

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS51136043A (en) * 1975-05-20 1976-11-25 Nissan Motor Co Ltd Internal combustion engine knocking automatic pursuit device
JPS55125334A (en) * 1979-03-19 1980-09-27 Nissan Motor Co Ltd Fuel controller

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS51136043A (en) * 1975-05-20 1976-11-25 Nissan Motor Co Ltd Internal combustion engine knocking automatic pursuit device
JPS55125334A (en) * 1979-03-19 1980-09-27 Nissan Motor Co Ltd Fuel controller

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61229920A (en) * 1985-04-01 1986-10-14 Toyota Motor Corp Cooling controller of radiator for vehicle
JPH04100103U (en) * 1991-01-31 1992-08-28
JPH04339158A (en) * 1991-05-16 1992-11-26 Kokusan Denki Co Ltd Controller for internal combustion engine

Similar Documents

Publication Publication Date Title
CN100467842C (en) Control device for internal combustion engine
US4482962A (en) Engine control method
EP0065221B1 (en) Internal combustion engine control apparatus
CN101251050A (en) Multiple injection blend for direct injected engines
US4469072A (en) Method and apparatus for controlling the fuel-feeding rate of an internal combustion engine
US4363097A (en) Electronic type engine control method
CN101421502B (en) Vehicle control method and vehicle control device
US6796293B2 (en) Method for starting an internal combustion engine and starter device for an internal combustion engine
JPH0375740B2 (en)
JPS5996455A (en) Engine controller
EP0106366B1 (en) Control method for internal combustion engines
JPS5841242A (en) Electronic engine control system for motorcar
EP0030114B1 (en) Method for starting an operation of an internal combustion engine and apparatus therefor
US4528964A (en) Fuel injection control apparatus for internal combustion engine
JPH0138176B2 (en)
JPS5974339A (en) Fuel injector
EP0077533B1 (en) Electronic control method and apparatus for internal combustion engines
JPS5841361A (en) Electronic type engine controller
JP2002349688A (en) Variable speed control device
JPS58158341A (en) Controller for idling of internal-combustion engine
JPS5974337A (en) Fuel injector
JPS6254979B2 (en)
JPS63314352A (en) Engine controller
JPH0118256B2 (en)
JPS58150046A (en) Fuel injection controller