JPH075601A - Camera check system - Google Patents

Camera check system

Info

Publication number
JPH075601A
JPH075601A JP21812491A JP21812491A JPH075601A JP H075601 A JPH075601 A JP H075601A JP 21812491 A JP21812491 A JP 21812491A JP 21812491 A JP21812491 A JP 21812491A JP H075601 A JPH075601 A JP H075601A
Authority
JP
Japan
Prior art keywords
data
dtc
camera
executed
output
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
JP21812491A
Other languages
Japanese (ja)
Inventor
Isamu Hashimoto
勇 橋本
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.)
Pentax Corp
Original Assignee
Asahi Kogaku Kogyo Co 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 Asahi Kogaku Kogyo Co Ltd filed Critical Asahi Kogaku Kogyo Co Ltd
Priority to JP21812491A priority Critical patent/JPH075601A/en
Publication of JPH075601A publication Critical patent/JPH075601A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To irreducibly minimize the development of software dedicated in check and adjustment by enabling a certain part of a program mounted on a camera to use also for check and adjustment of the function of the camera. CONSTITUTION:This system is provided with the camera 33 having a central processing circuit 11 for performing a main processing for the camera 33 and a peripheral circuit connected to the central processing circuit 11, and a computer 30 capable of connecting to the central processing circuit 11 and provided with a command for executing the check and adjustment of the function of the camera through the central processing circuit 11. The command provided in the central processing circuit 11 and executing the check and adjustment of the function of the camera 33 has the function addressing and executing an optional subroutine such as the subroutine software for operating the central processing circuit 11 and the peripheral circuit by the computer 30.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【技術分野】本発明は、カメラ機能をチェック調整する
カメラのチェックシステムに関する。
TECHNICAL FIELD The present invention relates to a camera check system for checking and adjusting camera functions.

【0002】[0002]

【従来技術およびその問題点】近時、カメラの電子化に
伴い、アナログ回路の調整、受光素子の受光レベルの、
レンズの補正データの設定、各回路素子のチェック等、
様々なチェック調整処理のため、これらの各項目に応じ
た、計算機と中央処理回路用の多量のチェック用のソフ
トが必要とされている。
2. Description of the Related Art Recently, along with the computerization of cameras, the adjustment of analog circuits, the light receiving level of light receiving elements,
Setting lens correction data, checking each circuit element, etc.
Due to various check adjustment processes, a large amount of checking software for the computer and the central processing circuit corresponding to each of these items is required.

【0003】これにより、チェック調整用ソフトの開発
に要する時間は益々増大され、チェック調整用のソフト
の容量も益々増大されている。
As a result, the time required for developing the check adjusting software is increasing more and more, and the capacity of the check adjusting software is also increasing more and more.

【0004】[0004]

【発明の目的】本発明は、カメラに搭載したプログラム
の一部を、カメラ機能のチェック調整に兼用できるよう
にして、チェック調整専用ソフトの開発を必要最小限に
することを目的とする。
SUMMARY OF THE INVENTION It is an object of the present invention to allow a part of a program installed in a camera to be used also for check adjustment of camera functions, thereby minimizing the development of check adjustment dedicated software.

【0005】[0005]

【発明の概要】本発明は、カメラのメイン処理を行なう
中央処理回路、およびこの中央処理回路に接続された周
辺回路を有するカメラと、中央処理回路との接続が可能
で、この中央処理回路を介してカメラ機能のチェック調
整を行なうコマンドを有する計算機とを有し、中央処理
回路に備えられた、カメラの機能のチェック調整を行な
うコマンドにおいて、中央処理回路と周辺回路を動作さ
せるサブルーチンソフト等の任意のサブルーチンを上記
計算機からアドレス指定して実行させる機能を有するこ
とを特徴とする。
SUMMARY OF THE INVENTION The present invention is capable of connecting a camera having a central processing circuit for performing main processing of a camera and a peripheral circuit connected to the central processing circuit to the central processing circuit. A computer having a command for adjusting and checking the camera function via the computer, and a subroutine software for operating the central processing circuit and peripheral circuits in the command for checking and adjusting the camera function provided in the central processing circuit. It is characterized in that it has a function of addressing and executing an arbitrary subroutine from the computer.

【0006】[0006]

【発明の実施例】以下図示実施例に基づいて本発明を説
明する。図1Aは、本実施例の制御ブロックを示す図で
ある。中央処理回路11は、内部にA/D変換器12、
インターバルタイマ13およびROM14a、RAM1
4bを有するマイクロコンピュータ(以後マイコンとい
う)である。中央処理回路11には、アナログ信号Aと
通信ラインBを介してBV検出部18とEEPROM1
9と外部データ操作F20が接続されている。中央処理
回路11にはさらに、発振器15、LCD表示器26、
レンズ情報入力部27、パトローネ情報入力部28、ス
イッチ情報入力部29、シーケンス制御部32、レギュ
レータ16、バッテリ21と接続されたDC/DCコン
バータ17が接続されている。
BEST MODE FOR CARRYING OUT THE INVENTION The present invention will be described below with reference to illustrated embodiments. FIG. 1A is a diagram showing a control block of this embodiment. The central processing circuit 11 includes an A / D converter 12,
Interval timer 13 and ROM 14a, RAM1
It is a microcomputer having 4b (hereinafter referred to as a microcomputer). In the central processing circuit 11, the BV detector 18 and the EEPROM 1 are connected via the analog signal A and the communication line B.
9 and the external data operation F20 are connected. The central processing circuit 11 further includes an oscillator 15, an LCD display 26,
The lens information input unit 27, the cartridge information input unit 28, the switch information input unit 29, the sequence control unit 32, the regulator 16, and the DC / DC converter 17 connected to the battery 21 are connected.

【0007】外部データ操作F20は、通信ラインBに
接続された端子群Cを介して中央処理回路11に接続さ
れている。この外部データ操作部20は、DTC30
と、端子群CおよびDTC30に接続されるインターフ
ェース31(図1B)を有している。これらのDTC3
0とインターフェース31は、通信端子群Dを介して互
いに接続されている。
The external data operation F20 is connected to the central processing circuit 11 via a terminal group C connected to the communication line B. The external data operating unit 20 is a DTC 30.
And an interface 31 (FIG. 1B) connected to the terminal group C and the DTC 30. These DTC3
0 and the interface 31 are connected to each other via the communication terminal group D.

【0008】バッテリ21は、カメラ33のシステム
に、メイン電源を接続する。本実施例では、このカメラ
33を一眼レフカメラとして説明するが、本発明の適用
は一眼レフカメラに限られるものではなく、電子回路を
有するカメラであれば他のいかなるものにも適用可能で
ある。レギュレータ16は、バッテリ21の電圧を入力
し、中央処理回路11に一定の電圧を出力する。DC/
DCコンバータ17は、バッテリ電圧を入力し、中央処
理回路11からのパワーホールド信号を入力して周辺回
路に電源を出力する。BV検出部18は、中央処理回路
11からの制御により指定されたBV情報を中央処理回
路11に出力する。発振器15は、中央処理回路11に
高速と低速のクロック信号を供給する。
The battery 21 connects the main power supply to the system of the camera 33. In this embodiment, the camera 33 is described as a single-lens reflex camera, but the application of the present invention is not limited to the single-lens reflex camera, and any other camera having an electronic circuit can be applied. . The regulator 16 inputs the voltage of the battery 21 and outputs a constant voltage to the central processing circuit 11. DC /
The DC converter 17 inputs the battery voltage, inputs the power hold signal from the central processing circuit 11, and outputs power to the peripheral circuits. The BV detector 18 outputs the BV information designated by the control of the central processing circuit 11 to the central processing circuit 11. The oscillator 15 supplies high-speed and low-speed clock signals to the central processing circuit 11.

【0009】LCD表示器26は、中央処理回路11か
らのLCD表示データを表示する。レンズ情報入力部2
7は、装着されているレンズの種類により、レンズのA
/M、開放絞り、最小絞り、および焦点距離等の情報を
中央処理回路11に出力する。パトローネ情報入力部2
8は、パトローネの有無、フィルムの感度等の情報を中
央処理回路11に出力する。スイッチ情報入力部29
は、ミラーアップスイッチ、ミラーダウンスイッチ、フ
ィルムスイッチ、レリーズスイッチ、測光スイッチ、リ
ワインドスイッチ、裏蓋スイッチ、UP/DOWNスイ
ッチおよびモード設定スイッチの情報を中央処理回路1
1に出力する。
The LCD display 26 displays the LCD display data from the central processing circuit 11. Lens information input section 2
7 is the lens A depending on the type of lens attached.
Information such as / M, open aperture, minimum aperture, and focal length is output to the central processing circuit 11. Patrone information input section 2
Reference numeral 8 outputs information such as the presence or absence of a cartridge and the sensitivity of the film to the central processing circuit 11. Switch information input section 29
Is the central processing circuit 1 for the information of the mirror up switch, the mirror down switch, the film switch, the release switch, the photometric switch, the rewind switch, the back cover switch, the UP / DOWN switch and the mode setting switch.
Output to 1.

【0010】シーケンス制御部32は、中央処理回路1
1の信号によりミラーの制御、フィルムの露光およびフ
ィルムの巻き上げ等の制御を行なう。EEPROM19
は、中央処理回路11と通信ラインBを介して接続され
ており、EEPROMデータの読み出し/書き込みを行
なう。外部データ操作部20は、中央処理回路11と端
子群Cを介して接続され、中央処理回路11を介してカ
メラの調整、機能のチェック、仕様変更および撮影情報
の入力等を行なう。
The sequence control unit 32 includes a central processing circuit 1.
The signal 1 controls the mirror, the exposure of the film and the winding of the film. EEPROM 19
Is connected to the central processing circuit 11 via a communication line B, and reads / writes EEPROM data. The external data operating unit 20 is connected to the central processing circuit 11 via the terminal group C, and adjusts the camera, checks the functions, changes the specifications, inputs photographing information, and the like via the central processing circuit 11.

【0011】DTC(計算機)30は、カメラ機能チェ
ックRAM、EEPROMのセットダンプ等を行なうソ
フトを有するコンピュータである。DTC30は、EE
PROM19にソフト的にデータを書き込みたいとき書
込モードに設定し、このときスタックがOKであれば確
実に書き込むことができる。
A DTC (computer) 30 is a computer having software for performing a camera function check RAM, a set dump of EEPROM, and the like. DTC30 is EE
When it is desired to write data to the PROM 19 by software, the writing mode is set, and if the stack is OK at this time, writing can be surely performed.

【0012】インターフェース31とDTC30とは、
16ビット信号により相互に通信されるが、この通信の
タイムシーケンスを図2に示す。この中でインターフェ
ース31は、カメラ33から取り込んだ信号を16ビッ
ト信号に変換してDTC30と通信させる機能を有して
いる。図中の“PCTL”と“PFLAG”は、データ
のハンドシェイクを行なうための制御信号であり、“D
O15〜0”と“DI15〜0”により16ビットの入
出力を実行する。“CTL0”と“CTL1”の組み合
わせにより、テストコードであるか否かの判断を行な
う。
The interface 31 and the DTC 30 are
The 16-bit signals communicate with each other, and the time sequence of this communication is shown in FIG. Among them, the interface 31 has a function of converting a signal taken in from the camera 33 into a 16-bit signal and communicating with the DTC 30. "PCTL" and "PFLAG" in the figure are control signals for performing a data handshake,
16-bit input / output is executed by O15-0 "and" DI15-0 ". Whether or not the code is a test code is determined by the combination of" CTL0 "and" CTL1 ".

【0013】DTC30からデータを出力する場合、D
TC30は、I/Oを“L(ロー)”に設定し、PCT
Lを下げる以前に“DO15〜0”の送信データを確定
させる。次にPCTLを立ち下げて、データの入力要求
をインターフェース31を介して中央処理回路11に出
力する。PCTLの“L”を中央処理回路11が検出す
ると、中央処理回路11はインターフェース31を介し
て“DO15〜0”を入力する。そして、中央処理回路
11側は必要なデータを取り込んだということで、PF
LAGを立ち下げる。PFLAGが下がったことをイン
ターフェース31を介してDTC30が検出すると、D
TC30は次のデータの通信を可能にするためにPCT
Lを立ち上げる。インターフェース31を介して中央処
理回路11がPCTLの“H(ハイ)”を検出すると、
中央処理回路11は次のDTC30からの通信を許可す
るためにPFLAGを立ち上げる。DTC30と中央処
理回路11は、PCTLとPFLAGとを用いて、この
ような形でハンドシェイクを行なって、DTC30から
中央処理回路11にコマンド又はデータを出力する。な
お、コマンドとデータの区別について述べると、DTC
30は、CTL0が“H”の場合はテストコードの通
信、CTL0が“L”の場合はテストコードに付随した
データの通信として出力している。CTL1が“H”か
“L”かで、DTC30側からテスト要求があるか否か
をみることができ、“H”であれば“テスト要求あり”
とされ、“L”であれば“テスト要求なし”とされる。
When data is output from the DTC 30, D
TC30 sets I / O to "L (low)" and
Before lowering L, the transmission data of "DO15-0" is fixed. Next, the PCTL is turned off and a data input request is output to the central processing circuit 11 via the interface 31. When the central processing circuit 11 detects “L” of PCTL, the central processing circuit 11 inputs “DO15 to 0” via the interface 31. Then, since the central processing circuit 11 side has fetched the necessary data, the PF
Shut down LAG. When the DTC 30 detects that PFLAG has dropped through the interface 31, DTC 30
TC30 is a PCT to enable communication of the next data.
Start up L. When the central processing circuit 11 detects “H (high)” of PCTL via the interface 31,
The central processing circuit 11 activates PFLAG to permit communication from the next DTC 30. The DTC 30 and the central processing circuit 11 use PCTL and PFLAG to perform a handshake in this manner, and the DTC 30 outputs a command or data to the central processing circuit 11. The distinction between command and data is DTC.
30 outputs as test code communication when CTL0 is "H", and as data communication accompanying the test code when CTL0 is "L". Whether or not there is a test request from the DTC 30 side can be checked based on whether CTL1 is "H" or "L". If "H", "test request"
If “L”, it means “no test request”.

【0014】DTC30にデータを入力する場合、DT
C30は、I/Oを“H”の状態に設定し、PCTLを
立ち下げる。インターバルタイマ31を介してPCTL
の“L”を中央処理回路11が検出すると、中央処理回
路11側は、そのときのコマンドに応じたデータをイン
ターフェース31を介して“DI15〜0”に出力させ
る。そして、インターフェース31を介してPFLAG
(Pフラグ)の“L”をDTC30に出力し、データの
入力を指示する。その後、上述同様のハンドシェイクを
実行して、DTC30側にデータを読み込ませる。
When inputting data to the DTC 30, the DT
The C30 sets the I / O to the "H" state and causes the PCTL to fall. PCTL via interval timer 31
When the central processing circuit 11 detects "L" of "1", the central processing circuit 11 side outputs data corresponding to the command at that time to "DI15-0" via the interface 31. Then, through the interface 31, PFLAG
"L" of (P flag) is output to the DTC 30 to instruct data input. After that, the same handshake as described above is executed to cause the DTC 30 side to read the data.

【0015】図3Aに、DTC30とインターフェース
31、およびカメラ33の接続関係を示す。インターフ
ェース31は、カメラ33からのチップイネーブル信号
(DCE)により動作可能となる。インターフェース3
1は、カメラ33側の信号により、CTL1と“DO1
5〜8”等のデータを切り替えてカメラ33に出力する
データ切替ブロック34、DTC30からのパラレルデ
ータをカメラ33からのシリアルクロックに同期してシ
リアル変換し、データ切替ブロック34に出力するため
のパラレル/シリアル変換ブロック35、カメラ33か
らの1バイトごとのシリアルクロックに応じてラッチパ
ルスを発生するラッチパルス発生ブロック36、シリア
ル信号をパラレル信号に変換させ、各ラッチブロックに
出力するシリアル/パラレル変換ブロック38、カメラ
33から出力される“DI15〜0”のシリアル信号の
上位8ビットをラッチし、DTC30に出力する上位8
bitラッチブロック37、同様に下位8ビットをラッ
チしDTC30に出力する下位8bitラッチブロック
39、同様にカメラ33から出力されるPFLAGのシ
リアル信号をPFLAG信号をラッチし、DTC30に
出力するPFLAG信号ラッチブロック40を有してい
る。
FIG. 3A shows the connection relationship between the DTC 30, the interface 31, and the camera 33. The interface 31 can be operated by a chip enable signal (DCE) from the camera 33. Interface 3
1 is CTL1 and “DO1” according to the signal from the camera 33 side.
A data switching block 34 for switching data such as 5-8 "and outputting it to the camera 33, a parallel data for converting parallel data from the DTC 30 into serial data in synchronization with a serial clock from the camera 33, and outputting the parallel data to the data switching block 34. / Serial conversion block 35, latch pulse generation block 36 for generating a latch pulse according to a serial clock for each byte from the camera 33, serial / parallel conversion block for converting a serial signal into a parallel signal and outputting it to each latch block 38, the upper 8 bits of the “DI15 to 0” serial signal output from the camera 33 are latched and output to the DTC 30.
A bit latch block 37, a lower 8 bit latch block 39 which similarly latches the lower 8 bits and outputs it to the DTC 30, and a PFLAG signal latch block which similarly latches the PFLAG serial signal output from the camera 33 and outputs the PFLAG signal to the DTC 30. Has 40.

【0016】インターフェース31とDTC30を接続
する通信端子群Dは、端子41(CTL1)、端子42
(DO15〜8)、端子43(DO7〜0)、端子44
(CTLO、PCTL、I/O)、端子45(DI15
〜8)、端子46(DI7〜0)、および端子47(P
FLAG)を有する。
The communication terminal group D connecting the interface 31 and the DTC 30 includes a terminal 41 (CTL1) and a terminal 42.
(DO15 to 8), terminal 43 (DO7 to 0), terminal 44
(CTLO, PCTL, I / O), terminal 45 (DI15
~ 8), terminal 46 (DI7-0), and terminal 47 (P
FLAG).

【0017】カメラ33とインターフェース31を接続
する端子群Cは、端子48(SI)、端子49(DC
E)、端子50(SCK)、端子51(SO)を有して
いる。端子48(SI)は、カメラ33側で抵抗53に
よりプルアップされている。これらの端子48〜51
は、通常はユーザーが使用することのない端子であり、
カメラ33の外部に露出されてはいない。
The terminal group C for connecting the camera 33 and the interface 31 includes a terminal 48 (SI) and a terminal 49 (DC
E), a terminal 50 (SCK), and a terminal 51 (SO). The terminal 48 (SI) is pulled up by the resistor 53 on the camera 33 side. These terminals 48-51
Is a terminal that the user normally does not use,
It is not exposed to the outside of the camera 33.

【0018】端子48(SI)は、カメラ33側に、シ
リアルクロックに応じてデータを出力する端子である。
CTL1は、“H”でテスト要求であり(図2)、CT
L1の選択時、カメラ33側にはデータ切替ブロック3
4で反転して、SI端子に“L”が出力される。カメラ
33側では、CTL1の“L”を入力することによっ
て、DTC30側からのテスト要求がある、と判断する
ことができる。端子49(DCE)はチップイネーブル
であり、カメラ33からインターフェース31に対して
データの入出力を要求するための信号であり、“L”で
要求、“H”で、インターフェース31から信号が出な
いように禁止することができる。端子50(SCK)
は、カメラ33とDTC30とが相互にシリアル通信す
るためのシリアルクロックをインターフェース31に供
給する端子である。端子51(SO)は、カメラ33か
らインターフェース31にシリアルデータを出力する端
子である。
The terminal 48 (SI) is a terminal for outputting data to the camera 33 side according to the serial clock.
CTL1 is a test request at "H" (Fig. 2), and CT
When L1 is selected, the data switching block 3 is provided on the camera 33 side.
It is inverted at 4, and "L" is output to the SI terminal. By inputting "L" of CTL1 on the camera 33 side, it can be determined that there is a test request from the DTC 30 side. The terminal 49 (DCE) is a chip enable and is a signal for requesting the input / output of data from the camera 33 to the interface 31. A request is made with "L", and a signal is not outputted from the interface 31 with "H". Can be banned as Terminal 50 (SCK)
Is a terminal that supplies a serial clock for serial communication between the camera 33 and the DTC 30 to the interface 31. The terminal 51 (SO) is a terminal for outputting serial data from the camera 33 to the interface 31.

【0019】パラレル/シリアル変換ブロック35は、
端子42〜44および端子49、50に接続されてお
り、チップイネーブルされているときにシリアルクロッ
クに同期してデータ切替ブロック34にシリアルデータ
を出力する。このデータ切替ブロック34は、端子41
およびブロック35の出力、端子49と端子50に接続
されており、CTL1の出力と、シリアルクロックに応
じて端子42〜44から出力されパラレル/シリアル変
換された出力とを切り替え、端子48(SI)に出力す
る。データ切替ブロック34は、常時はオープンにされ
ていて、チップイネーブルがかかってクロックが出てく
るまでCTL1を選択出力している。ラッチパルス発生
ブロック36は、端子49、50、51に接続されてお
り、上位8bitラッチブロック37、下位8bitラ
ッチブロック39およびPFLAG信号ラッチブロック
40にラッチクロックを出力する。シリアル/パラレル
変換ブロック38は、端子49〜51に接続されてお
り、8bitのシリアルデータをパラレルデータに変換
させて、上位8bitラッチブロック37、下位8bi
tラッチブロック39およびPFLAG信号ラッチブロ
ック40に8bitパラレルデータを出力する。該ラッ
チブロック38、39、40は、ラッチパルス発生ブロ
ック36から出力されてくるラッチ信号に応じて、シリ
アル/パラレル変換ブロック38からのパラレルデータ
をラッチする。
The parallel / serial conversion block 35 includes
It is connected to the terminals 42 to 44 and the terminals 49 and 50, and outputs the serial data to the data switching block 34 in synchronization with the serial clock when the chip is enabled. This data switching block 34 has a terminal 41
Also, the output of the block 35, which is connected to the terminals 49 and 50, switches between the output of the CTL1 and the parallel / serial converted outputs output from the terminals 42 to 44 in accordance with the serial clock, and the terminal 48 (SI). Output to. The data switching block 34 is normally open and selectively outputs CTL1 until a clock is output due to chip enable. The latch pulse generation block 36 is connected to the terminals 49, 50 and 51 and outputs a latch clock to the upper 8-bit latch block 37, the lower 8-bit latch block 39 and the PFLAG signal latch block 40. The serial / parallel conversion block 38 is connected to the terminals 49 to 51, converts 8-bit serial data into parallel data, and outputs the upper 8-bit latch block 37 and the lower 8-bit.
8 bit parallel data is output to the t latch block 39 and the PFLAG signal latch block 40. The latch blocks 38, 39 and 40 latch the parallel data from the serial / parallel conversion block 38 according to the latch signal output from the latch pulse generation block 36.

【0020】上位8bitラッチブロック37は、ラッ
チパルス発生ブロック36とシリアル/パラレル変換ブ
ロック38の出力に接続されており、端子45にDI1
5〜8データを出力する。下位8bitラッチブロック
39は、ラッチパルス発生ブロック36とシリアル/パ
ラレル変換ブロック38の出力に接続されており、端子
46にDI7〜0データを出力する。PFLAG信号ラ
ッチブロック40は、ラッチパルス発生ブロック36と
シリアル/パラレル変換ブロック38の出力に接続され
ており、端子47にPFLAG信号を出力する。
The upper 8-bit latch block 37 is connected to the outputs of the latch pulse generation block 36 and the serial / parallel conversion block 38, and DI1 is connected to the terminal 45.
Output 5-8 data. The lower 8-bit latch block 39 is connected to the outputs of the latch pulse generation block 36 and the serial / parallel conversion block 38, and outputs DI7-0 data to the terminal 46. The PFLAG signal latch block 40 is connected to the outputs of the latch pulse generation block 36 and the serial / parallel conversion block 38, and outputs the PFLAG signal to the terminal 47.

【0021】図3Bに、上記各端子から入出力される信
号のタイミングを示す。端子49(DCE)が“H”の
とき、チップイネーブルをかける以前に、しかるべきシ
リアル通信を行ない、ノットセル(NOTSEL)の状
態にする。このノットセルはいわば、中央処理回路11
と、EEPROM19およびBV検出部18の間の通信
ラインをカットして、該中央処理回路11と外部データ
操作F20との通信を行なわせるための準備段階であ
る。次にカメラ33はチップイネーブル(DCE)を
“L”にする。この状態でシリアルクロックを出すまで
はSI端子のレベルによりDTC30のCTL1信号の
レベルをチェックすることができる。SI端子が“L”
のときはDTC30からのTEST要求あり(CTL1
=1)であり、逆に、SI端子が“H”のときはDTC
30からのTEST要求はない。
FIG. 3B shows the timing of signals input and output from the above terminals. When the terminal 49 (DCE) is at "H", appropriate serial communication is performed and a knot cell (NOTSEL) state is set before the chip enable is applied. This knot cell is, so to speak, the central processing circuit 11
Is a preparatory stage for cutting the communication line between the EEPROM 19 and the BV detecting section 18 to allow the central processing circuit 11 to communicate with the external data operation F20. Next, the camera 33 sets the chip enable (DCE) to "L". Until the serial clock is output in this state, the level of the CTL1 signal of the DTC 30 can be checked by the level of the SI terminal. SI terminal is "L"
In case of, there is a TEST request from DTC 30 (CTL1
= 1), conversely, when the SI terminal is "H", DTC
There is no TEST request from 30.

【0022】次にシリアル通信を行なうと、最初のシリ
アル通信では、端子48(SI)からPCTLに関する
データ(I/O、CTLOのデータも含む)が、カメラ
33側に出力される。この最初の8ビットのシリアル通
信に対し、端子51(SO)から、PFLAGに関する
データ、つまりPフラグが立っているか否かのデータが
カメラ33から出力される。続けてシリアルクロックを
出力すると、端子48(SI)にDO7〜0、端子51
(SO)にはDI7〜0のデータ、さらに続けてシリア
ルクロックを出力すると、端子48(SI)にはDO1
5〜8、端子51(SO)にはDI15〜8のデータが
シリアル通信される。シリアル通信は、チップイネーブ
ルの後、8ビット単位で0〜3回有効であり、その範囲
でチップイネーブルを途中でOFFして通信を止めるこ
とができる。
Next, when serial communication is performed, in the first serial communication, data relating to PCTL (including data of I / O and CTLO) is output from the terminal 48 (SI) to the camera 33 side. For this first 8-bit serial communication, data relating to PFLAG, that is, data indicating whether or not the P flag is set is output from the camera 33 from the terminal 51 (SO). When the serial clock is continuously output, DO7-0 and terminal 51 are output to the terminal 48 (SI).
When the data of DI7-0 is output to (SO) and the serial clock is output continuously, DO1 is output to the terminal 48 (SI).
5 to 8 and terminals 51 (SO) serially communicate data of DI 15 to 8. The serial communication is effective 0 to 3 times in 8-bit units after the chip enable, and the chip enable can be turned off in the range to stop the communication.

【0023】図4〜図23に示すフローチャートによ
り、本実施例のカメラ33およびDTC30の作動を説
明する。図21以外はカメラ側のフローチャートであ
る。図4と図5は、“VDD OFFループ”つまりメ
イン電源を入れる前の通常の動作を示している。まず
“RESET”のラベルで始まるルーチンに入る。ステ
ップS1では、スタックポインタの初期設定を実行し、
S2では、RAMオールクリア、ポート入出力、出力デ
ータの設定および特殊レジスタの設定等の“リセット処
理”を実行し、“SW1CHK”のラベルで始まるルー
チンに進む。
The operation of the camera 33 and the DTC 30 of this embodiment will be described with reference to the flow charts shown in FIGS. Other than FIG. 21, the flowchart is on the camera side. 4 and 5 show a "VDD OFF loop", that is, a normal operation before the main power is turned on. First, the routine starting with the label "RESET" is entered. In step S1, the stack pointer is initialized,
In S2, "reset processing" such as RAM all clear, port input / output, output data setting and special register setting is executed, and the routine proceeds to the routine starting with the label "SW1CHK".

【0024】S3では、VDD ONフラグをクリア
し、S4では、スタックポインタの再設定を実行し、S
5では、“TEST”のラベルで始まるサブルーチンを
コールして“TESTチェック処理”を実行する。S6
では、DTC30からのテスト要求があるか否かを判断
し、要求があればS7に進み、なければS8に進む。S
8では、UP/DOWNスイッチおよびモード設定スイ
ッチをモニターし、データ変更等の“UP/DOWN処
理”を実行する。S9では、UP/DOWN処理等で設
定された内部データの表示を行なう“LCD表示処理”
を実行する。S10では、測光スイッチがONされたか
否かを判断し、ONされればS7に進んでVDD ON
フラグをセットし、そうでなければS11に進む。S1
1では、レリーズスイッチがONされているか否かを判
断し、ONされればS7に進み、そうでなければS12
に進む。S12では、VDDをOFFしてパワーホール
ドをOFFし、S13では、タイマ割り込み許可を実行
する。S14では“パワーダウン処理”を実行してパワ
ーダウンモードに入る。所定時間後、タイマ割り込みが
かかり、S15にて“タイマ割り込み処理”を実行す
る。このS14とS15の間で、パワーダウンすること
により消費電流を抑える。S16では“タイマ割り込み
禁止”を実行し、“SW1CHK”のラベルにループす
る。
In S3, the VDD ON flag is cleared, and in S4, the stack pointer is reset, and S
In 5, the subroutine starting with the label "TEST" is called to execute the "TEST check process". S6
Then, it is determined whether or not there is a test request from the DTC 30, and if there is a request, the process proceeds to S7, and if not, the process proceeds to S8. S
In 8, the UP / DOWN switch and the mode setting switch are monitored, and "UP / DOWN processing" such as data change is executed. In S9, "LCD display process" for displaying the internal data set in the UP / DOWN process or the like.
To execute. In S10, it is determined whether or not the photometric switch is turned on. If it is turned on, the process proceeds to S7 and VDD is turned on.
Set the flag, otherwise proceed to S11. S1
In 1, it is determined whether or not the release switch is turned on. If it is turned on, the process proceeds to S7, and if not, the S12 is performed.
Proceed to. In S12, VDD is turned off and power hold is turned off, and in S13, timer interrupt permission is executed. In S14, "power down processing" is executed to enter the power down mode. After a predetermined time, a timer interrupt occurs, and "timer interrupt processing" is executed in S15. Power consumption is suppressed by powering down between S14 and S15. In S16, "timer interrupt prohibition" is executed, and the loop goes to the label "SW1CHK".

【0025】S7では、VDDフラグをセットし、S1
7では、VDDを投入してパワーホールドをONし、S
18では、周辺回路リセット時間およびBV安定時間の
ウエイトを行なう“VDD安定時間ウエイト処理”を実
行する。S19では、“TEST”のラベルで始まるサ
ブルーチンをコールして“VDD ON TEST処
理”を実行し、S20では、“SIEEP”のラべルで
始まるサブルーチンを連続的にコールし、AE演算、シ
ーケンス制御用EEPROMデータをRAM14aに入
力する“EEPROMデータ入力処理”を実行する。S
21では、マウントピン情報、レンズROM情報等を入
力する“レンズチェック処理”を実行し、“RESTA
RT”に進む。
In S7, the VDD flag is set and S1 is set.
In step 7, VDD is turned on, power hold is turned on, and S
At 18, the "VDD stable time wait process" for waiting for the peripheral circuit reset time and BV stable time is executed. In S19, a subroutine starting with the label "TEST" is called to execute "VDD ON TEST processing", and in S20, a subroutine starting with the label "SIEEP" is continuously called to perform AE calculation and sequence control. The "EEPROM data input process" for inputting the EEPROM data for use in the RAM 14a is executed. S
In step 21, "lens check processing" is executed to input mount pin information, lens ROM information, etc.
Proceed to RT ".

【0026】図6と図7にメインルーチンを示す。まず
“RESTART”のラベルで始まるルーチンに入り、
S22では、インターバルタイマを初期設定し、S23
では、このインターバルタイマを利用して、パワーホー
ルドタイマが10秒になるようにデータをセットする処
理を実行し、“VDD LP”のラベルに進む。S24
では、ミラーのUP/DOWN処理を実行し、S25で
は、レンズチェック処理を実行し、S26では、“BV
A/D変換処理”を実行する。S27では、“パトロ
ーネ情報入力処理”を実行して、フイルムの有無、フィ
ルム感度等のデータを入力し、変換する。S28では、
入力されたデータをもとにTV値、AV値等を求める
“AE演算処理”を実行する。S29では、テストを許
可するか否かを判断し、許可するならS30に進んで
“TEST処理”を実行し、そうでなければS31にジ
ャンプする。
The main routine is shown in FIGS. 6 and 7. First, enter the routine starting with the label "RESTART",
In S22, the interval timer is initialized and S23 is set.
Then, using this interval timer, a process of setting data so that the power hold timer is set to 10 seconds is executed, and the process proceeds to the label “VDD LP”. S24
Then, the mirror UP / DOWN processing is executed, the lens check processing is executed in S25, and the "BV
A / D conversion processing "is executed. In S27," Patrone information input processing "is executed to input and convert data such as film presence / absence and film sensitivity.
Based on the input data, "AE calculation processing" for obtaining TV value, AV value, etc. is executed. In S29, it is determined whether or not the test is permitted. If the test is permitted, the process proceeds to S30 to execute the "TEST process", and if not, the process jumps to S31.

【0027】S31では、LCD表示器26に対するL
CD表示処理を実行し、S32では、レリーズ釦が押さ
れたか否かを判断し、レリーズ釦が押されれば“レリー
ズ処理”のラベルで始まるルーチンに進み、そうでなけ
ればS33に進む。S33では、S22で設定したイン
ターバルタイマの時間間隔のチェックを行ない、設定さ
れた時間が経過するまではS32に戻り、経過した時点
でS34に進む。S34では、“パワーホールドタイマ
カウント処理”を実行し、S35では、そのパワーホー
ルドタイマのカウントが終了したか否かを判断し、終了
したら“SW1CHK”に進んでパワーダウンループに
入り、そうでなければ“VDD LP”に戻り、処理を
繰り返す。
At S31, L for the LCD display 26 is displayed.
The CD display processing is executed, and in S32, it is determined whether or not the release button is pressed. If the release button is pressed, the routine starts with the label "release processing". If not, the routine proceeds to S33. In S33, the time interval of the interval timer set in S22 is checked, the process returns to S32 until the set time elapses, and the process proceeds to S34 when the time elapses. In S34, a "power hold timer count process" is executed, and in S35, it is determined whether or not the count of the power hold timer is finished. For example, the operation returns to "VDD LP" and the processing is repeated.

【0028】次に“レリーズ処理”について説明する。
S36では、BV検出部18のアナログ信号を中央処理
回路11に出力させて、レリーズ直前のBV値のA/D
変換を実行する。S37では、AE演算処理を実行し、
S38では、ミラーアップ処理を実行し、S39では、
露光制御処理を実行し、S40では、ミラーとフィルム
巻き上げ処理を実行する。S41では、フィルムの終端
が検出されたか否かを判断し、検出されればS43に進
み、そうでなければS42に進む。S42では、“FI
LMCUP(フィルムカウントアップ)”のラベルで始
まるサブルーチンをコールして“フィルム枚数のカウン
ト処理”を実行し、“RESTART”のラべルへ戻
る。S43では、“フィルム巻戻し処理”を実行し、S
44では、“FILMCLR(フィルムクリア)”のラ
ベルで始まるサブルーチンをコールして“フィルム枚数
クリア処理”を実行して“SW1CHK”へ飛ぶ。
Next, the "release process" will be described.
In S36, the analog signal of the BV detector 18 is output to the central processing circuit 11, and the A / D of the BV value immediately before the release is output.
Perform the conversion. In S37, AE calculation processing is executed,
In S38, mirror up processing is executed, and in S39,
Exposure control processing is executed, and in S40, mirror and film winding processing is executed. In S41, it is determined whether or not the end of the film has been detected. If detected, the process proceeds to S43, and if not, the process proceeds to S42. In S42, "FI
The subroutine starting with the label "LMCUP (Film Count Up)" is called to execute "Film Count Processing", and returns to the "RESTART" label. In S43, "Film Rewind Processing" is executed, S
At 44, a subroutine starting with a label "FILM CLR (film clear)" is called to execute "film number clear processing" and jump to "SW1CHK".

【0029】図8および図9は、EEPROM19への
データの書き込みを示すフローチャートである。“FI
LM CUP”のラベルで始まるルーチンはカウントア
ップ時のものであり、“FILM CLR”のラベルで
始まるルーチンはフィルム枚数クリア時のものである。
S45では、RAMのフィルム枚数をカウントアップ
し、S46では、フィルム枚数をバッファにセットして
おく。S47では、EEPROM19の、フィルム枚数
が書かれているアドレスポインタを設定する。S48で
は、DTC30のライト(書き込み)フラグをクリア
し、DTC30の書き込みではなく、通常カメラモード
でのということをソフト的に設定して“SOEEP”の
ラベルで始まるルーチンに進む。
FIG. 8 and FIG. 9 are flow charts showing the writing of data to the EEPROM 19. "FI
The routine starting with the label "LM CUP" is for counting up, and the routine starting with the label "FILM CLR" is for clearing the number of films.
In S45, the number of films in the RAM is counted up, and in S46, the number of films is set in the buffer. In S47, the address pointer in which the number of films is written in the EEPROM 19 is set. In S48, the write (write) flag of the DTC 30 is cleared, not the writing of the DTC 30 but the normal camera mode is set by software, and the routine starts with the label "SOEEP".

【0030】“SOEEP”は、DTC30側からのE
EPROM19への書き込み等のときにコールされるサ
ブルーチンである。S50では、書き込みを始める前に
EEPROMに、今現在、同じデータが書かれていない
かということをチェックするために“SIEEP”のラ
ベルで始まるサブルーチンをコールして、“EEPRO
Mデータ入力処理”を実行し、EEPROMデータの状
態をチェックする。S51、S52では、下位バイトお
よび上位バイトをチェックして、両方とも同じであれば
リターンして何も処理を実行しない。どちらかが違って
いれば、S53において、暴走等によりスタックが深く
なり過ぎていないか否かを判断する。この結果、スタッ
クがOKならばS54に進み、スタックが異常に深くな
っていると判断された場合はリターンし、書き込みを実
行しない。ここで、EEPROM19は1ワード単位で
あり、“1ワード×64”の容量を有する。この1ワー
ドは下位バイトと上位バイトからなっているから、下位
のデータつまり下位8ビットが、書き込もうとしている
データと同じか否か、上位のデータつまり上位8ビット
が書き込もうとしているデータと同じか否か、を判断し
ている。
"SOEEP" means E from the DTC 30 side.
This is a subroutine called when writing to the EPROM 19 or the like. In S50, a subroutine starting with the label "SIEEP" is called to check whether the same data is currently written in the EEPROM before starting writing, and "EEPRO" is called.
M data input processing "is executed to check the state of the EEPROM data. In S51 and S52, the lower byte and the upper byte are checked, and if both are the same, a return is made and no processing is executed. If the stack is OK, it is determined in S53 whether the stack has become too deep due to a runaway, etc. As a result, if the stack is OK, the process proceeds to S54, and it is determined that the stack is abnormally deep. In this case, the operation returns and writing is not executed.Here, the EEPROM 19 has a capacity of "1 word x 64" in units of 1 word. Since this 1 word is composed of the lower byte and the upper byte, the lower data In other words, whether the lower 8 bits are the same as the data to be written, the upper data, that is, the upper 8 bits are to be written. Whether the same or not as there data, are to determine the.

【0031】カメラ33のRAM14b上に設定された
スタックエリアは、通常の動作時には充分な位の容量を
有しているが、暴走等によりリターンがなくコールのみ
繰り返される場合は、その領域がすぐに潰されてしま
う。このため、そのような状態で書込サブルーチンがコ
ールされても、書きデータがバッファに正常に入ってい
るかどうか分からないという理由により、S53におい
てNOの場合にはリターンさせる。
The stack area set on the RAM 14b of the camera 33 has a sufficient capacity during normal operation, but if there is no return due to runaway or the like and only calls are repeated, that area will be immediately released. It will be crushed. Therefore, even if the write subroutine is called in such a state, it is not known whether or not the write data is normally stored in the buffer. Therefore, in the case of NO in S53, the process is returned.

【0032】S54では、“DTC30ライト(書き込
み)モード”か否かを判断し、このモードであればS5
6にジャンプし、DTC30からの書き込みではなく通
常カメラモードにおける書き込みである場合はS55に
進む。つまり“DTCライト(書き込み)モード”のと
きは、EEPROM19の全アドレスに対して書き込み
が可能となる。
In S54, it is judged whether or not the "DTC30 write (write) mode" is set, and if it is this mode, S5 is set.
If the writing is not in the DTC 30 but in the normal camera mode, the process proceeds to S55. That is, in the "DTC write (write) mode", writing is possible to all addresses of the EEPROM 19.

【0033】S55では、フィルムアドレスをチェック
する。ここでは、“FILMCUP”または“FILM
CLR”から入ってきたとき設定されているフィルム枚
数用のEPアドレスポインタと同じアドレスがそのまま
検出できるか否かをみる。そして“FILMCUP”か
ら入ってくれば必ずイコールになるはずであるが、別の
ところからフィルム枚数用のアドレス以外に書き込もう
として“SOEEP”等をコールした場合には、フィル
ムアドレスが等しくないから書き込みはできない。つま
りフィルムアドレスと等しいところ以外は書き込みがで
きないようにここで設定される。
At S55, the film address is checked. Here, "FILM CUP" or "FILM
Check if the same address as the EP address pointer for the number of films set when entering from "CLR" can be detected as it is. And if it comes from "FILMCUP", it should be equal. However, if you call "SOEEP" etc. to write to an address other than the number of films, you cannot write because the film addresses are not the same. To be done.

【0034】S56では、EEPROMチップイネーブ
ルを実行し、S57では、EEPROM19への書き込
み許可通信(モードおよびアドレス)を実行し、S58
では、EEPROMチップイネーブルをOFFし、S5
9では、EEPROMチップイネーブルを実行し、S6
0では、EEPROM書き込み開始通信(モードおよび
アドレス)を実行する。S61では、下位バイト(下位
8ビット)データ出力通信を実行し、S62では、下位
バイト(下位8ビット)データ出力通信を実行し、S6
3では、書き込み時間の15mSのウエイトを実行し、
S64では、EEPROMチップイネーブルをOFF
し、S65では、EEPROMチップイネーブルを実行
し、S66では、書き込み禁止コード通信(モードおよ
びアドレス)を実行し、S67では、EEPROMチッ
プイネーブルをOFFしてリターンする。“FILM
CLR”において、S49では、RAM14aにメモリ
されたフィルム枚数をクリアしてS46に飛ぶ。したが
って、DTC30に接続されていない通常のカメラ撮影
モードで正常動作しているときに、必要以外のEEPR
OM19への書き込みが禁止され、また異常動作が検出
されたときも、EEPROM19への書き込みが禁止さ
れる。
In step S56, EEPROM chip enable is executed, in step S57, write permission communication (mode and address) to the EEPROM 19 is executed, and in step S58.
Then, turn off the EEPROM chip enable and set S5
In 9, the EEPROM chip enable is executed, and S6 is executed.
At 0, EEPROM write start communication (mode and address) is executed. In S61, lower byte (lower 8 bits) data output communication is executed, in S62, lower byte (lower 8 bits) data output communication is executed, and S6
In 3, the write time of 15 ms is executed,
In S64, the EEPROM chip enable is turned off.
Then, in S65, the EEPROM chip enable is executed, in S66, the write inhibition code communication (mode and address) is executed, and in S67, the EEPROM chip enable is turned off and the process returns. "FILM
In CLR ", in S49, the number of films stored in the RAM 14a is cleared and the process jumps to S46.
Writing to the OM 19 is prohibited, and writing to the EEPROM 19 is also prohibited when an abnormal operation is detected.

【0035】図10により、“SIEEP”のラベルで
始まるEEPROM19からDTC30側にデータを読
み込む場合のルーチンを説明する。S68では、通信ラ
インにBV検出部18や外部機器等、他のデータも存在
するので、EEPROM19との通信を行なうために通
信先変更モードをセットする。S69では、通信先をE
EPROM19に変更させる。S70では、データ通信
モードをセットし、S71では、EEPROMチップイ
ネーブルを実行し、S72で、EEPROM読み出し開
始通信(モードおよびアドレス)を実行する。S73で
は、下位バイトをバッファに入力し、S74で、上位バ
イトをバッファに入力し、S75で、EEPROMチッ
プイネーブルをOFFする。
A routine for reading data from the EEPROM 19 starting from the label "SIEEP" to the DTC 30 side will be described with reference to FIG. In S68, since other data such as the BV detection unit 18 and external devices exist in the communication line, the communication destination change mode is set to communicate with the EEPROM 19. In S69, the communication destination is E
Change to EPROM 19. In S70, the data communication mode is set, in S71, the EEPROM chip enable is executed, and in S72, the EEPROM read start communication (mode and address) is executed. The lower byte is input to the buffer in S73, the upper byte is input to the buffer in S74, and the EEPROM chip enable is turned off in S75.

【0036】図11と図12により、“TEST”のラ
ベルで始まるルーチンを説明する。S76では、初期設
定としてDTC30からのパワーホールドの要求がない
としてPH要求フラグを設定する。S77では、テスト
スイッチを入力処理し、S78では、テスト要求があっ
たか否かを判断し、要求されればS79に進み、そうで
なければリターンする。S79では、DTCエラーが既
に検出されていたか否かを判断する。このDTCエラー
とは、例えば或るテストコードの次に必ず入力で来なけ
ればならない場合に、DTC30が出力したような場合
に設定される。
The routine starting with the label "TEST" will be described with reference to FIGS. In S76, the PH request flag is set as the initial setting because there is no power hold request from the DTC 30. In S77, the test switch is input, and in S78, it is determined whether or not there is a test request, and if so, the process proceeds to S79, otherwise returns. In S79, it is determined whether or not the DTC error has already been detected. The DTC error is set, for example, when the DTC 30 outputs when a test code must be input next.

【0037】S79においてDTCエラーと判断されれ
ばS85に飛び、そうでなければS80に進む。S80
では、PFLAGに“1”を出力しておかないとDTC
30側からPCTLを立ち下げることができないので、
まずPFLAGに“1”を出力し、ついでS81におい
て、PCTL入力処理を実行する。S82では、PCT
Lが“0”になったか否か、つまりDTC30側からの
要求があるか否かを判断し、“0”のときはS83に進
み、そうでなければRAMモニターを実行させるため、
S85に進む。
If a DTC error is determined in S79, the process jumps to S85, and if not, the process proceeds to S80. S80
Then, unless you output "1" to PFLAG, DTC
Since PCTL cannot be shut down from the 30 side,
First, "1" is output to PFLAG, and then the PCTL input process is executed in S81. In S82, PCT
It is determined whether L becomes "0", that is, whether there is a request from the DTC 30 side. If "0", the process proceeds to S83. If not, the RAM monitor is executed.
Proceed to S85.

【0038】S83では、現在、パワーダウンループに
あるのかメインループにあるのかをみるために、VDD
フラグがONされているか否かを判断する。この結果、
パワーダウンループにあるとされた場合は、リターンし
た後自動的に電源がセットされるように、S84におい
てDTCパワーホールドフラグをセットし、S85〜S
87においてRAMモニターしてリターンする。つまり
S85では、サンプリング可否ビットを判断し、可であ
ればS86に進み、モニターRAMアドレスを入力し、
そのアドレスに対するボディのRAMデータをバッファ
にセットする。S87では、16ビットデータ出力処理
を実行し、バッファのデータが下位8ビット(DI7〜
0)に出力される。
At S83, VDD is checked to see whether the power-down loop or the main loop is present.
It is determined whether or not the flag is turned on. As a result,
If the power down loop is set, the DTC power hold flag is set in S84 so that the power is automatically set after returning, and S85 to S85 are set.
The RAM is monitored at 87 and the process returns. In other words, in S85, the sampling permission / prohibition bit is determined, and if it is determined to be valid, the process proceeds to S86 to input the monitor RAM address
The RAM data of the body for that address is set in the buffer. In S87, 16-bit data output processing is executed, and the data in the buffer is the lower 8 bits (DI7-
0) is output.

【0039】既に電源がONされていると判断されれ
ば、DTC涌信モードに切り替えて、PCTLを入力し
て、PCTLが“0(ロー)”になるまで待ち(S88
〜S90)、ローになったらS91に進む。S91で
は、CTLOが“1”にされたか否かを判断し、“1”
にされればS92に進み、そうでなければリターンす
る。S92では、テストスイッチ入力処理を実行し、S
93では、テスト要求があるか否かを判断する。テスト
要求があればS94に進み、そうでなければリターンす
る。
If it is determined that the power is already turned on, the DTC communication mode is switched to, PCTL is input, and waits until PCTL becomes "0 (low)" (S88).
~ S90), when it becomes low, the process proceeds to S91. In S91, it is determined whether CTLO has been set to "1", and "1" is set.
If so, the process proceeds to S92, and if not, the process returns. In S92, a test switch input process is executed, and S
At 93, it is determined whether or not there is a test request. If there is a test request, proceed to S94, otherwise return.

【0040】S94では、DTCコードの入力処理を実
行し、DTCコードの下位が“FE”というテストコー
ドだったらリターンで抜け、下位が“FF”というテス
トコードであれば“RESET”のラベルに抜ける(S
94〜S96)。テストコードの下位が“FE”でも
“FF”でもない場合は、さらに、登録コードを判断す
る。図13に示されるテストテーブルには、“SUBC
HK”、“RAMDUMP”、“RAMSET”、“E
EPDUMP”、“EEPSET”のコードが登録され
ている。これ以外のテストコードである場合には、“D
TC ERR”のラベルで始まるルーチンに進む。この
ルーチンでは、S99で、PFLAGに“0”を出力
し、S100に進んでDTC30エラーフラグをセット
する。つまり、それ以後のハンドシェイクができないよ
うにしてパワーダウンの“SW1CHK”ルーチンに抜
ける。
In S94, the input process of the DTC code is executed. If the lower part of the DTC code is the test code "FE", the process exits by return. (S
94-S96). When the lower order of the test code is neither "FE" nor "FF", the registration code is further determined. The test table shown in FIG. 13 includes “SUBC
HK ”,“ RAMDUMP ”,“ RAMSET ”,“ E ”
Codes of "EPDUMP" and "EEPSET" are registered. In case of other test codes, "D"
The routine starts with the label "TC ERR". In this routine, "0" is output to PFLAG in S99, and the DTC30 error flag is set in S100. That is, the handshake after that is disabled. Exit to the power-down "SW1CHK" routine.

【0041】S101では、テストコードはOKか否か
を判断する。つまり、テストコードのときに出力される
データは、例えば図21に示されるように、上位が“1
0”、下位が“00”〜“04”と設定されているが、
この上位の“10”をチェックしている。OKであれば
S102に進んで、テストコードに対するサブルーチン
アドレスをポインタにセットし、S103では、そのテ
ストサブルーチンを実行する。S101で、テストコー
ドがOKでなければ“DTC ERR”に進む。
In S101, it is determined whether the test code is OK. That is, for example, as shown in FIG. 21, the data output in the case of the test code has a higher order of "1".
0 "and lower order are set to" 00 "to" 04 ",
I am checking this upper "10". If it is OK, the process proceeds to S102, the subroutine address for the test code is set in the pointer, and the test subroutine is executed in S103. If the test code is not OK in S101, the process proceeds to "DTC ERR".

【0042】図14に、“HANDOUT”、“HAN
DIN”のラベルで始まるルーチンを示す。これらのル
ーチンは、実際に16ビットのデータを入力、出力する
ときのサブルーチンである。まず“HAND OUT”
のラベルで始まるルーチンでは、S104で、PCTL
データを入力し、S105に進んでPCTLが“0”か
否かを判断し、“0”であればS106に進み、そうで
なければS104に戻る。S106では、I/Oデータ
を入力し、S107では、入力したI/Oデータにより
DTC30が入力モードか否かを判断し、入力モードな
らばS108に進み、そうでなければ“IO ERR”
のラベルで始まるルーチンに進む。S108では、16
ビットデータの出力処理を実行し、S109では、PF
LAGに“0”を出力し、S110では、PCTLを入
力する。S111では、入力したPCTLデータにより
PCTLが“1”になったか否かを判断し、“1”であ
ればS112に進み、そうでなければS110に戻り、
PCTL入力を繰り返す。S112では、PFLAGに
“1”を出力してリターンする。
In FIG. 14, "HANDOUT", "HAN"
The routines starting with the label "DIN" are shown. These routines are subroutines for actually inputting and outputting 16-bit data. First, "HAND OUT"
In the routine starting with the label of
Data is input, the process proceeds to S105, and it is determined whether or not PCTL is "0". If "0", the process proceeds to S106. If not, the process returns to S104. In S106, I / O data is input. In S107, it is determined whether or not the DTC 30 is in the input mode based on the input I / O data. If the DTC 30 is in the input mode, the process proceeds to S108.
Go to the routine starting with the label. In S108, 16
Bit data output processing is executed, and in S109, PF
"0" is output to LAG, and PCTL is input in S110. In S111, it is determined whether the PCTL has become "1" based on the input PCTL data. If "1", the process proceeds to S112. If not, the process returns to S110.
Repeat PCTL input. In S112, "1" is output to PFLAG and the process returns.

【0043】“HAND IN”のラベルで始まるルー
チンでは、S113で、PCTLデータの入力処理を実
行し、S114で入力したPCTLデータにより、PC
TLが“0”であるか否かを判断し、“0”であればS
115に進み、そうでなければS113に戻り、PCT
L入力を繰り返す。S115では、入力したI/Oデー
タによりDTCが出力モードか否かを判断し、出力モー
ドならばS116に進み、そうでなければ“IO ER
R”に飛ぶ。S116では、DTC30データの入力処
理を実行し、S117では、エコーバック処理を実行し
て前述のS109に進む。
In the routine starting with the label "HAND IN", the PCTL data input process is executed in S113, and the PCTL data is input in S114.
It is determined whether TL is "0", and if "0", S
115, otherwise, return to S113, PCT
Repeat L input. In S115, it is determined whether the DTC is in the output mode based on the input I / O data. If the DTC is in the output mode, the process proceeds to S116.
R ”is executed. In S116, an input process of DTC30 data is executed, in S117, an echo back process is executed, and the process proceeds to S109.

【0044】図15により、“TEST PCTL”の
ラベルで始まるルーチンを説明する。このルーチンは、
PCTLが立ち下がったときにテスト要求があればメイ
ンループのS88に戻り、テスト要求がなければリター
ンして、従属データの処理を継続する。S118では、
DTCシリアルモードを実行し、S119では、PCT
Lデータを入力し、S12では、PCTLが“0”にな
ったか否かを判断する。“0”であればS121に進
み、そうでなければS119に戻る。S121では、テ
スト要求が出されたか否かを判断し、テスト要求が出さ
れればS122に進み、そうでなければリターンする。
S122では、スタックの1レベルをカットして、リタ
ーンする。
Referring to FIG. 15, the routine starting with the label "TEST PCTL" will be described. This routine
If there is a test request when PCTL falls, the process returns to S88 of the main loop, and if there is no test request, the process returns to continue the processing of the dependent data. In S118,
The DTC serial mode is executed, and in S119, the PCT
L data is input, and it is determined in S12 whether PCTL has become "0". If "0", the process proceeds to S121, and if not, the process returns to S119. In S121, it is determined whether or not a test request is issued. If a test request is issued, the process proceeds to S122, and if not, the process returns.
In S122, one level of the stack is cut and the process returns.

【0045】図16により、“RAMDUMP”のラベ
ルで始まるサブルーチンを説明する。このルーチンは、
RAM14bに書き込まれたデータをすべて出力させる
ためのものであり、図21に示すDTC30からのテス
トコード“1”の出力により実行される。S123で
は、DTCデータを入力処理し、S124では、DTC
30に出力するRAMのスタートアドレスをRAMアド
レスポインタにセットし、S125では、DTCデータ
の上位データをクリアし、S126では、PCTL入力
処理を実行する。S127では、入力したPCTLによ
りPCTLが“0”になったか否かを判断し、“0”な
らばS128に進み、そうでなければS126に戻り、
PCTL入力を繰り返す。S128では、次のテストコ
ードが出力されたか否かを判断し、テストコードならば
リターンし、そうでなければS129に進み、RAMダ
ンプを継続する。S129では、RAMデータをバッフ
ァに準備し、S130では、“HANDOUT”をコー
ルして、DTC30にRAMデータを出力し、S131
では、RAMアドレスポインタ+1としてS126から
の処理を繰り返す。
Referring to FIG. 16, the subroutine starting with the label "RAMDUMP" will be described. This routine
This is for outputting all the data written in the RAM 14b and is executed by the output of the test code "1" from the DTC 30 shown in FIG. In S123, the DTC data is input and processed, and in S124, the DTC data is input.
The start address of the RAM output to 30 is set in the RAM address pointer, the upper data of the DTC data is cleared in S125, and the PCTL input process is executed in S126. In S127, it is determined whether the PCTL has become "0" based on the input PCTL. If "0", the process proceeds to S128. If not, the process returns to S126.
Repeat PCTL input. In S128, it is determined whether or not the next test code is output. If the test code is a test code, the process returns. If not, the process proceeds to S129 to continue the RAM dump. In S129, the RAM data is prepared in the buffer, and in S130, "HANDOUT" is called to output the RAM data to the DTC 30, and S131
Then, the process from S126 is repeated with the RAM address pointer + 1.

【0046】図17により、“EEPDUNP”のラベ
ルで始まるサブルーチンを説明する。このルーチンは、
EEPROM19に書き込まれたデータを出力させるた
めのものであり、図21に示すDTC30からのテスト
コード“3”の出力により実行される。S132では、
DTCデータの入力処理を実行し、S133では、DT
C30に出力するEEPROM19のスタートアドレス
をEEPROMアドレスポインタにセットする。S13
4では、“SIEEP”のサブルーチンをコールして、
EEPROMデータの入力処理を実行する。S135で
は、DTC通信モードを設定し、S136では、PCT
L入力処理を実行し、S137では、入力したPCTL
データによりPCTLが“0”であるか否かを判断し、
“0”であればS138に進み、そうでなければS13
6を繰り返す。S138では、次のテストコードの出力
を判断し、テストコードならばリターンし、そうでなけ
ればS139に進む。S139では、“HANDOU
T”をコールして、DTC30にEEPROMデータを
出力し、S140では、“EEPROMアドレスポイン
タ+1”とし、S134に戻ってEEPROMダンプ判
断を繰り返す。
Referring to FIG. 17, the subroutine starting with the label "EEPDUNP" will be described. This routine
This is for outputting the data written in the EEPROM 19, and is executed by the output of the test code "3" from the DTC 30 shown in FIG. In S132,
Input processing of DTC data is executed, and in S133, DT
The start address of the EEPROM 19 output to C30 is set in the EEPROM address pointer. S13
In 4, call the "SIEEP" subroutine,
Input processing of EEPROM data is executed. In S135, the DTC communication mode is set, and in S136, the PCT is set.
L input processing is executed, and in S137, the input PCTL
Judge whether PCTL is "0" from the data,
If "0", the process proceeds to S138, and if not, S13.
Repeat 6 In S138, the output of the next test code is determined. If the test code is output, the process returns, and if not, the process proceeds to S139. In S139, "HANDOU
T "is called to output the EEPROM data to the DTC 30, the" EEPROM address pointer + 1 "is set in S140, and the process returns to S134 to repeat the EEPROM dump determination.

【0047】図18により、“EEPSET”のラベル
で始まるルーチンを説明する。このルーチンは、EEP
ROM19への書き込みを実行させるルーチンであり、
図21に示すDTC30からのテストコード“4”の出
力により実行される。S141では、DTCデーの入力
処理を実行し、S142では、EEPROM書き込みモ
ードに入った場合、最初にDTC30からのEEPRO
M書き込み開始アドレスを取り込んでRAM14bの中
のEEPROMアドレスポインタにセットする。S14
3では、DTC通信モードを設定し、S144では、P
CTLの入力処理を実行する。
Referring to FIG. 18, the routine starting with the label "EEPSET" will be described. This routine is
It is a routine for executing writing to the ROM 19,
It is executed by the output of the test code "4" from the DTC 30 shown in FIG. In S141, input processing of DTC data is executed, and in S142, when the EEPROM write mode is entered, the EEPROM from the DTC 30 is first read.
The M write start address is fetched and set in the EEPROM address pointer in the RAM 14b. S14
In 3, the DTC communication mode is set, and in S144, PTC is set.
Perform CTL input processing.

【0048】S145では、入力したPCTLデータに
よりPCTLが“0”か否かを判断し、“0”ならばS
146に進み、そうでなければS144に戻り、PCT
L入力を繰り返す。S146では、次のテストコードの
出力があったか否かを判断し、テストコードがあればリ
ターンし、そうでなければS147に進む。S147で
は、“HANDIN”をコールして、DTCデータの入
力処理を実行し、S148では、EEPROM書き込み
バッファにデータを設定し、S177では、任意のアド
レスに書き込むためのDTCライト(書き込み)フラグ
をセットする。S149では、“SOEEP”のラベル
で始まるサブルーチンをコールして、EEPROM書き
込み処理を実行する。S178では、DTCライト(書
き込み)フラグをクリアし、S150で、“EEPRO
Mアドレスポインタ+1”を実行して、S143に戻
る。つまり、EEPROM書き込み処理を実行するとき
だけフラグが立つように処理する。そして普段、フィル
ム枚数をカウントしようとしているときは、DTC書き
込みモードではないということが分かるように、必ずフ
ラグをクリアする。そして実際に書き込むところで、D
TCライトモードか否かを判断して、DTC書き込みモ
ードでない場合はフィルムアドレス以外は書き込まな
い。
In S145, it is determined whether PCTL is "0" or not according to the input PCTL data.
146, otherwise return to S144, PCT
Repeat L input. In S146, it is determined whether or not the next test code is output. If there is a test code, the process returns, and if not, the process proceeds to S147. In S147, "HANDIN" is called to execute DTC data input processing, in S148, data is set in the EEPROM write buffer, and in S177, a DTC write (write) flag for writing to an arbitrary address is set. To do. In step S149, a subroutine starting with the label "SOEEP" is called to execute the EEPROM writing process. In step S178, the DTC write (write) flag is cleared, and in step S150, "EEPRO" is set.
The M address pointer + 1 "is executed, and the process returns to S143. That is, the process is performed so that the flag is set only when the EEPROM writing process is executed. When the number of films is usually counted, the DTC writing mode is not set. Be sure to clear the flag so that you can see that,
It is determined whether the TC write mode is set or not, and if the DTC write mode is not set, only the film address is written.

【0049】図19により、“RAM SET”のラベ
ルで始まるルーチンを説明する。このルーチンは、RA
M14bへの書き込みを実行させるルーチンであり、図
21に示すDTC30からのテストコード“2”の出力
により実行される。S151では、DTCデータの入力
処理を実行し、S152では、DTC30から入力する
RAMのスタートアドレスをRAMアドレスポインタに
セットする。S153では、PCTL入力処理を実行
し、S154では、入力したPCTLデータによりPC
TLが“0”であるか否かを判断し、“0”であればS
155に進み、そうでなければS153に戻り、PCT
L入力を繰り返す。S155では、次のテストコードの
出力を判断し、テストコードがあればリターンし、そう
でなければS156に進む。S156では、DTCデー
タ入力処理を実行し、S157では、RAM14bの中
のアドレスポインタによって指定されたRAMにDTC
データをセットし、S158では、“RAMアドレスポ
インタ+1”とし、S153に戻り、RAMセットを繰
り返す。
Referring to FIG. 19, the routine starting with the label "RAM SET" will be described. This routine
This is a routine for executing writing to M14b, which is executed by the output of the test code "2" from the DTC 30 shown in FIG. In S151, input processing of DTC data is executed, and in S152, the start address of the RAM input from the DTC 30 is set in the RAM address pointer. In S153, PCTL input processing is executed, and in S154, PCTL data is input according to the input PCTL data.
It is determined whether TL is "0", and if "0", S
155, otherwise return to S153, PCT
Repeat L input. In S155, the output of the next test code is determined, and if there is a test code, the process returns, and if not, the process proceeds to S156. In S156, DTC data input processing is executed, and in S157, the DTC data is stored in the RAM designated by the address pointer in the RAM 14b.
The data is set, and the "RAM address pointer + 1" is set in S158, the flow returns to S153, and the RAM setting is repeated.

【0050】図20により、“SUBCHK”のラベル
で始まるルーチンを説明する。このルーチンは、カメラ
33側に格納された多数のサブルーチンデータのうち、
DTC30側から出されたサブルーチンアドレスに対応
したサブルーチンを実行させるルーチンであり、図21
に示すDTC30からのテストコード“0”の出力によ
り実行される。S159では、サブルーチンアドレスを
DTC30から入力してRAM14bに格納し、S16
0では、DTC30から入力されたコードをサブルーチ
ンのアドレスとしてコール実行し、リターンする。
Referring to FIG. 20, the routine starting with the label "SUBCHK" will be described. This routine is based on a large number of subroutine data stored on the camera 33 side.
21 is a routine for executing a subroutine corresponding to the subroutine address issued from the DTC 30 side.
The test code "0" is output from the DTC 30 shown in FIG. In step S159, the subroutine address is input from the DTC 30 and stored in the RAM 14b.
At 0, the code input from the DTC 30 is used as a subroutine address to execute the call, and the process returns.

【0051】図21により、DTC30側の基本的なソ
フト“DTC SOFT”の制御ルーチンを説明する。
このルーチンは、設定したテストコードに基づいて、カ
メラ33側に種々の動作を実行させたり、RAM14b
への書き込み、EEPROM19への書き込み等を行な
うためのものである。まずS161では、配列のディメ
ンション、データ等の初期設定を行ない、S162で
は、データの表示設定処理を実行し、S163では、テ
ストコードの入力処理を実行する。S164では、この
入力されたテストコードを判断し、テストコードが
“0”の場合はS165に進み、“1”の場合はS16
6に進み、“2”の場合はS167に進み、“3”の場
合はS168に進み、“4”の場合はS169に進む。
The control routine of the basic software "DTC SOFT" on the DTC 30 side will be described with reference to FIG.
This routine causes the camera 33 side to execute various operations based on the set test code, and the RAM 14b.
To the EEPROM, writing to the EEPROM 19, and the like. First, in S161, initial setting of the array dimension, data, etc. is performed, in S162, data display setting processing is executed, and in S163, test code input processing is executed. In S164, the input test code is determined, and if the test code is "0", the process proceeds to S165, and if the test code is "1", S16.
6 proceeds to S167 if "2", proceeds to S168 if "3", and proceeds to S169 if "4".

【0052】S165は、DTC30によるカメラ機能
のチェックのため、カメラ33側にテストコードおよび
サブルーチンアドレスを出し、カメラ33側において、
予め設定されている複数のサブルーチンを実行させる場
合である。ここで言うサブルーチンとは、通常ユーザー
がカメラを操作した場合に動作するすべてのものであ
り、図4〜図10の中にも登場している。まず最初のテ
ストコードをカメラ33側に出力するべく、テストコー
ドの出力が可能な状熊を設定するため、 CTL1=1、CTL0=0 として(図2参照)、テストコード“1000H”を出
力する。この後、 CTL1=0、CTL1=1 として従属データ通信の状態にする。そして、テストコ
ード1000Hに対応する従属データとしては、チェッ
クするベきカメラ機能に対応させたサブルーチンが格納
されているアドレスを指定するサブルーチンアドレスで
あり、これが出力される。これに基づき、カメラの対応
するサブルーチンが実行される。サブルーチン実行前に
RAMにデータの設定が必要であれば、後述する100
2Hのテストコードにより設定が可能であり、サブルー
チン実行後にRAMにデータが設定される場合は、同様
に後述の1001HのRAMダンプによりDTC30に
入力可能である。したがって、他のサブルーチンアドレ
スの実行と組み合わせることにより、種々のチェック調
整を容易に行なうことができる。これによれば、通常、
カメラを動作させるためのソフトをサブルーチン化させ
て格納し、チェック調整時に必要なサブルーチンのアド
レスを出力して実行させるだけで簡単かつ確実にチェッ
ク調整を行なうことができるから、従来のように、チェ
ック調整のために作成した特別のソフトをカメラ側に搭
載しなくても良く、ROMのメモリ容量を大幅に節約さ
せることができる。
In step S165, a test code and a subroutine address are issued to the camera 33 side so that the DTC 30 can check the camera function.
This is a case where a plurality of preset subroutines are executed. The subroutines referred to here are all those that normally operate when the user operates the camera, and also appear in FIGS. 4 to 10. First, in order to output the first test code to the camera 33 side, in order to set a bear capable of outputting the test code, set CTL1 = 1 and CTL0 = 0 (see FIG. 2) and output the test code “1000H”. . After that, CTL1 = 0 and CTL1 = 1 are set to enter the subordinate data communication state. The subordinate data corresponding to the test code 1000H is a subroutine address that specifies an address in which a subroutine corresponding to the camera function to be checked is stored and is output. Based on this, the corresponding subroutine of the camera is executed. If it is necessary to set the data in the RAM before executing the subroutine, 100 described below will be used.
It can be set by the test code of 2H, and when the data is set in the RAM after the execution of the subroutine, it can be input to the DTC 30 by the RAM dump of 1001H which will be described later. Therefore, various check adjustments can be easily performed in combination with the execution of other subroutine addresses. According to this,
The software for operating the camera is made into a subroutine and stored, and by simply outputting and executing the address of the subroutine required for check adjustment, check adjustment can be performed easily and reliably. It is not necessary to install special software created for adjustment on the camera side, and the ROM memory capacity can be greatly saved.

【0053】ここで、DTC30側から任意のサブルー
チンを実行させて、レンズ通信データの信頼性のチェッ
クを短時間で実現させる場合の実例を示す。通常、カメ
ラがレンズと通信するタイミングは、200mSに1回
程度であるので、この通信をDTC30から実行させる
ことにより連続通信が可能となり、テスト時間を1/2
0程度に短縮させることができる。以下にそのテストリ
ストを示す。
Here, an actual example in which an arbitrary subroutine is executed from the DTC 30 side to check the reliability of the lens communication data in a short time will be shown. Normally, the camera communicates with the lens about once every 200 mS, so by executing this communication from the DTC 30, continuous communication becomes possible, and the test time is halved.
It can be shortened to about 0. The test list is shown below.

【0054】またS166は、コマンドによってRAM
14b内のデータを全てDTC30側に取り込む場合で
ある。まずテストコード“1001H”をカメラ33側
に出力し、スタートアドレス(=RAMの0番地)を出
力する。続けてデータ入力を連続して実行することによ
り、RAM14bから、このRAM14b内の全てのデ
ータをDTC30側に取り込むことができる。S167
は、コマンドによってRAM14bにデータを書き込む
場合である。まずテストコード“1002H”をカメラ
33側に出力し、スタートアドレスを出力する。続け
て、スタートアドレスのデータから順番に設定したいR
AMデータを出力することにより、RAM14bにデー
タを書き込むことができる。S168は、コマンドによ
ってEEPROM19内のデータを全てDTC30側に
取り込む場合である。まずテストコード“1003H”
をカメラ33側に出力し、スタートアドレス(=EEP
ROM19の0番地)を出力する。続けて、データ入力
を連続して実行することにより、EEPROM19か
ら、このEEPROM19内の全てのデータをDTC3
0側に取り込むことができる。S169は、コマンドに
よってEEPROM19にデータを書き込む場合であ
る。まずテストコード“1004H”をカメラ33側に
出力し、スタートアドレスを出力する。続けて、スター
トアドレスのデータから順番に設定したいEEPROM
データを出力することにより、EEPROM19にデー
タを書き込むことができる。
Further, in S166, a RAM is issued by a command.
This is a case where all the data in 14b is fetched to the DTC 30 side. First, the test code “1001H” is output to the camera 33 side, and the start address (= RAM address 0) is output. By continuously executing data input, all the data in the RAM 14b can be fetched from the RAM 14b to the DTC 30 side. S167
Is a case of writing data to the RAM 14b by a command. First, the test code "1002H" is output to the camera 33 side, and the start address is output. Continuously, I want to set the data in order from the start address
By outputting the AM data, the data can be written in the RAM 14b. S168 is a case where all the data in the EEPROM 19 is fetched to the DTC 30 side by a command. First, test code “1003H”
Is output to the camera 33 side, and the start address (= EEP
The address 0 of the ROM 19) is output. By continuously executing data input, all the data in the EEPROM 19 is transferred from the EEPROM 19 to the DTC3.
It can be captured on the 0 side. S169 is a case where data is written in the EEPROM 19 by a command. First, the test code “1004H” is output to the camera 33 side, and the start address is output. Continuously, EEPROM which wants to set in order from the data of the start address
By outputting the data, the data can be written in the EEPROM 19.

【0055】図22に“SIOSUB”のラべルで始ま
る制御ルーチンを示す。S170では、アドレス通信モ
ードをセットし、S171では、アドレスの出力処理を
実行し、S172では、データ通信モードをセットし、
S173では、データの入出力処理を実行する。
FIG. 22 shows a control routine which starts with the label "SIOSUB". In S170, the address communication mode is set, in S171, the output processing of the address is executed, and in S172, the data communication mode is set,
In S173, data input / output processing is executed.

【0056】図23に“NOTSEL”のラベルで始ま
るルーチンを示す。S174では、アドレス通信モード
をセットし、S175では、NOTSELアドレスの出
力処理を実行し、S176では、データ通信モードをセ
ットする。
FIG. 23 shows a routine starting with the label "NOTSEL". In S174, the address communication mode is set, in S175, the output process of the NOTSEL address is executed, and in S176, the data communication mode is set.

【0057】[0057]

【発明の効果】以上説明したように、本発明によれば、
通常のカメラ動作を実行させるソフトをサブルーチン化
させて、カメラ機能のチェック調整用のソフトとして兼
用できるようにしたから、カメラ側のチェック調整専用
のソフトが最小限で済み、カメラ側のROMを圧縮さ
せ、その分カメラとして使用できるROM領域を増やす
ことができる。これにより、製品ソフトの質を向上させ
ることができるとともに、ソフトの開発量を減少させ
て、より早く製品化させることができる。
As described above, according to the present invention,
Software for executing normal camera operations has been made into a subroutine so that it can also be used as software for checking and adjusting camera functions, so software dedicated to checking and adjusting on the camera side is minimized, and the ROM on the camera side is compressed. Therefore, the ROM area that can be used as a camera can be increased accordingly. As a result, the quality of the product software can be improved, the development amount of the software can be reduced, and the product can be commercialized more quickly.

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

【図1A】本実施例の制御ブロックを概略的に示す図で
ある。
FIG. 1A is a diagram schematically showing a control block of the present embodiment.

【図1B】DTCとインターフェースを概略的に示す図
である。
FIG. 1B is a diagram schematically showing a DTC and an interface.

【図2】DTC側とカメラ側との通信時のタイムシーケ
ンスである。
FIG. 2 is a time sequence during communication between the DTC side and the camera side.

【図3A】DTC、インターフェースおよびカメラの接
続状況を示すブロック図である。
FIG. 3A is a block diagram showing a connection status of a DTC, an interface, and a camera.

【図3B】同実施例のDTC、インターフエースおよび
カメラ間で入出される信号のタイミングを示すタイムシ
ーケンスである。
FIG. 3B is a time sequence showing the timing of signals input to and output from the DTC, the interface, and the camera according to the embodiment.

【図4、図5】同実施例の“RESET”のラベルで始
まるルーチンを示すフローチャートである。
FIG. 4 and FIG. 5 are flowcharts showing a routine that starts with a label “RESET” in the same embodiment.

【図6、図7】同実施例の“RESTART”のラベル
で始まるルーチンを示すフローチャートである。
6 and 7 are flowcharts showing a routine that starts with the label "RESTART" in the embodiment.

【図8、図9】同実施例の“FILMCUP”のラベル
で始まるルーチンを示すフローチャートである。
8 and 9 are flowcharts showing a routine that starts with the label "FILMCUP" in the embodiment.

【図10】同実施例の“SIEEP”のラベルで始まる
ルーチンを示すフローチャートである。
FIG. 10 is a flowchart showing a routine that starts with a label of “SIEEP” of the embodiment.

【図11、図12】同実施例の“TEST”のラベルで
始まるルーチンを示すフローチャートである。
FIG. 11 and FIG. 12 are flowcharts showing a routine that starts with the label “TEST” in the embodiment.

【図13】同実施例の“テストコード”を示す図であ
る。
FIG. 13 is a diagram showing a “test code” of the same example.

【図14】同実施例の“HANDOUT”、“HAND
IN”のラベルで始まるルーチンを示すフローチャート
である。
FIGS. 14A and 14B are “HANDOUT” and “HAND” of the embodiment.
6 is a flowchart showing a routine starting with a label of “IN”.

【図15】同実施例の“TESTPCTL”のラベルで
始まるルーチンを示すフローチャートである。
FIG. 15 is a flowchart showing a routine that starts with a label “TESTPCTL” in the embodiment.

【図16】同実施例の“RAMDUMP”のラベルで始
まるルーチンを示すフローチャートである。
FIG. 16 is a flowchart showing a routine that starts with a label “RAMDUMP” in the embodiment.

【図17】同実施例の“EEPDUMP”のラベルで始
まるルーチンを示すフローチャートである。
FIG. 17 is a flowchart showing a routine that starts with a label “EEPDUMP” in the embodiment.

【図18】同実施例の“EEPSET”のラベルで始ま
るルーチンを示すフローチヤートである。
FIG. 18 is a flow chart showing a routine that starts with a label “EEPSET” in the embodiment.

【図19】同実施例の“RAMSET”のラベルで始ま
るルーチンを示すフローチャートである。
FIG. 19 is a flowchart showing a routine that starts with a label “RAMSET” in the embodiment.

【図20】同実施例の“SUBCHK”のラベルで始ま
るルーチンを示すフローチャートである。
FIG. 20 is a flowchart showing a routine that starts with a label of “SUBCHK” in the same embodiment.

【図21】同実施例の“DTCSOFT”のラベルで始
まるルーチンを示す計算機のフローチャートである。
FIG. 21 is a computer flowchart showing a routine that starts with the label “DTCSOFT” of the embodiment.

【図22】同実施例の“SIOSUB”のラベルで始ま
るルーチンを示すフローチヤートである。
FIG. 22 is a flow chart showing a routine that starts with a label of “SIOSUB” in the same embodiment.

【図23】同実施例の“NOTSEL”のラベルで始ま
るルーチンを示すフローチヤートである。
FIG. 23 is a flow chart showing a routine that starts with the label “NOTSEL” of the embodiment.

【符号の説明】[Explanation of symbols]

11 中央処理回路 12 A/D変換器内部 13 インターバルタイマ 14b RAM 15 発信器 16 レギュレータ 17 DC/DCコンバータ 18 BV検出部 19 EEPROM 20 データ操作部 21 バッテリ 26 LCD表示器 27 レンズ情報入力部 28 パトローネ情報入力部 29 スイッチ情報入力部 30 DTC(計算機) 31 インターフェース 32 シーケンス制御部 34 データ切替ブロック 35 パラレル/シリアル変換ブロック 36 ラッチパルス発生ブロック 37 上位8bitラッチブロック 38 シリアル/パラレル変換ブロック 39 下位8bitラッチブロック 40 PFLAG信号ラッチブロック A 通信ライン B 通信ライン C 端子群 D 通信端子群 11 Central Processing Circuit 12 A / D Converter Internal 13 Interval Timer 14b RAM 15 Oscillator 16 Regulator 17 DC / DC Converter 18 BV Detecting Section 19 EEPROM 20 Data Manipulating Section 21 Battery 26 LCD Display 27 Lens Information Input Section 28 Patrone Information Input unit 29 Switch information input unit 30 DTC (computer) 31 Interface 32 Sequence control unit 34 Data switching block 35 Parallel / serial conversion block 36 Latch pulse generation block 37 Upper 8 bit latch block 38 Serial / parallel conversion block 39 Lower 8 bit latch block 40 PFLAG signal latch block A communication line B communication line C terminal group D communication terminal group

【手続補正書】[Procedure amendment]

【提出日】平成3年11月27日[Submission date] November 27, 1991

【手続補正1】[Procedure Amendment 1]

【補正対象書類名】明細書[Document name to be amended] Statement

【補正対象項目名】発明の詳細な説明[Name of item to be amended] Detailed explanation of the invention

【補正方法】変更[Correction method] Change

【補正内容】[Correction content]

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【技術分野】本発明は、カメラ機能をチェック調整する
カメラのチェックシステムに関する。
TECHNICAL FIELD The present invention relates to a camera check system for checking and adjusting camera functions.

【0002】[0002]

【従来技術およびその問題点】近時、カメラの電子化に
伴い、アナログ回路の調整、受光素子の受光レベルの調
整、レンズの補正データの設定、各回路素子のチェック
等、様々なチェック調整処理のため、これらの各項目に
応じた、計算機と中央処理回路用の多量のチェック用の
ソフトが必要とされている。
2. Description of the Related Art Recently, along with the computerization of cameras, various check adjustment processes such as adjustment of analog circuits, adjustment of light receiving level of light receiving elements, setting of correction data of lenses, check of each circuit element, etc. Therefore, a large amount of checking software for the computer and the central processing circuit according to each of these items is required.

【0003】これにより、チェック調整用ソフトの開発
に要する時間は益々増大され、チェック調整用のソフト
の容量も益々増大されている。
As a result, the time required for developing the check adjusting software is increasing more and more, and the capacity of the check adjusting software is also increasing more and more.

【0004】[0004]

【発明の目的】本発明は、カメラに搭載したプログラム
の一部を、カメラ機能のチェック調整に兼用できるよう
にして、チェック調整専用ソフトの開発を必要最小限に
することを目的とする。
SUMMARY OF THE INVENTION It is an object of the present invention to allow a part of a program installed in a camera to be used also for check adjustment of camera functions, thereby minimizing the development of check adjustment dedicated software.

【0005】[0005]

【発明の概要】本発明は、カメラのメイン処理を行なう
中央処理回路、およびこの中央処理回路に接続された周
辺回路を有するカメラと、中央処理回路との接続が可能
で、この中央処理回路を介してカメラ機能のチェック調
整を行なうコマンドを有する計算機とを有し、中央処理
回路に備えられた、カメラの機能のチェック調整を行な
うコマンドにおいて、中央処理回路と周辺回路を動作さ
せるサブルーチンソフト等の任意のサブルーチンを上記
計算機からアドレス指定して実行させる機能を有するこ
とを特徴とする。
SUMMARY OF THE INVENTION The present invention is capable of connecting a camera having a central processing circuit for performing main processing of a camera and a peripheral circuit connected to the central processing circuit to the central processing circuit. A computer having a command for adjusting and checking the camera function via the computer, and a subroutine software for operating the central processing circuit and peripheral circuits in the command for checking and adjusting the camera function provided in the central processing circuit. It is characterized in that it has a function of addressing and executing an arbitrary subroutine from the computer.

【0006】[0006]

【発明の実施例】以下図示実施例に基づいて本発明を説
明する。図1Aは、本実施例の制御ブロックを示す図で
ある。中央処理回路11は、内部にA/D変換器12、
インターバルタイマ13およびROM14a、RAM1
4bを有するマイクロコンピュータ(以後マイコンとい
う)である。中央処理回路11には、アナログ信号Aと
通信ラインBを介してBV検出部18とEEPROM1
9と外部データ操作部20が接続されている。中央処理
回路11にはさらに、発振器15、LCD表示器26、
レンズ情報入力部27、パトローネ情報入力部28、ス
イッチ情報入力部29、シーケンス制御部32、レギュ
レータ16、バッテリ21と接続されたDC/DCコン
バータ17が接続されている。
BEST MODE FOR CARRYING OUT THE INVENTION The present invention will be described below with reference to illustrated embodiments. FIG. 1A is a diagram showing a control block of this embodiment. The central processing circuit 11 includes an A / D converter 12,
Interval timer 13 and ROM 14a, RAM1
It is a microcomputer having 4b (hereinafter referred to as a microcomputer). In the central processing circuit 11, the BV detector 18 and the EEPROM 1 are connected via the analog signal A and the communication line B.
9 and the external data operating unit 20 are connected. The central processing circuit 11 further includes an oscillator 15, an LCD display 26,
The lens information input unit 27, the cartridge information input unit 28, the switch information input unit 29, the sequence control unit 32, the regulator 16, and the DC / DC converter 17 connected to the battery 21 are connected.

【0007】外部データ操作部20は、通信ラインBに
接続された端子群Cを介して中央処理回路11に接続さ
れている。この外部データ操作部20は、DTC30
と、端子群CおよびDTC30に接続されるインターフ
ェース31(図1B)を有している。これらのDTC3
0とインターフェース31は、通信端子群Dを介して互
いに接続されている。
The external data operating section 20 is connected to the central processing circuit 11 via a terminal group C connected to the communication line B. The external data operating unit 20 is a DTC 30.
And an interface 31 (FIG. 1B) connected to the terminal group C and the DTC 30. These DTC3
0 and the interface 31 are connected to each other via the communication terminal group D.

【0008】バッテリ21は、カメラ33のシステム
に、メイン電源を供給する。本実施例では、このカメラ
33を一眼レフカメラとして説明するが、本発明の適用
は一眼レフカメラに限られるものではなく、電子回路を
有するカメラであれば他のいかなるものにも適用可能で
ある。レギュレータ16は、バッテリ21の電圧を入力
し、中央処理回路11に一定の電圧を出力する。DC/
DCコンバータ17は、バッテリ電圧を入力し、中央処
理回路11からのパワーホールド信号を入力して周辺回
路に電源を出力する。BV検出部18は、中央処理回路
11からの制御により指定されたBV情報を中央処理回
路11に出力する。発振器15は、中央処理回路11に
高速と低速のクロック信号を供給する。
The battery 21 supplies main power to the system of the camera 33. In this embodiment, the camera 33 is described as a single-lens reflex camera, but the application of the present invention is not limited to the single-lens reflex camera, and any other camera having an electronic circuit can be applied. . The regulator 16 inputs the voltage of the battery 21 and outputs a constant voltage to the central processing circuit 11. DC /
The DC converter 17 inputs the battery voltage, inputs the power hold signal from the central processing circuit 11, and outputs power to the peripheral circuits. The BV detector 18 outputs the BV information designated by the control of the central processing circuit 11 to the central processing circuit 11. The oscillator 15 supplies high-speed and low-speed clock signals to the central processing circuit 11.

【0009】LCD表示器26は、中央処理回路11か
らのLCD表示データを表示する。レンズ情報入力部2
7は、装着されているレンズの種類により、レンズのA
/M、開放絞り、最小絞り、および焦点距離等の情報を
中央処理回路11に出力する。パトローネ情報入力部2
8は、パトローネの有無、フィルムの感度等の情報を中
央処理回路11に出力する。スイッチ情報入力部29
は、ミラーアップスイッチ、ミラーダウンスイッチ、フ
ィルムスイッチ、レリーズスイッチ、測光スイッチ、リ
ワインドスイッチ、裏蓋スイッチ、UP/DOWNスイ
ッチおよびモード設定スイッチの情報を中央処理回路1
1に出力する。
The LCD display 26 displays the LCD display data from the central processing circuit 11. Lens information input section 2
7 is the lens A depending on the type of lens attached.
Information such as / M, open aperture, minimum aperture, and focal length is output to the central processing circuit 11. Patrone information input section 2
Reference numeral 8 outputs information such as the presence or absence of a cartridge and the sensitivity of the film to the central processing circuit 11. Switch information input section 29
Is the central processing circuit 1 for the information of the mirror up switch, the mirror down switch, the film switch, the release switch, the photometric switch, the rewind switch, the back cover switch, the UP / DOWN switch and the mode setting switch.
Output to 1.

【0010】シーケンス制御部32は、中央処理回路1
1の信号によりミラーの制御、フィルムの露光およびフ
ィルムの巻き上げ等の制御を行なう。EEPROM19
は、中央処理回路11と通信ラインBを介して接続され
ており、EEPROMデータの読み出し/書き込みを行
なう。外部データ操作部20は、中央処理回路11と端
子群Cを介して接続され、中央処理回路11を介してカ
メラの調整、機能のチェック、仕様変更および撮影情報
の入力等を行なう。
The sequence control unit 32 includes a central processing circuit 1.
The signal 1 controls the mirror, the exposure of the film and the winding of the film. EEPROM 19
Is connected to the central processing circuit 11 via a communication line B, and reads / writes EEPROM data. The external data operating unit 20 is connected to the central processing circuit 11 via the terminal group C, and adjusts the camera, checks the functions, changes the specifications, inputs photographing information, and the like via the central processing circuit 11.

【0011】DTC(計算機)30は、カメラ機能チェ
ックRAM、EEPROMのセットダンプ等を行なうソ
フトを有するコンピュータである。DTC30は、EE
PROM19にソフト的にデータを書き込みたいとき書
込モードに設定し、このときスタックがOKであれば確
実に書き込むことができる。
A DTC (computer) 30 is a computer having software for performing a camera function check RAM, a set dump of EEPROM, and the like. DTC30 is EE
When it is desired to write data to the PROM 19 by software, the writing mode is set, and if the stack is OK at this time, writing can be surely performed.

【0012】インターフェース31とDTC30とは、
16ビット信号により相互に通信されるが、この通信の
タイムシーケンスを図2に示す。この中でインターフェ
ース31は、カメラ33から取り込んだ信号を16ビッ
ト信号に変換してDTC30と通信させる機能を有して
いる。図中の“PCTL”と“PFLAG”は、データ
のハンドシェイクを行なうための制御信号であり、“D
O15〜0”と“DI15〜0”により16ビットの入
出力を実行する。“CTL0”と“CTL1”の組み合
わせにより、テストコードであるか否かの判断を行な
う。
The interface 31 and the DTC 30 are
The 16-bit signals communicate with each other, and the time sequence of this communication is shown in FIG. Among them, the interface 31 has a function of converting a signal taken in from the camera 33 into a 16-bit signal and communicating with the DTC 30. "PCTL" and "PFLAG" in the figure are control signals for performing a data handshake,
16-bit input / output is executed by O15-0 "and" DI15-0 ". Whether or not the code is a test code is determined by the combination of" CTL0 "and" CTL1 ".

【0013】DTC30からデータを出力する場合、D
TC30は、I/Oを“L(ロー)”に設定し、PCT
Lを下げる以前に“DO15〜0”の送信データを確定
させる。次にPCTLを立ち下げて、データの入力要求
をインターフェース31を介して中央処理回路11に出
力する。PCTLの“L”を中央処理回路11が検出す
ると、中央処理回路11はインターフェース31を介し
て“DO15〜0”を入力する。そして、中央処理回路
11側は必要なデータを取り込んだということで、PF
LAGを立ち下げる。PFLAGが下がったことをイン
ターフェース31を介してDTC30が検出すると、D
TC30は次のデータの通信を可能にするためにPCT
Lを立ち上げる。インターフェース31を介して中央処
理回路11がPCTLの“H(ハイ)”を検出すると、
中央処理回路11は次のDTC30からの通信を許可す
るためにPFLAGを立ち上げる。DTC30と中央処
理回路11は、PCTLとPFLAGとを用いて、この
ような形でハンドシェイクを行なって、DTC30から
中央処理回路11にコマンド又はデータを出力する。な
お、コマンドとデータの区別について述べると、DTC
30は、CTL0が“H”の場合はテストコードの通
信、CTL0が“L”の場合はテストコードに付随した
データの通信として出力している。CTL1が“H”か
“L”かで、DTC30側からテスト要求があるか否か
をみることができ、“H”であれば“テスト要求あり”
とされ、“L”であれば“テスト要求なし”とされる。
When data is output from the DTC 30, D
TC30 sets I / O to "L (low)" and
Before lowering L, the transmission data of "DO15-0" is fixed. Next, the PCTL is turned off and a data input request is output to the central processing circuit 11 via the interface 31. When the central processing circuit 11 detects “L” of PCTL, the central processing circuit 11 inputs “DO15 to 0” via the interface 31. Then, since the central processing circuit 11 side has fetched the necessary data, the PF
Shut down LAG. When the DTC 30 detects that PFLAG has dropped through the interface 31, DTC 30
TC30 is a PCT to enable communication of the next data.
Start up L. When the central processing circuit 11 detects “H (high)” of PCTL via the interface 31,
The central processing circuit 11 activates PFLAG to permit communication from the next DTC 30. The DTC 30 and the central processing circuit 11 use PCTL and PFLAG to perform a handshake in this manner, and the DTC 30 outputs a command or data to the central processing circuit 11. The distinction between command and data is DTC.
30 outputs as test code communication when CTL0 is "H", and as data communication accompanying the test code when CTL0 is "L". Whether or not there is a test request from the DTC 30 side can be checked based on whether CTL1 is "H" or "L". If "H", "test request"
If “L”, it means “no test request”.

【0014】DTC30にデータを入力する場合、DT
C30は、I/Oを“H”の状態に設定し、PCTLを
立ち下げる。インターバルタイマ31を介してPCTL
の“L”を中央処理回路11が検出すると、中央処理回
路11側は、そのときのコマンドに応じたデータをイン
ターフェース31を介して“DI15〜0”に出力させ
る。そして、インターフェース31を介してPFLAG
(Pフラグ)の“L”をDTC30に出力し、データの
入力を指示する。その後、上述同様のハンドシェイクを
実行して、DTC30側にデータを読み込ませる。
When inputting data to the DTC 30, the DT
The C30 sets the I / O to the "H" state and causes the PCTL to fall. PCTL via interval timer 31
When the central processing circuit 11 detects "L" of "1", the central processing circuit 11 side outputs data corresponding to the command at that time to "DI15-0" via the interface 31. Then, through the interface 31, PFLAG
"L" of (P flag) is output to the DTC 30 to instruct data input. After that, the same handshake as described above is executed to cause the DTC 30 side to read the data.

【0015】図3Aに、DTC30とインターフェース
31、およびカメラ33の接続関係を示す。インターフ
ェース31は、カメラ33からのチップイネーブル信号
(DCE)により動作可能となる。インターフェース3
1は、カメラ33側の信号により、CTL1と“DO1
5〜8”等のデータを切り替えてカメラ33に出力する
データ切替ブロック34、DTC30からのパラレルデ
ータをカメラ33からのシリアルクロックに同期してシ
リアル変換し、データ切替ブロック34に出力するため
のパラレル/シリアル変換ブロック35、カメラ33か
らの1バイトごとのシリアルクロックに応じてラッチパ
ルスを発生するラッチパルス発生ブロック36、シリア
ル信号をパラレル信号に変換させ、各ラッチブロックに
出力するシリアル/パラレル変換ブロック38、カメラ
33から出力される“DI15〜0”のシリアル信号の
上位8ビットをラッチし、DTC30に出力する上位8
bitラッチブロック37、同様に下位8ビットをラッ
チしDTC30に出力する下位8bitラッチブロック
39、同様にカメラ33から出力されるPFLAGのシ
リアル信号をPFLAG信号をラッチし、DTC30に
出力するPFLAG信号ラッチブロック40を有してい
る。
FIG. 3A shows the connection relationship between the DTC 30, the interface 31, and the camera 33. The interface 31 can be operated by a chip enable signal (DCE) from the camera 33. Interface 3
1 is CTL1 and “DO1” according to the signal from the camera 33 side.
A data switching block 34 for switching data such as 5-8 "and outputting it to the camera 33, a parallel data for converting parallel data from the DTC 30 into serial data in synchronization with a serial clock from the camera 33, and outputting the parallel data to the data switching block 34. / Serial conversion block 35, latch pulse generation block 36 for generating a latch pulse according to a serial clock for each byte from the camera 33, serial / parallel conversion block for converting a serial signal into a parallel signal and outputting it to each latch block 38, the upper 8 bits of the “DI15 to 0” serial signal output from the camera 33 are latched and output to the DTC 30.
A bit latch block 37, a lower 8 bit latch block 39 which similarly latches the lower 8 bits and outputs it to the DTC 30, and a PFLAG signal latch block which similarly latches the PFLAG serial signal output from the camera 33 and outputs the PFLAG signal to the DTC 30. Has 40.

【0016】インターフェース31とDTC30を接続
する通信端子群Dは、端子41(CTL1)、端子42
(DO15〜8)、端子43(DO7〜0)、端子44
(CTL0、PCTL、I/O)、端子45(DI15
〜8)、端子46(DI7〜0)、および端子47(P
FLAG)を有する。
The communication terminal group D connecting the interface 31 and the DTC 30 includes a terminal 41 (CTL1) and a terminal 42.
(DO15 to 8), terminal 43 (DO7 to 0), terminal 44
(CTL0, PCTL, I / O), terminal 45 (DI15
~ 8), terminal 46 (DI7-0), and terminal 47 (P
FLAG).

【0017】カメラ33とインターフェース31を接続
する端子群Cは、端子48(SI)、端子49(DC
E)、端子50(SCK)、端子51(SO)を有して
いる。端子48(SI)は、カメラ33側で抵抗53に
よりプルアップされている。これらの端子48〜51
は、通常はユーザーが使用することのない端子であり、
カメラ33の外部に露出されてはいない。
The terminal group C for connecting the camera 33 and the interface 31 includes a terminal 48 (SI) and a terminal 49 (DC
E), a terminal 50 (SCK), and a terminal 51 (SO). The terminal 48 (SI) is pulled up by the resistor 53 on the camera 33 side. These terminals 48-51
Is a terminal that the user normally does not use,
It is not exposed to the outside of the camera 33.

【0018】端子48(SI)は、カメラ33側に、シ
リアルクロックに応じてデータを出力する端子である。
CTL1は、“H”でテスト要求であり(図2)、CT
L1の選択時、カメラ33側にはデータ切替ブロック3
4で反転して、SI端子に“L”が出力される。カメラ
33側では、CTL1の“L”を入力することによっ
て、DTC30側からのテスト要求がある、と判断する
ことができる。端子49(DCE)はチップイネーブル
であり、カメラ33からインターフェース31に対して
データの入出力を要求するための信号であり、“L”で
要求、“H”で、インターフェース31から信号が出な
いように禁止することができる。端子50(SCK)
は、カメラ33とDTC30とが相互にシリアル通信す
るためのシリアルクロックをインターフェース31に供
給する端子である。端子51(SO)は、カメラ33か
らインターフェース31にシリアルデータを出力する端
子である。
The terminal 48 (SI) is a terminal for outputting data to the camera 33 side according to the serial clock.
CTL1 is a test request at "H" (Fig. 2), and CT
When L1 is selected, the data switching block 3 is provided on the camera 33 side.
It is inverted at 4, and "L" is output to the SI terminal. By inputting "L" of CTL1 on the camera 33 side, it can be determined that there is a test request from the DTC 30 side. The terminal 49 (DCE) is a chip enable and is a signal for requesting the input / output of data from the camera 33 to the interface 31. A request is made with "L", and a signal is not outputted from the interface 31 with "H". Can be banned as Terminal 50 (SCK)
Is a terminal that supplies a serial clock for serial communication between the camera 33 and the DTC 30 to the interface 31. The terminal 51 (SO) is a terminal for outputting serial data from the camera 33 to the interface 31.

【0019】パラレル/シリアル変換ブロック35は、
端子42〜44および端子49、50に接続されてお
り、チップイネーブルされているときにシリアルクロッ
クに同期してデータ切替ブロック34にシリアルデータ
を出力する。このデータ切替ブロック34は、端子41
およびブロック35の出力、端子49と端子50に接続
されており、CTL1の出力と、シリアルクロックに応
じて端子42〜44から出力されパラレル/シリアル変
換された出力とを切り替え、端子48(SI)に出力す
る。データ切替ブロック34は、常時はオープンにされ
ていて、チップイネーブルがかかってクロックが出てく
るまでCTL1を選択出力している。ラッチパルス発生
ブロック36は、端子49、50、51に接続されてお
り、上位8bitラッチブロック37、下位8bitラ
ッチブロック39およびPFLAG信号ラッチブロック
40にラッチクロックを出力する。シリアル/パラレル
変換ブロック38は、端子49〜51に接続されてお
り、8bitのシリアルデータをパラレルデータに変換
させて、上位8bitラッチブロック37、下位8bi
tラッチブロック39およびPFLAG信号ラッチブロ
ック40に8bitパラレルデータを出力する。該ラッ
チブロック38、39、40は、ラッチパルス発生ブロ
ック36から出力されてくるラッチ信号に応じて、シリ
アル/パラレル変換ブロック38からのパラレルデータ
をラッチする。
The parallel / serial conversion block 35 includes
It is connected to the terminals 42 to 44 and the terminals 49 and 50, and outputs the serial data to the data switching block 34 in synchronization with the serial clock when the chip is enabled. This data switching block 34 has a terminal 41
Also, the output of the block 35, which is connected to the terminals 49 and 50, switches between the output of the CTL1 and the parallel / serial converted outputs output from the terminals 42 to 44 in accordance with the serial clock, and the terminal 48 (SI). Output to. The data switching block 34 is normally open and selectively outputs CTL1 until a clock is output due to chip enable. The latch pulse generation block 36 is connected to the terminals 49, 50 and 51 and outputs a latch clock to the upper 8-bit latch block 37, the lower 8-bit latch block 39 and the PFLAG signal latch block 40. The serial / parallel conversion block 38 is connected to the terminals 49 to 51, converts 8-bit serial data into parallel data, and outputs the upper 8-bit latch block 37 and the lower 8-bit.
8 bit parallel data is output to the t latch block 39 and the PFLAG signal latch block 40. The latch blocks 38, 39 and 40 latch the parallel data from the serial / parallel conversion block 38 according to the latch signal output from the latch pulse generation block 36.

【0020】上位8bitラッチブロック37は、ラッ
チパルス発生ブロック36とシリアル/パラレル変換ブ
ロック38の出力に接続されており、端子45にDI1
5〜8データを出力する。下位8bitラッチブロック
39は、ラッチパルス発生ブロック36とシリアル/パ
ラレル変換ブロック38の出力に接続されており、端子
46にDI7〜0データを出力する。PFLAG信号ラ
ッチブロック40は、ラッチパルス発生ブロック36と
シリアル/パラレル変換ブロック38の出力に接続され
ており、端子47にPFLAG信号を出力する。
The upper 8-bit latch block 37 is connected to the outputs of the latch pulse generation block 36 and the serial / parallel conversion block 38, and DI1 is connected to the terminal 45.
Output 5-8 data. The lower 8-bit latch block 39 is connected to the outputs of the latch pulse generation block 36 and the serial / parallel conversion block 38, and outputs DI7-0 data to the terminal 46. The PFLAG signal latch block 40 is connected to the outputs of the latch pulse generation block 36 and the serial / parallel conversion block 38, and outputs the PFLAG signal to the terminal 47.

【0021】図3Bに、上記各端子から入出力される信
号のタイミングを示す。端子49(DCE)が“H”の
とき、チップイネーブルをかける以前に、しかるべきシ
リアル通信を行ない、ノットセル(NOTSEL)の状
態にする。このノットセルはいわば、中央処理回路11
と、EEPROM19およびBV検出部18の間の通信
ラインをカットして、該中央処理回路11と外部データ
操作部20との通信を行なわせるための準備段階であ
る。次にカメラ33はチップイネーブル(DCE)を
“L”にする。この状態でシリアルクロックを出すまで
はSI端子のレベルによりDTC30のCTL1信号の
レベルをチェックすることができる。SI端子が“L”
のときはDTC30からのTEST要求あり(CTL1
=1)であり、逆に、SI端子が“H”のときはDTC
30からのTEST要求はない。
FIG. 3B shows the timing of signals input and output from the above terminals. When the terminal 49 (DCE) is at "H", appropriate serial communication is performed and a knot cell (NOTSEL) state is set before the chip enable is applied. This knot cell is, so to speak, the central processing circuit 11
Is a preparatory stage for cutting the communication line between the EEPROM 19 and the BV detecting section 18 to allow the central processing circuit 11 and the external data operating section 20 to communicate with each other. Next, the camera 33 sets the chip enable (DCE) to "L". Until the serial clock is output in this state, the level of the CTL1 signal of the DTC 30 can be checked by the level of the SI terminal. SI terminal is "L"
In case of, there is a TEST request from DTC 30 (CTL1
= 1), conversely, when the SI terminal is "H", DTC
There is no TEST request from 30.

【0022】次にシリアル通信を行なうと、最初のシリ
アル通信では、端子48(SI)からPCTLに関する
データ(I/O、CTL0のデータも含む)が、カメラ
33側に出力される。この最初の8ビットのシリアル通
信に対し、端子51(SO)から、PFLAGに関する
データ、つまりPフラグが立っているか否かのデータが
カメラ33から出力される。続けてシリアルクロックを
出力すると、端子48(SI)にDO7〜0、端子51
(SO)にはDI7〜0のデータ、さらに続けてシリア
ルクロックを出力すると、端子48(SI)にはDO1
5〜8、端子51(SO)にはDI15〜8のデータが
シリアル通信される。シリアル通信は、チップイネーブ
ルの後、8ビット単位で0〜3回有効であり、その範囲
でチップイネーブルを途中でOFF して通信を止めること
ができる。
Next, when serial communication is performed, in the first serial communication, data relating to PCTL (including data of I / O and CTL0) is output from the terminal 48 (SI) to the camera 33 side. For this first 8-bit serial communication, data relating to PFLAG, that is, data indicating whether or not the P flag is set is output from the camera 33 from the terminal 51 (SO). When the serial clock is continuously output, DO7-0 and terminal 51 are output to the terminal 48 (SI).
When the data of DI7-0 is output to (SO) and the serial clock is output continuously, DO1 is output to the terminal 48 (SI).
5 to 8 and terminals 51 (SO) serially communicate data of DI 15 to 8. Serial communication is valid 0 to 3 times in 8-bit units after chip enable, and the communication can be stopped by turning off chip enable in the range within that range.

【0023】図4〜図22に示すフローチャートによ
り、本実施例のカメラ33およびDTC30の作動を説
明する。図20以外はカメラ側のフローチャートであ
る。図4と図5は、“VDD OFF ループ”つまりメイン電
源を入れる前の通常の動作を示している。まず“RES
ET”のラベルで始まるルーチンに入る。ステップS1
では、スタックポインタの初期設定を実行し、S2で
は、RAMオールクリア、ポート入出力、出力データの
設定および特殊レジスタの設定等の“リセット処理”を
実行し、“SW1CHK”のラベルで始まるルーチンに
進む。
[0023] The flowchart shown in FIGS. 4 to 22, for explaining the operation of the camera 33 and DTC30 of this embodiment. 20 is a flowchart on the camera side except for FIG. 4 and 5 show the "VDD OFF loop", that is, the normal operation before the main power is turned on. First, "RES
The routine starts with the label "ET". Step S1
Then, the stack pointer is initialized, and in S2, "reset processing" such as RAM all clear, port input / output, output data setting and special register setting is executed, and the routine starts with the label "SW1CHK". move on.

【0024】S3では、VDD ONフラグをクリアし、S4
では、スタックポインタの再設定を実行し、S5では、
“TEST”のラベルで始まるサブルーチンをコールし
て“TESTチェック処理”を実行する。S6では、D
TC30からのテスト要求があるか否かを判断し、要求
があればS7に進み、なければS8に進む。S8では、
UP/DOWNスイッチおよびモード設定スイッチをモ
ニターし、データ変更等の“UP/DOWN処理”を実
行する。S9では、UP/DOWN処理等で設定された
内部データの表示を行なう“LCD表示処理”を実行す
る。S10では、測光スイッチがONされたか否かを判断
し、ONされればS7に進んでVDD ONフラグをセットし、
そうでなければS11に進む。S11では、レリーズス
イッチがONされているか否かを判断し、ONされればS7
に進み、そうでなければS12に進む。S12では、V
DDを OFFしてパワーホールドをOFF し、S13では、
タイマ割り込み許可を実行する。S14では“パワーダ
ウン処理”を実行してパワーダウンモードに入る。所定
時間後、タイマ割り込みがかかり、S15にて“タイマ
割り込み処理”を実行する。このS14とS15の間
で、パワーダウンすることにより消費電流を抑える。S
16では“タイマ割り込み禁止”を実行し、“SW1C
HK”のラベルにループする。
In S3, the VDD ON flag is cleared, and in S4
Then, the stack pointer is reset, and in S5,
A subroutine starting with the label "TEST" is called to execute "TEST check processing". In S6, D
It is determined whether or not there is a test request from the TC 30, and if there is a request, the process proceeds to S7, and if not, the process proceeds to S8. In S8,
The UP / DOWN switch and the mode setting switch are monitored, and "UP / DOWN processing" such as data change is executed. In S9, "LCD display processing" for displaying the internal data set by the UP / DOWN processing or the like is executed. In S10, it is determined whether or not the photometric switch is turned on. If it is turned on, the process proceeds to S7 to set the VDD ON flag,
Otherwise, proceed to S11. In S11, it is determined whether or not the release switch is turned ON, and if it is turned ON, S7
If not, proceed to S12. In S12, V
Turn off DD and turn off power hold.
Execute timer interrupt enable. In S14, "power down processing" is executed to enter the power down mode. After a predetermined time, a timer interrupt occurs, and "timer interrupt processing" is executed in S15. Power consumption is suppressed by powering down between S14 and S15. S
In 16, the "timer interrupt disable" is executed and "SW1C
Loop to the label "HK".

【0025】S7では、VDDフラグをセットし、S1
7では、VDDを投入してパワーホールドをONし、S1
8では、周辺回路リセット時間およびBV安定時間のウ
エイトを行なう“VDD 安定時間ウエイト処理”を実行す
る。S19では、“TEST”のラベルで始まるサブル
ーチンをコールして“VDDON TEST 処理”を実行し、S
20では、“SIEEP”のラベルで始まるサブルーチ
ンを連続的にコールし、AE演算、シーケンス制御用E
EPROMデータをRAM14aに入力する“EEPR
OMデータ入力処理”を実行する。S21では、マウン
トピン情報、レンズROM情報等を入力する“レンズチ
ェック処理”を実行し、“RESTART”に進む。
In S7, the VDD flag is set and S1 is set.
In step 7, VDD is turned on to turn on the power hold and S1
In 8, the "VDD stable time wait process" for waiting for the peripheral circuit reset time and BV stable time is executed. In S19, a subroutine starting with the label "TEST" is called to execute "VDDON TEST processing", and S
In 20, the subroutine starting with the label of "SIEEP" is continuously called, and E for sequence calculation and sequence control is called.
"EEPR" for inputting EPROM data to RAM 14a
OM data input processing "is executed. In S21," lens check processing "for inputting mount pin information, lens ROM information, etc. is executed, and the flow advances to" RESTART ".

【0026】図6と図7にメインルーチンを示す。まず
“RESTART”のラベルで始まるルーチンに入り、
S22では、インターバルタイマを初期設定し、S23
では、このインターバルタイマを利用して、パワーホー
ルドタイマが10秒になるようにデータをセットする処
理を実行し、“VDD LP”のラベルに進む。S24
では、ミラーのUP/DOWN処理を実行し、S25で
は、レンズチェック処理を実行し、S26では、“BV
A/D変換処理”を実行する。S27では、“パトロ
ーネ情報入力処理”を実行して、フィルムの有無、フィ
ルム感度等のデータを入力し、変換する。S28では、
入力されたデータをもとにTV値、AV値等を求める
“AE演算処理”を実行する。S29では、テストを許
可するか否かを判断し、許可するならS30に進んで
“TEST処理”を実行し、そうでなければS31にジ
ャンプする。
The main routine is shown in FIGS. 6 and 7. First, enter the routine starting with the label "RESTART",
In S22, the interval timer is initialized and S23 is set.
Then, using this interval timer, a process of setting data so that the power hold timer is set to 10 seconds is executed, and the process proceeds to the label “VDD LP”. S24
Then, the mirror UP / DOWN processing is executed, the lens check processing is executed in S25, and the "BV
A / D conversion processing "is executed. In S27," Patrone information input processing "is executed to input and convert data such as presence / absence of film and film sensitivity.
Based on the input data, "AE calculation processing" for obtaining TV value, AV value, etc. is executed. In S29, it is determined whether or not the test is permitted. If the test is permitted, the process proceeds to S30 to execute the "TEST process", and if not, the process jumps to S31.

【0027】S31では、LCD表示器26に対するL
CD表示処理を実行し、S32では、レリーズ釦が押さ
れたか否かを判断し、レリーズ釦が押されれば“レリー
ズ処理”のラベルで始まるルーチンに進み、そうでなけ
ればS33に進む。S33では、S22で設定したイン
ターバルタイマの時間間隔のチェックを行ない、設定さ
れた時間が経過するまではS32に戻り、経過した時点
でS34に進む。S34では、“パワーホールドタイマ
カウント処理”を実行し、S35では、そのパワーホー
ルドタイマのカウントが終了したか否かを判断し、終了
したら“SW1CHK”に進んでパワーダウンループに
入り、そうでなければ“VDD LP”に戻り、処理を
繰り返す。
At S31, L for the LCD display 26 is displayed.
The CD display processing is executed, and in S32, it is determined whether or not the release button is pressed. If the release button is pressed, the routine starts with the label "release processing". If not, the routine proceeds to S33. In S33, the time interval of the interval timer set in S22 is checked, the process returns to S32 until the set time elapses, and the process proceeds to S34 when the time elapses. In S34, a "power hold timer count process" is executed, and in S35, it is determined whether or not the count of the power hold timer is finished. For example, the operation returns to "VDD LP" and the processing is repeated.

【0028】次に“レリーズ処理”について説明する。
S36では、BV検出部18のアナログ信号を中央処理
回路11に出力させて、レリーズ直前のBV値のA/D
変換を実行する。S37では、AE演算処理を実行し、
S38では、ミラーアップ処理を実行し、S39では、
露光制御処理を実行し、S40では、ミラーとフィルム
巻き上げ処理を実行する。S41では、フィルムの終端
が検出されたか否かを判断し、検出されればS43に進
み、そうでなければS42に進む。S42では、“FI
LMCUP(フィルムカウントアップ)”のラベルで始
まるサブルーチンをコールして“フィルム枚数のカウン
ト処理”を実行し、“RESTART”のラベルへ戻
る。S43では、“フィルム巻戻し処理”を実行し、S
44では、“FILMCLR(フィルムクリア)”のラ
ベルで始まるサブルーチンをコールして“フィルム枚数
クリア処理”を実行して“SW1CHK”へ飛ぶ。
Next, the "release process" will be described.
In S36, the analog signal of the BV detector 18 is output to the central processing circuit 11, and the A / D of the BV value immediately before the release is output.
Perform the conversion. In S37, AE calculation processing is executed,
In S38, mirror up processing is executed, and in S39,
Exposure control processing is executed, and in S40, mirror and film winding processing is executed. In S41, it is determined whether or not the end of the film has been detected. If detected, the process proceeds to S43, and if not, the process proceeds to S42. In S42, "FI
The subroutine starting with the label "LMCUP (Film Count Up)" is called to execute "Counting the number of films" and then returning to the label "RESTART." In S43, "Film rewinding" is executed
At 44, a subroutine starting with a label "FILM CLR (film clear)" is called to execute "film number clear processing" and jump to "SW1CHK".

【0029】図8および図9は、EEPROM19への
データの書き込みを示すフローチャートである。“FI
LM CUP”のラベルで始まるルーチンはカウントア
ップ時のものであり、“FILM CLR”のラベルで
始まるルーチンはフィルム枚数クリア時のものである。
S45では、RAMのフィルム枚数をカウントアップ
し、S46では、フィルム枚数をバッファにセットして
おく。S47では、EEPROM19の、フィルム枚数
が書かれているアドレスポインタを設定する。S48で
は、DTC30のライト(書き込み)フラグをクリア
し、DTC30の書き込みではなく、通常カメラモード
での書き込みということをソフト的に設定して“SOE
EP”のラベルで始まるルーチンに進む。
FIG. 8 and FIG. 9 are flow charts showing the writing of data to the EEPROM 19. "FI
The routine starting with the label "LM CUP" is for counting up, and the routine starting with the label "FILM CLR" is for clearing the number of films.
In S45, the number of films in the RAM is counted up, and in S46, the number of films is set in the buffer. In S47, the address pointer in which the number of films is written in the EEPROM 19 is set. In S48, to clear the light (writing) flag of DTC30, rather than the writing of DTC30, the fact that writing in the normal camera mode software to set to the "SOE
Proceed to the routine beginning with the label "EP".

【0030】“SOEEP”は、DTC30側からのE
EPROM19への書き込み等のときにコールされるサ
ブルーチンである。S50では、書き込みを始める前に
EEPROMに、今現在、同じデータが書かれていない
かということをチェックするために“SIEEP”のラ
ベルで始まるサブルーチンをコールして、“EEPRO
Mデータ入力処理”を実行し、EEPROMデータの状
態をチェックする。S51、S52では、下位バイトお
よび上位バイトをチェックして、両方とも同じであれば
リターンして何も処理を実行しない。どちらかが違って
いれば、S53において、暴走等によりスタックが深く
なり過ぎていないか否かを判断する。この結果、スタッ
クがOKならばS54に進み、スタックが異常に深くな
っていると判断された場合はリターンし、書き込みを実
行しない。ここで、EEPROM19は1ワード単位で
あり、“1ワード×64”の容量を有する。この1ワー
ドは下位バイトと上位バイトからなっているから、下位
のデータつまり下位8ビットが、書き込もうとしている
データと同じか否か、上位のデータつまり上位8ビット
が書き込もうとしているデータと同じか否か、を判断し
ている。
"SOEEP" means E from the DTC 30 side.
This is a subroutine called when writing to the EPROM 19 or the like. In S50, a subroutine starting with the label "SIEEP" is called to check whether the same data is currently written in the EEPROM before starting writing, and "EEPRO" is called.
M data input processing "is executed to check the state of the EEPROM data. In S51 and S52, the lower byte and the upper byte are checked, and if both are the same, a return is made and no processing is executed. If the stack is OK, it is determined in S53 whether the stack has become too deep due to a runaway, etc. As a result, if the stack is OK, the process proceeds to S54, and it is determined that the stack is abnormally deep. In this case, the operation returns and writing is not executed.Here, the EEPROM 19 has a capacity of "1 word x 64" in units of 1 word. Since this 1 word is composed of the lower byte and the upper byte, the lower data In other words, whether the lower 8 bits are the same as the data to be written, the upper data, that is, the upper 8 bits are to be written. Whether the same or not as there data, are to determine the.

【0031】カメラ33のRAM14b上に設定された
スタックエリアは、通常の動作時には充分な位の容量を
有しているが、暴走等によりリターンがなくコールのみ
繰り返される場合は、その領域がすぐに潰されてしま
う。このため、そのような状態で書込サブルーチンがコ
ールされても、書込データがバッファに正常に入ってい
るかどうか分からないという理由により、S53におい
てNOの場合にはリターンさせる。
The stack area set on the RAM 14b of the camera 33 has a sufficient capacity during normal operation, but if there is no return due to runaway or the like and only calls are repeated, that area will be immediately released. It will be crushed. Therefore, even if the write subroutine is called in such a state, it is not known whether or not the write data is normally stored in the buffer. Therefore, in the case of NO in S53, the process is returned.

【0032】S54では、“DTC30ライト(書き込
み)モード”か否かを判断し、このモードであればS5
6にジャンプし、DTC30からの書き込みではなく通
常カメラモードにおける書き込みである場合はS55に
進む。つまり“DTCライト(書き込み)モード”のと
きは、EEPROM19の全アドレスに対して書き込み
が可能となる。
In S54, it is judged whether or not the "DTC30 write (write) mode" is set, and if it is this mode, S5 is set.
If the writing is not in the DTC 30 but in the normal camera mode, the process proceeds to S55. That is, in the "DTC write (write) mode", writing is possible to all addresses of the EEPROM 19.

【0033】S55では、フィルムアドレスをチェック
する。ここでは、“FILMCUP”または“FILM
CLR”から入ってきたとき設定されているフィルム枚
数用のEPアドレスポインタと同じアドレスがそのまま
検出できるか否かをみる。そして“FILMCUP”か
ら入ってくれば必ずイコールになるはずであるが、別の
ところからフィルム枚数用のアドレス以外に書き込もう
として“SOEEP”等をコールした場合には、フィル
ムアドレスが等しくないから書き込みはできない。つま
りフィルムアドレスと等しいところ以外は書き込みがで
きないようにここで設定される。
At S55, the film address is checked. Here, "FILM CUP" or "FILM
Check if the same address as the EP address pointer for the number of films set when entering from "CLR" can be detected as it is. And if it comes from "FILMCUP", it should be equal. However, if you call "SOEEP" etc. to write to an address other than the number of films, you cannot write because the film addresses are not the same. To be done.

【0034】S56では、EEPROMチップイネーブ
ルを実行し、S57では、EEPROM19への書き込
み許可通信(モードおよびアドレス)を実行し、S58
では、EEPROMチップイネーブルをOFF し、S59
では、EEPROMチップイネーブルを実行し、S60
では、EEPROM書き込み開始通信(モードおよびア
ドレス)を実行する。S61では、下位バイト(下位8
ビット)データ出力通信を実行し、S62では、上位バ
イト(上位8ビット)データ出力通信を実行し、S63
では、書き込み時間の15mSのウエイトを実行し、S6
4では、EEPROMチップイネーブルをOFF し、S6
5では、EEPROMチップイネーブルを実行し、S6
6では、書き込み禁止コード通信(モードおよびアドレ
ス)を実行し、S67では、EEPROMチップイネー
ブルをOFF してリターンする。“FILM CLR”に
おいて、S49では、RAM14aにメモリされたフィ
ルム枚数をクリアしてS46に飛ぶ。したがって、DT
C30に接続されていない通常のカメラ撮影モードで正
常動作しているときに、必要以外のEEPROM19へ
の書き込みが禁止され、また異常動作が検出されたとき
も、EEPROM19への書き込みが禁止される。
In step S56, EEPROM chip enable is executed, in step S57, write permission communication (mode and address) to the EEPROM 19 is executed, and in step S58.
Then, turn off the EEPROM chip enable and set S59.
Now, execute the EEPROM chip enable, and execute S60
Then, the EEPROM write start communication (mode and address) is executed. In S61, the lower byte (lower 8
(Bit) data output communication is executed, and in S62, upper byte (upper 8 bits) data output communication is executed, and S63
Now, execute the write time wait of 15 mS and execute S6
In 4, the EEPROM chip enable is turned off and S6
In 5, the EEPROM chip enable is executed, and S6 is executed.
In step 6, write inhibit code communication (mode and address) is executed, and in step S67, the EEPROM chip enable is turned off and the process returns. In "FILM CLR", in S49, the number of films stored in the RAM 14a is cleared, and the process jumps to S46. Therefore, DT
During normal operation in the normal camera photographing mode not connected to C30, writing to the EEPROM 19 other than necessary is prohibited, and also when abnormal operation is detected, writing to the EEPROM 19 is prohibited.

【0035】図10により、“SIEEP”のラベルで
始まるEEPROM19からDTC30側にデータを読
み込む場合のルーチンを説明する。S68では、通信ラ
インにBV検出部18や外部機器等、他のデータも存在
するので、EEPROM19との通信を行なうために通
信先変更モードをセットする。S69では、通信先をE
EPROM19に変更する。S70では、データ通信モ
ードをセットし、S71では、EEPROMチップイネ
ーブルを実行し、S72で、EEPROM読み出し開始
通信(モードおよびアドレス)を実行する。S73で
は、下位バイトをバッファに入力し、S74で、上位バ
イトをバッファに入力し、S75で、EEPROMチッ
プイネーブルをOFF する。
A routine for reading data from the EEPROM 19 starting from the label "SIEEP" to the DTC 30 side will be described with reference to FIG. In S68, since other data such as the BV detection unit 18 and external devices exist in the communication line, the communication destination change mode is set to communicate with the EEPROM 19. In S69, the communication destination is E
Change to EPROM 19. In S70, the data communication mode is set, in S71, the EEPROM chip enable is executed, and in S72, the EEPROM read start communication (mode and address) is executed. The lower byte is input to the buffer in S73, the upper byte is input to the buffer in S74, and the EEPROM chip enable is turned off in S75.

【0036】図11と図12により、“TEST”のラ
ベルで始まるルーチンを説明する。S76では、初期設
定としてDTC30からのパワーホールドの要求がない
としてPH要求フラグを設定する。S77では、テスト
スイッチを入力処理し、S78では、テスト要求があっ
たか否かを判断し、要求されればS79に進み、そうで
なければリターンする。S79では、DTCエラーが既
に検出されていたか否かを判断する。このDTCエラー
とは、例えば或るテストコードの次に必ず入力で来なけ
ればならない場合に、DTC30が出力したような場合
に設定される。
The routine starting with the label "TEST" will be described with reference to FIGS. In S76, the PH request flag is set as the initial setting because there is no power hold request from the DTC 30. In S77, the test switch is input, and in S78, it is determined whether or not there is a test request, and if so, the process proceeds to S79, otherwise returns. In S79, it is determined whether or not the DTC error has already been detected. The DTC error is set, for example, when the DTC 30 outputs when a test code must be input next.

【0037】S79においてDTCエラーと判断されれ
ばS85に飛び、そうでなければS80に進む。S80
では、PFLAGに“1”を出力しておかないとDTC
30側からPCTLを立ち下げることができないので、
まずPFLAGに“1”を出力し、ついでS81におい
て、PCTL入力処理を実行する。S82では、PCT
Lが“0”になったか否か、つまりDTC30側からの
要求があるか否かを判断し、“0”のときはS83に進
み、そうでなければRAMモニターを実行させるため、
S85に進む。
If a DTC error is determined in S79, the process jumps to S85, and if not, the process proceeds to S80. S80
Then, unless you output "1" to PFLAG, DTC
Since PCTL cannot be shut down from the 30 side,
First, "1" is output to PFLAG, and then the PCTL input process is executed in S81. In S82, PCT
It is determined whether L becomes "0", that is, whether there is a request from the DTC 30 side. If "0", the process proceeds to S83. If not, the RAM monitor is executed.
Proceed to S85.

【0038】S83では、現在、パワーダウンループに
あるのかメインループにあるのかをみるために、VDD
フラグがONされているか否かを判断する。この結果、パ
ワーダウンループにあるとされた場合は、リターンした
後自動的に電源がセットされるように、S84において
DTCパワーホールドフラグをセットし、S85〜S8
7においてRAMモニターしてリターンする。つまりS
85では、サンプリング可否ビットを判断し、可であれ
ばS86に進み、モニターRAMアドレスを入力し、そ
のアドレスに対するボディのRAMデータをバッファに
セットする。S87では、16ビットデータ出力処理を
実行し、バッファのデータが下位8ビット(DI7〜
0)に出力される。
At S83, VDD is checked to see whether the power-down loop or the main loop is present.
Judge whether the flag is ON. As a result, when it is determined that the power is in the power down loop, the DTC power hold flag is set in S84 so that the power is automatically set after returning, and S85 to S8 are set.
The RAM is monitored at 7 and the process returns. That is, S
At 85, the sampling permission / prohibition bit is judged. If the sampling permission / prohibition bit is determined to be valid, the process proceeds to S86, the monitor RAM address is input, and the RAM data of the body corresponding to the address is set in the buffer. In S87, 16-bit data output processing is executed, and the data in the buffer is the lower 8 bits (DI7-
0) is output.

【0039】既に電源がONされていると判断されれば、
DTC通信モードに切り替えて、PCTLを入力して、
PCTLが“0(ロー)”になるまで待ち(S88〜S
90)、ローになったらS91に進む。S91では、C
TL0が“1”にされたか否かを判断し、“1”にされ
ればS92に進み、そうでなければリターンする。S9
2では、テストスイッチ入力処理を実行し、S93で
は、テスト要求があるか否かを判断する。テスト要求が
あればS94に進み、そうでなければリターンする。
If it is determined that the power is already turned on,
Switch to DTC communication mode, input PCTL,
Wait until PCTL becomes "0 (low)" (S88-S
90), when it goes low, proceed to S91. In S91, C
It is determined whether TL0 is set to "1". If it is set to "1", the process proceeds to S92, and if not, the process returns. S9
In 2, the test switch input process is executed, and in S93, it is determined whether or not there is a test request. If there is a test request, proceed to S94, otherwise return.

【0040】S94では、DTCコードの入力処理を実
行し、DTCコードの下位が“FE”というテストコー
ドだったらリターンで抜け、下位が“FF”というテス
トコードであれば“RESET”のラベルに抜ける(S
94〜S96)。テストコードの下位が“FE”でも
“FF”でもない場合は、さらに、登録コードを判断す
る。図13に示されるテストテーブルには、“SUBC
HK”、“RAMDUMP”、“RAMSET”、“E
EPDUMP”、“EEPSET”のコードが登録され
ている。これ以外のテストコードである場合には、“D
TC ERR”のラベルで始まるルーチンに進む。この
ルーチンでは、S99で、PFLAGに“0”を出力
し、S100に進んでDTC30エラーフラグをセット
する。つまり、それ以後のハンドシェイクができないよ
うにしてパワーダウンの“SW1CHK”ルーチンに抜
ける。
In S94, the input process of the DTC code is executed. If the lower part of the DTC code is the test code "FE", the process exits by return. (S
94-S96). When the lower order of the test code is neither "FE" nor "FF", the registration code is further determined. The test table shown in FIG. 13 includes “SUBC
HK ”,“ RAMDUMP ”,“ RAMSET ”,“ E ”
Codes of "EPDUMP" and "EEPSET" are registered. In case of other test codes, "D"
The routine starts with the label "TC ERR". In this routine, "0" is output to PFLAG in S99, and the DTC30 error flag is set in S100. That is, the handshake after that is disabled. Exit to the power-down "SW1CHK" routine.

【0041】S101では、テストコードはOKか否か
を判断する。つまり、テストコードのときに出力される
データは、例えば図20に示されるように、上位が“1
0”、下位が“00”〜“04”と設定されているが、
この上位の“10”をチェックしている。OKであれば
S102に進んで、テストコードに対するサブルーチン
アドレスをポインタにセットし、S103では、そのテ
ストサブルーチンを実行する。S101で、テストコー
ドがOKでなければ“DTC ERR”に進む。
In S101, it is determined whether the test code is OK. That is, data is output when the test code, for example, as shown in FIG. 20, the upper is "1
0 "and lower order are set to" 00 "to" 04 ",
I am checking this upper "10". If it is OK, the process proceeds to S102, the subroutine address for the test code is set in the pointer, and the test subroutine is executed in S103. If the test code is not OK in S101, the process proceeds to "DTC ERR".

【0042】図14に、“HANDOUT”、“HAN
DIN”のラベルで始まるルーチンを示す。これらのル
ーチンは、実際に16ビットのデータを入力、出力する
ときのサブルーチンである。まず“HAND OUT”
のラベルで始まるルーチンでは、S104で、PCTL
データを入力し、S105に進んでPCTLが“0”か
否かを判断し、“0”であればS106に進み、そうで
なければS104に戻る。S106では、I/Oデータ
を入力し、S107では、入力したI/Oデータにより
DTC30が入力モードか否かを判断し、入力モードな
らばS108に進み、そうでなければ“IO ERR”
のラベルで始まるルーチンに進む。S108では、16
ビットデータの出力処理を実行し、S109では、PF
LAGに“0”を出力し、S110では、PCTLを入
力する。S111では、入力したPCTLデータにより
PCTLが“1”になったか否かを判断し、“1”であ
ればS112に進み、そうでなければS110に戻り、
PCTL入力を繰り返す。S112では、PFLAGに
“1”を出力してリターンする。
In FIG. 14, "HANDOUT", "HAN"
The routines starting with the label "DIN" are shown. These routines are subroutines for actually inputting and outputting 16-bit data. First, "HAND OUT"
In the routine starting with the label of
Data is input, the process proceeds to S105, and it is determined whether or not PCTL is "0". If "0", the process proceeds to S106. If not, the process returns to S104. In S106, I / O data is input. In S107, it is determined whether or not the DTC 30 is in the input mode based on the input I / O data. If the DTC 30 is in the input mode, the process proceeds to S108.
Go to the routine starting with the label. In S108, 16
Bit data output processing is executed, and in S109, PF
"0" is output to LAG, and PCTL is input in S110. In S111, it is determined whether the PCTL has become "1" based on the input PCTL data. If "1", the process proceeds to S112. If not, the process returns to S110.
Repeat PCTL input. In S112, "1" is output to PFLAG and the process returns.

【0043】“HAND IN”のラベルで始まるルー
チンでは、S113で、PCTLデータの入力処理を実
行し、S114で入力したPCTLデータにより、PC
TLが“0”であるか否かを判断し、“0”であればS
115に進み、そうでなければS113に戻り、PCT
L入力を繰り返す。S115では、入力したI/Oデー
タによりDTCが出力モードか否かを判断し、出力モー
ドならばS116に進み、そうでなければ“IO ER
R”に飛ぶ。S116では、DTC30データの入力処
理を実行し、S117では、エコーバック処理を実行し
て前述のS109に進む。
In the routine starting with the label "HAND IN", the PCTL data input process is executed in S113, and the PCTL data is input in S114.
It is determined whether TL is "0", and if "0", S
115, otherwise, return to S113, PCT
Repeat L input. In S115, it is determined whether the DTC is in the output mode based on the input I / O data. If the DTC is in the output mode, the process proceeds to S116.
R ”is executed. In S116, an input process of DTC30 data is executed, in S117, an echo back process is executed, and the process proceeds to S109.

【0044】図15により、“RAMDUMP”のラベ
ルで始まるサブルーチンを説明する。このルーチンは、
RAM14bに書き込まれたデータをすべて出力させる
ためのものであり、図20に示すDTC30からのテス
トコード“1”の出力により実行される。S123で
は、DTCデータを入力処理し、S124では、DTC
30に出力するRAMのスタートアドレスをRAMアド
レスポインタにセットし、S125では、DTCデータ
の上位データをクリアし、S126では、PCTL入力
処理を実行する。S127では、入力したPCTLによ
りPCTLが“0”になったか否かを判断し、“0”な
らばS128に進み、そうでなければS126に戻り、
PCTL入力を繰り返す。S128では、次のテストコ
ードが出力されたか否かを判断し、テストコードならば
リターンし、そうでなければS129に進み、RAMダ
ンプを継続する。S129では、RAMデータをバッフ
ァに準備し、S130では、“HANDOUT”をコー
ルして、DTC30にRAMデータを出力し、S131
では、RAMアドレスポインタ+1としてS126から
の処理を繰り返す。
Referring to FIG. 15 , the subroutine starting with the label "RAMDUMP" will be described. This routine
Is intended for outputting all the data written in the RAM 14b, it is executed by the output of the test code "1" from DTC30 shown in FIG. 20. In S123, the DTC data is input and processed, and in S124, the DTC data is input.
The start address of the RAM output to 30 is set in the RAM address pointer, the upper data of the DTC data is cleared in S125, and the PCTL input process is executed in S126. In S127, it is determined whether the PCTL has become "0" based on the input PCTL. If "0", the process proceeds to S128. If not, the process returns to S126.
Repeat PCTL input. In S128, it is determined whether or not the next test code is output. If the test code is a test code, the process returns. If not, the process proceeds to S129 to continue the RAM dump. In S129, the RAM data is prepared in the buffer, and in S130, "HANDOUT" is called to output the RAM data to the DTC 30, and S131
Then, the process from S126 is repeated with the RAM address pointer + 1.

【0045】図16により、“EEPDUNP”のラベ
ルで始まるサブルーチンを説明する。このルーチンは、
EEPROM19に書き込まれたデータを出力させるた
めのものであり、図20に示すDTC30からのテスト
コード“3”の出力により実行される。S132では、
DTCデータの入力処理を実行し、S133では、DT
C30に出力するEEPROM19のスタートアドレス
をEEPROMアドレスポインタにセットする。S13
4では、“SIEEP”のサブルーチンをコールして、
EEPROMデータの入力処理を実行する。S135で
は、DTC通信モードを設定し、S136では、PCT
L入力処理を実行し、S137では、入力したPCTL
データによりPCTLが“0”であるか否かを判断し、
“0”であればS138に進み、そうでなければS13
6を繰り返す。S138では、次のテストコードの出力
を判断し、テストコードならばリターンし、そうでなけ
ればS139に進む。S139では、“HANDOU
T”をコールして、DTC30にEEPROMデータを
出力し、S140では、“EEPROMアドレスポイン
タ+1”とし、S134に戻ってEEPROMダンプ処
理を繰り返す。
With reference to FIG. 16 , the subroutine starting with the label "EEPDUNP" will be described. This routine
It is for outputting the data written in the EEPROM 19, is executed by the output of the test code "3" from DTC30 shown in FIG. 20. In S132,
Input processing of DTC data is executed, and in S133, DT
The start address of the EEPROM 19 output to C30 is set in the EEPROM address pointer. S13
In 4, call the "SIEEP" subroutine,
Input processing of EEPROM data is executed. In S135, the DTC communication mode is set, and in S136, the PCT is set.
L input processing is executed, and in S137, the input PCTL
Judge whether PCTL is "0" from the data,
If "0", the process proceeds to S138, and if not, S13.
Repeat 6 In S138, the output of the next test code is determined. If the test code is output, the process returns, and if not, the process proceeds to S139. In S139, "HANDOU
By calling "T", the EEPROM data is output to the DTC 30, the "EEPROM address pointer + 1" is set in S140, and the process returns to S134 to repeat the EEPROM dump processing.

【0046】図17により、“EEPSET”のラベル
で始まるルーチンを説明する。このルーチンは、EEP
ROM19への書き込みを実行させるルーチンであり、
20に示すDTC30からのテストコード“4”の出
力により実行される。S141では、DTCデーの入力
処理を実行し、S142では、EEPROM書き込みモ
ードに入った場合、最初にDTC30からのEEPRO
M書き込み開始アドレスを取り込んでRAM14bの中
のEEPROMアドレスポインタにセットする。S14
3では、DTC通信モードを設定し、S144では、P
CTLの入力処理を実行する。
[0046] According to FIG. 17, described the routine that begins with the label of "EEPSET". This routine is
It is a routine for executing writing to the ROM 19,
Is performed by the output of the test code "4" from DTC30 shown in FIG. 20. In S141, input processing of DTC data is executed, and in S142, when the EEPROM write mode is entered, the EEPROM from the DTC 30 is first read.
The M write start address is fetched and set in the EEPROM address pointer in the RAM 14b. S14
In 3, the DTC communication mode is set, and in S144, PTC is set.
Perform CTL input processing.

【0047】S145では、入力したPCTLデータに
よりPCTLが“0”か否かを判断し、“0”ならばS
146に進み、そうでなければS144に戻り、PCT
L入力を繰り返す。S146では、次のテストコードの
出力があったか否かを判断し、テストコードがあればリ
ターンし、そうでなければS147に進む。S147で
は、“HANDIN”をコールして、DTCデータの入
力処理を実行し、S148では、EEPROM書き込み
バッファにデータを設定し、S177では、任意のアド
レスに書き込むためのDTCライト(書き込み)フラグ
をセットする。S149では、“SOEEP”のラベル
で始まるサブルーチンをコールして、EEPROM書き
込み処理を実行する。S178では、DTCライト(書
き込み)フラグをクリアし、S150で、“EEPRO
Mアドレスポインタ+1”を実行して、S143に戻
る。つまり、EEPROM書き込み処理を実行するとき
だけフラグが立つように処理する。そして普段、フィル
ム枚数をカウントしようとしているときは、DTC書き
込みモードではないということが分かるように、必ずフ
ラグをクリアする。そして実際に書き込むところで、D
TCライトモードか否かを判断して、DTC書き込みモ
ードでない場合はフィルムアドレス以外は書き込まな
い。
In S145, it is determined whether or not PCTL is "0" based on the input PCTL data. If "0", STL is executed.
146, otherwise return to S144, PCT
Repeat L input. In S146, it is determined whether or not the next test code is output. If there is a test code, the process returns, and if not, the process proceeds to S147. In S147, "HANDIN" is called to execute DTC data input processing, in S148, data is set in the EEPROM write buffer, and in S177, a DTC write (write) flag for writing to an arbitrary address is set. To do. In step S149, a subroutine starting with the label "SOEEP" is called to execute the EEPROM writing process. In step S178, the DTC write (write) flag is cleared, and in step S150, "EEPRO" is set.
The M address pointer + 1 "is executed, and the process returns to S143. That is, the process is performed so that the flag is set only when the EEPROM writing process is executed. When the number of films is usually counted, the DTC writing mode is not set. Be sure to clear the flag so that you can see that,
It is determined whether the TC write mode is set or not, and if the DTC write mode is not set, only the film address is written.

【0048】図18により、“RAM SET”のラベ
ルで始まるルーチンを説明する。このルーチンは、RA
M14bへの書き込みを実行させるルーチンであり、図
20に示すDTC30からのテストコード“2”の出力
により実行される。S151では、DTCデータの入力
処理を実行し、S152では、DTC30から入力する
RAMのスタートアドレスをRAMアドレスポインタに
セットする。S153では、PCTL入力処理を実行
し、S154では、入力したPCTLデータによりPC
TLが“0”であるか否かを判断し、“0”であればS
155に進み、そうでなければS153に戻り、PCT
L入力を繰り返す。S155では、次のテストコードの
出力を判断し、テストコードがあればリターンし、そう
でなければS156に進む。S156では、DTCデー
タ入力処理を実行し、S157では、RAM14bの中
のアドレスポインタによって指定されたRAMにDTC
データをセットし、S158では、“RAMアドレスポ
インタ+1”とし、S153に戻り、RAMセットを繰
り返す。
Referring to FIG. 18 , the routine starting with the label "RAM SET" will be described. This routine
This is a routine for executing writing to M14b.
Is performed by the output of the test code "2" from DTC30 shown in 20. In S151, input processing of DTC data is executed, and in S152, the start address of the RAM input from the DTC 30 is set in the RAM address pointer. In S153, PCTL input processing is executed, and in S154, PCTL data is input according to the input PCTL data.
It is determined whether TL is "0", and if "0", S
155, otherwise return to S153, PCT
Repeat L input. In S155, the output of the next test code is determined, and if there is a test code, the process returns, and if not, the process proceeds to S156. In S156, DTC data input processing is executed, and in S157, the DTC data is stored in the RAM designated by the address pointer in the RAM 14b.
The data is set, and the "RAM address pointer + 1" is set in S158, the flow returns to S153, and the RAM setting is repeated.

【0049】図19により、“SUBCHK”のラベル
で始まるルーチンを説明する。このルーチンは、カメラ
33側に格納された多数のサブルーチンデータのうち、
DTC30側から出されたサブルーチンアドレスに対応
したサブルーチンを実行させるルーチンであり、図20
に示すDTC30からのテストコード“0”の出力によ
り実行される。S159では、サブルーチンアドレスを
DTC30から入力してRAM14bに格納し、S16
0では、DTC30から入力されたコードをサブルーチ
ンのアドレスとしてコール実行し、リターンする。
With reference to FIG. 19 , the routine starting with the label "SUBCHK" will be described. This routine is based on a large number of subroutine data stored on the camera 33 side.
20 is a routine for executing a subroutine corresponding to a subroutine address issued from the DTC 30 side.
The test code "0" is output from the DTC 30 shown in FIG. In step S159, the subroutine address is input from the DTC 30 and stored in the RAM 14b.
At 0, the code input from the DTC 30 is used as a subroutine address to execute the call, and the process returns.

【0050】図20により、DTC30側の基本的なソ
フト“DTC SOFT”の制御ルーチンを説明する。
このルーチンは、設定したテストコードに基づいて、カ
メラ33側に種々の動作を実行させたり、RAM14b
への書き込み、EEPROM19への書き込み等を行な
うためのものである。まずS161では、配列のディメ
ンション、データ等の初期設定を行ない、S162で
は、データの表示設定処理を実行し、S163では、テ
ストコードの入力処理を実行する。S164では、この
入力されたテストコードを判断し、テストコードが
“0”の場合はS165に進み、“1”の場合はS16
6に進み、“2”の場合はS167に進み、“3”の場
合はS168に進み、“4”の場合はS169に進む。
Referring to FIG. 20 , the basic control routine of the DTC 30 side software "DTC SOFT" will be described.
This routine causes the camera 33 side to execute various operations based on the set test code, and the RAM 14b.
To the EEPROM, writing to the EEPROM 19, and the like. First, in S161, initial setting of the array dimension, data, etc. is performed, in S162, data display setting processing is executed, and in S163, test code input processing is executed. In S164, the input test code is determined, and if the test code is "0", the process proceeds to S165, and if the test code is "1", S16.
6 proceeds to S167 if "2", proceeds to S168 if "3", and proceeds to S169 if "4".

【0051】S165は、DTC30によるカメラ機能
のチェックのため、カメラ33側にテストコードおよび
サブルーチンアドレスを出し、カメラ33側において、
予め設定されている複数のサブルーチンを実行させる場
合である。ここで言うサブルーチンとは、通常ユーザー
がカメラを操作した場合に動作するすべてのものであ
り、図4〜図10の中にも登場している。まず最初のテ
ストコードをカメラ33側に出力するべく、テストコー
ドの出力が可能な状態を設定するため、 CTL1=1、CTL0=0 として(図2参照)、テストコード“1000H”を出
力する。この後、 CTL1=0、CTL1=1 として従属データ通信の状態にする。そして、テストコ
ード1000Hに対応する従属データとしては、チェッ
クするべきカメラ機能に対応させたサブルーチンが格納
されているアドレスを指定するサブルーチンアドレスで
あり、これが出力される。これに基づき、カメラの対応
するサブルーチンが実行される。サブルーチン実行前に
RAMにデータの設定が必要であれば、後述する100
2Hのテストコードにより設定が可能であり、サブルー
チン実行後にRAMにデータが設定される場合は、同様
に後述の1001HのRAMダンプによりDTC30に
入力可能である。したがって、他のサブルーチンアドレ
スの実行と組み合わせることにより、種々のチェック調
整を容易に行なうことができる。これによれば、通常、
カメラを動作させるためのソフトをサブルーチン化させ
て格納し、チェック調整時に必要なサブルーチンのアド
レスを出力して実行させるだけで簡単かつ確実にチェッ
ク調整を行なうことができるから、従来のように、チェ
ック調整のために作成した特別のソフトをカメラ側に搭
載しなくても良く、ROMのメモリ容量を大幅に節約さ
せることができる。
In step S165, a test code and a subroutine address are issued to the camera 33 side for checking the camera function by the DTC 30, and the camera 33 side
This is a case where a plurality of preset subroutines are executed. The subroutines referred to here are all those that normally operate when the user operates the camera, and also appear in FIGS. 4 to 10. First, in order to output the first test code to the camera 33 side, in order to set the state in which the test code can be output, CTL1 = 1 and CTL0 = 0 are set (see FIG. 2), and the test code “1000H” is output. After that, CTL1 = 0 and CTL1 = 1 are set to enter the subordinate data communication state. The subordinate data corresponding to the test code 1000H is a subroutine address that specifies an address in which a subroutine corresponding to the camera function to be checked is stored, and this is output. Based on this, the corresponding subroutine of the camera is executed. If it is necessary to set the data in the RAM before executing the subroutine, 100 described below will be used.
It can be set by the test code of 2H, and when the data is set in the RAM after the execution of the subroutine, it can be input to the DTC 30 by the RAM dump of 1001H which will be described later. Therefore, various check adjustments can be easily performed in combination with the execution of other subroutine addresses. According to this,
The software for operating the camera is made into a subroutine and stored, and by simply outputting and executing the address of the subroutine required for check adjustment, check adjustment can be performed easily and reliably. It is not necessary to install special software created for adjustment on the camera side, and the ROM memory capacity can be greatly saved.

【0052】ここで、DTC30側から任意のサブルー
チンを実行させて、レンズ通信データの信頼性のチェッ
クを短時間で実現させる場合の実例を示す。通常、カメ
ラがレンズと通信するタイミングは、200mS に1回程度
であるので、この通信をDTC30から実行させること
により連続通信が可能となり、テスト時間を1/20程度に
短縮させることができる。以下にそのテストリスト(表
1)を示す。
Here, an actual example in which an arbitrary subroutine is executed from the DTC 30 side to check the reliability of the lens communication data in a short time will be shown. Normally, the camera communicates with the lens about once every 200 mS, so by executing this communication from the DTC 30, continuous communication becomes possible and the test time can be shortened to about 1/20. The test list (table
1) is shown.

【表1】 [Table 1]

【0053】またS166は、コマンドによってRAM
14b内のデータを全てDTC30側に取り込む場合で
ある。まずテストコード“1001H”をカメラ33側
に出力し、スタートアドレス(=RAMの0番地)を出
力する。続けてデータ入力を連続して実行することによ
り、RAM14bから、このRAM14b内の全てのデ
ータをDTC30側に取り込むことができる。S167
は、コマンドによってRAM14bにデータを書き込む
場合である。まずテストコード“1002H”をカメラ
33側に出力し、スタートアドレスを出力する。続け
て、スタートアドレスのデータから順番に設定したいR
AMデータを出力することにより、RAM14bにデー
タを書き込むことができる。S168は、コマンドによ
ってEEPROM19内のデータを全てDTC30側に
取り込む場合である。まずテストコード“1003H”
をカメラ33側に出力し、スタートアドレス(=EEP
ROM19の0番地)を出力する。続けて、データ入力
を連続して実行することにより、EEPROM19か
ら、このEEPROM19内の全てのデータをDTC3
0側に取り込むことができる。S169は、コマンドに
よってEEPROM19にデータを書き込む場合であ
る。まずテストコード“1004H”をカメラ33側に
出力し、スタートアドレスを出力する。続けて、スター
トアドレスのデータから順番に設定したいEEPROM
データを出力することにより、EEPROM19にデー
タを書き込むことができる。
Further, in S166, the RAM is commanded.
This is a case where all the data in 14b is fetched to the DTC 30 side. First, the test code “1001H” is output to the camera 33 side, and the start address (= RAM address 0) is output. By continuously executing data input, all the data in the RAM 14b can be fetched from the RAM 14b to the DTC 30 side. S167
Is a case of writing data to the RAM 14b by a command. First, the test code "1002H" is output to the camera 33 side, and the start address is output. Continuously, I want to set the data in order from the start address
By outputting the AM data, the data can be written in the RAM 14b. S168 is a case where all the data in the EEPROM 19 is fetched to the DTC 30 side by a command. First, test code “1003H”
Is output to the camera 33 side, and the start address (= EEP
The address 0 of the ROM 19) is output. By continuously executing data input, all the data in the EEPROM 19 is transferred from the EEPROM 19 to the DTC3.
It can be captured on the 0 side. S169 is a case where data is written in the EEPROM 19 by a command. First, the test code “1004H” is output to the camera 33 side, and the start address is output. Continuously, EEPROM which wants to set in order from the data of the start address
By outputting the data, the data can be written in the EEPROM 19.

【0054】図21に“SIOSUB”のラベルで始ま
る制御ルーチンを示す。S170では、アドレス通信モ
ードをセットし、S171では、アドレスの出力処理を
実行し、S172では、データ通信モードをセットし、
S173では、データの入出力処理を実行する。
FIG. 21 shows a control routine starting with the label "SIOSUB". In S170, the address communication mode is set, in S171, the output processing of the address is executed, and in S172, the data communication mode is set,
In S173, data input / output processing is executed.

【0055】図22に“NOTSEL”のラベルで始ま
るルーチンを示す。S174では、アドレス通信モード
をセットし、S175では、NOTSELアドレスの出
力処理を実行し、S176では、データ通信モードをセ
ットする。
FIG. 22 shows a routine starting with the label "NOTSEL". In S174, the address communication mode is set, in S175, the output process of the NOTSEL address is executed, and in S176, the data communication mode is set.

【0056】[0056]

【発明の効果】以上説明したように、本発明によれば、
通常のカメラ動作を実行させるソフトをサブルーチン化
させて、カメラ機能のチェック調整用のソフトとして兼
用できるようにしたから、カメラ側のチェック調整専用
のソフトが最小限で済み、カメラ側のROMを圧縮さ
せ、その分カメラとして使用できるROM領域を増やす
ことができる。これにより、製品ソフトの質を向上させ
ることができるとともに、ソフトの開発量を減少させ
て、より早く製品化させることができる。
As described above, according to the present invention,
Software for executing normal camera operations has been made into a subroutine so that it can also be used as software for checking and adjusting camera functions, so software dedicated to checking and adjusting on the camera side is minimized, and the ROM on the camera side is compressed. Therefore, the ROM area that can be used as a camera can be increased accordingly. As a result, the quality of the product software can be improved, the development amount of the software can be reduced, and the product can be commercialized more quickly.

【手続補正2】[Procedure Amendment 2]

【補正対象書類名】明細書[Document name to be amended] Statement

【補正対象項目名】図面の簡単な説明[Name of item to be corrected] Brief description of the drawing

【補正方法】変更[Correction method] Change

【補正内容】[Correction content]

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

【図1A】本実施例の制御ブロックを概略的に示す図で
ある。
FIG. 1A is a diagram schematically showing a control block of the present embodiment.

【図1B】DTCとインターフェースを概略的に示す図
である。
FIG. 1B is a diagram schematically showing a DTC and an interface.

【図2】DTC側とカメラ側との通信時のタイムシーケ
ンスである。
FIG. 2 is a time sequence during communication between the DTC side and the camera side.

【図3A】DTC、インターフェースおよびカメラの接
続状況を示すブロック図である。
FIG. 3A is a block diagram showing a connection status of a DTC, an interface, and a camera.

【図3B】同実施例のDTC、インターフェースおよび
カメラ間で入出される信号のタイミングを示すタイムシ
ーケンスである。
FIG. 3B is a time sequence showing the timing of signals input to and output from the DTC, the interface, and the camera of the embodiment.

【図4、図5】同実施例の“RESET”のラベルで始
まるルーチンを示すフローチャートである。
FIG. 4 and FIG. 5 are flowcharts showing a routine that starts with a label “RESET” in the same embodiment.

【図6、図7】同実施例の“RESTART”のラベル
で始まるルーチンを示すフローチャートである。
6 and 7 are flowcharts showing a routine that starts with the label "RESTART" in the embodiment.

【図8、図9】同実施例の“FILMCUP”のラベル
で始まるルーチンを示すフローチャートである。
8 and 9 are flowcharts showing a routine that starts with the label "FILMCUP" in the embodiment.

【図10】同実施例の“SIEEP”のラベルで始まる
ルーチンを示すフローチャートである。
FIG. 10 is a flowchart showing a routine that starts with a label of “SIEEP” of the embodiment.

【図11、図12】同実施例の“TEST”のラベルで
始まるルーチンを示すフローチャートである。
FIG. 11 and FIG. 12 are flowcharts showing a routine that starts with the label “TEST” in the embodiment.

【図13】同実施例の“テストコード”を示す図であ
る。
FIG. 13 is a diagram showing a “test code” of the same example.

【図14】同実施例の“HANDOUT”、“HAND
IN”のラベルで始まるルーチンを示すフローチャート
である。
FIGS. 14A and 14B are “HANDOUT” and “HAND” of the embodiment.
6 is a flowchart showing a routine starting with a label of “IN”.

【図15】同実施例の“RAMDUMP”のラベルで始
まるルーチンを示すフローチャートである。
FIG. 15 is a flowchart showing a routine that starts with a label of “RAMDUMP” in the embodiment.

【図16】同実施例の“EEPDUMP”のラベルで始
まるルーチンを示すフローチャートである。
FIG. 16 is a flowchart showing a routine that starts with a label “EEPDUMP” in the embodiment.

【図17】同実施例の“EEPSET”のラベルで始ま
るルーチンを示すフローチャートである。
FIG. 17 is a flowchart showing a routine that starts with a label “EEPSET” in the embodiment.

【図18】同実施例の“RAMSET”のラベルで始ま
るルーチンを示すフローチャートである。
FIG. 18 is a flow chart showing a routine that starts with the label “RAMSET” in the embodiment.

【図19】同実施例の“SUBCHK”のラベルで始ま
るルーチンを示すフローチャートである。
FIG. 19 is a flowchart showing a routine that starts with a label of “SUBCHK” in the embodiment.

【図20】同実施例の“DTCSOFT”のラベルで始
まるルーチンを示す計算機のフローチャートである。
FIG. 20 is a computer flowchart showing a routine that starts with the label “DTCSOFT” in the embodiment.

【図21】同実施例の“SIOSUB”のラベルで始ま
るルーチンを示すフローチャートである。
FIG. 21 is a flowchart showing a routine that starts with a label of “SIOSUB” in the embodiment.

【図22】同実施例の“NOTSEL”のラベルで始ま
るルーチンを示すフローチャートである。
FIG. 22 is a flowchart showing a routine that starts with a label “NOTSEL” in the embodiment.

【手続補正3】[Procedure 3]

【補正対象書類名】図面[Document name to be corrected] Drawing

【補正対象項目名】全図[Correction target item name] All drawings

【補正方法】変更[Correction method] Change

【補正内容】[Correction content]

【図1B】 FIG. 1B

【図2】 [Fig. 2]

【図3B】 FIG. 3B

【図13】 [Fig. 13]

【図19】 FIG. 19

【図1A】 FIG. 1A

【図21】 FIG. 21

【図22】 FIG. 22

【図3A】 FIG. 3A

【図4】 [Figure 4]

【図9】 [Figure 9]

【図5】 [Figure 5]

【図10】 [Figure 10]

【図6】 [Figure 6]

【図7】 [Figure 7]

【図8】 [Figure 8]

【図11】 FIG. 11

【図12】 [Fig. 12]

【図14】 FIG. 14

【図15】 FIG. 15

【図16】 FIG. 16

【図17】 FIG. 17

【図18】 FIG. 18

【図20】 FIG. 20

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】 カメラのメイン処理を行なう中央処理回
路、およびこの中央処理回路に接続された周辺回路を有
するカメラと;上記中央処理回路との接続が可能で、こ
の中央処理回路を介してカメラ機能のチェック調整を行
なうコマンドを有する計算機と;を有し、 上記中央処理回路に備えられた、上記カメラの機能のチ
ェック調整を行なうコマンドにおいて、中央処理回路と
周辺回路を動作させるサブルーチンソフト等の任意のサ
ブルーチンを上記計算機からアドレス指定して実行させ
る機能を有することを特徴とするカメラのチェックシス
テム。
1. A camera having a central processing circuit for performing main processing of the camera, and a peripheral circuit connected to the central processing circuit; the camera being connectable to the central processing circuit, the camera being provided through the central processing circuit. A computer having a command for checking and adjusting functions, and a subroutine software for operating the central processing circuit and peripheral circuits in the command for checking and adjusting the functions of the camera, which is provided in the central processing circuit. A camera check system having a function of executing an address by executing an arbitrary subroutine from the computer.
JP21812491A 1991-05-21 1991-05-21 Camera check system Pending JPH075601A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP21812491A JPH075601A (en) 1991-05-21 1991-05-21 Camera check system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP21812491A JPH075601A (en) 1991-05-21 1991-05-21 Camera check system

Publications (1)

Publication Number Publication Date
JPH075601A true JPH075601A (en) 1995-01-10

Family

ID=16715012

Family Applications (1)

Application Number Title Priority Date Filing Date
JP21812491A Pending JPH075601A (en) 1991-05-21 1991-05-21 Camera check system

Country Status (1)

Country Link
JP (1) JPH075601A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8970761B2 (en) 1997-07-09 2015-03-03 Flashpoint Technology, Inc. Method and apparatus for correcting aspect ratio in a camera graphical user interface
US8972867B1 (en) 1998-12-31 2015-03-03 Flashpoint Technology, Inc. Method and apparatus for editing heterogeneous media objects in a digital imaging device
US9224145B1 (en) 2006-08-30 2015-12-29 Qurio Holdings, Inc. Venue based digital rights using capture device with digital watermarking capability

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8970761B2 (en) 1997-07-09 2015-03-03 Flashpoint Technology, Inc. Method and apparatus for correcting aspect ratio in a camera graphical user interface
US8972867B1 (en) 1998-12-31 2015-03-03 Flashpoint Technology, Inc. Method and apparatus for editing heterogeneous media objects in a digital imaging device
US9224145B1 (en) 2006-08-30 2015-12-29 Qurio Holdings, Inc. Venue based digital rights using capture device with digital watermarking capability

Similar Documents

Publication Publication Date Title
CN100531320C (en) Image processing apparatus, method thereof, and image sensing apparatus
KR100254776B1 (en) The charging and discharging methods of electric apparatus with a smart battery
US5574926A (en) One-chip microcomputer system having function for substantially correcting contents of program
US6442349B1 (en) Camera capable of storing photographing data and display device connectable thereto
JPH075601A (en) Camera check system
US5187517A (en) Camera controllable with use of a control program
JP2571699Y2 (en) Camera with data protection function
JP4423960B2 (en) Electronic device and software update program for electronic device
US5467200A (en) Data communication method between circuits
JPS58126521A (en) Electronically controlled camera
JP2958027B2 (en) Camera display device
EP1003046A1 (en) Voltage detecting circuit
JPH0823648B2 (en) Camera priority mode setting device
JP4282460B2 (en) Data rewrite device
US8230130B2 (en) Input device
JP4409275B2 (en) Data rewrite device
JP2002150246A (en) Portable electronic device
WO2024007206A1 (en) Debugging method and apparatus for production line devices, and production line system
EP0615187B1 (en) One-chip microcomputer system having function for substantially correcting contents of program
KR0166685B1 (en) Warning apparatus of action error using remocon of camera and driving method thereof
JP2500075Y2 (en) Speedlite with automechanism
KR19990038036A (en) Apparatus and method for eliminating malfunction by using power switch in camera
JP2003264648A (en) Image forming device management system
KR100193511B1 (en) Communication protocol between engine control unit and external computer
CN116055713A (en) Automatic detection method and terminal for flash lamp