DE4420404B4 - Verfahren zum Steuern des Betriebes einer elektronisch gesteuerten Kamera - Google Patents
Verfahren zum Steuern des Betriebes einer elektronisch gesteuerten Kamera Download PDFInfo
- Publication number
- DE4420404B4 DE4420404B4 DE4420404A DE4420404A DE4420404B4 DE 4420404 B4 DE4420404 B4 DE 4420404B4 DE 4420404 A DE4420404 A DE 4420404A DE 4420404 A DE4420404 A DE 4420404A DE 4420404 B4 DE4420404 B4 DE 4420404B4
- Authority
- DE
- Germany
- Prior art keywords
- point
- data
- information
- program
- executed
- 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.)
- Expired - Fee Related
Links
Classifications
-
- G—PHYSICS
- G03—PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
- G03B—APPARATUS OR ARRANGEMENTS FOR TAKING PHOTOGRAPHS OR FOR PROJECTING OR VIEWING THEM; APPARATUS OR ARRANGEMENTS EMPLOYING ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ACCESSORIES THEREFOR
- G03B7/00—Control of exposure by setting shutters, diaphragms or filters, separately or conjointly
- G03B7/08—Control effected solely on the basis of the response, to the intensity of the light received by the camera, of a built-in light-sensitive device
- G03B7/091—Digital circuits
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Exposure Control For Cameras (AREA)
- Stored Programmes (AREA)
Abstract
in dem überschreibbaren Speicher Merkerdaten gespeichert werden, die bestimmen, ob der Hilfsprozeß mit gespeicherten Operationsdaten auszuführen ist,
die Merkerdaten gelesen werden, und
der Hilfsprozeß mit den Operationsdaten nur dann ausgeführt wird, wenn dies durch die Merkerdaten vorgegeben wird, dadurch gekennzeichnet, daß
der überschreibbare Speicher mit einer externen Vorrichtung verbunden wird, die das Überschreiben der Merkerdaten und der Operationsdaten ermöglicht,
die Operationsdaten eine Adresse enthalten, die ein Zusatzprogramm in dem überschreibbaren Speicher bezeichnet, und
der Hilfsprozeß durch Ausführen des Zusatzprogramms ausgeführt wird.
Description
- Die Erfindung betrifft ein Verfahren zum Steuern des Betriebes einer elektronisch gesteuerten Kamera. Kameras dieser Art enthalten eine zentrale Bearbeitungseinheit (CPU) zum Steuern des Betriebes der Kamera entsprechend einem Programm, das normalerweise in einem Festspeicher (ROM) gespeichert ist.
- Da das Programm in dem ROM gespeichert ist, muß es, wenn es einen Fehler enthält und eigentlich nur ein kleiner Teil geändert werden müßte, insgesamt durch Auswechseln des ROMs geändert werden. Ferner muß das gesamte Programm auch dann ausgewechselt werden, wenn eine neue Funktion für eine Spezialanwendung hinzugefügt wird. Das Auswechseln des ROMs ist eine umständliche und zeitraubende Arbeit. Es besteht daher das Bedürfnis, eine Abänderung des Kameraprogramms zu vereinfachen.
- Aus der
DE 42 169 10 A1 ist ein Verfahren zum Steuern eines Betriebes einer elektronisch gesteuerten Kamera bekannt, bei dem in einem überschreibbaren Speicher Merkerdaten gespeichert werden. In Abhängigkeit dieser Merkerdaten werden in einem Steuerprogramm unterschiedliche Hilfsprozesse ausgeführt. - Zum Stand der Technik wird ferner auf die JP 02-196332 A, JP 02-000941 A und JP 04-226437 A verwiesen, in denen ebenfalls Verfahren zum Steuern des Betriebes einer elektronischen Kamera beschrieben sind.
- Die Aufgabe der Erfindung besteht darin, das Verfahren zum Steuern des Betriebes einer elektronisch gesteuerten Kamera so zu verbessern, daß auch ein Hilfsprozeß ausgeführt werden kann, ohne den Festspeicher auswechseln zu müssen.
- Die Erfindung löst diese Aufgabe durch die Merkmale des Patentanspruchs 1. Vorteilhafte Weiterbildungen sind Gegenstand der Unteransprüche.
- Wenn bei einem Verfahren nach der Erfindung das Kameraprogramm mindestens einen Hilfsprozeß enthält und ein überschreibbarer Speicher zum Speichern eines Merkers vorgesehen ist, durch den bestimmt wird, ob der Hilfsprozeß auszuführen ist, und wenn ferner Operationsdaten zum Ausführen des Hilfsprozesses gespeichert sind, kann der Merker gelesen und damit bestimmt werden, ob der Hilfsprozeß auszuführen ist. Wahlweise können die Operationsdaten eine Information über eine Bit-Manipulation von Daten enthalten, die in einem anderen Speicher enthalten sind, welcher zur vorübergehenden Speicherung von Parameterdaten für die Kamera dient.
- Die Operationsdaten enthalten eine Adresse, die ein Zusatzprogramm in dem überschreibbaren Speicher ansteuert, wodurch eine vorbestimmte Operation ausgeführt werden kann.
- Der Hilfsprozeß wird ausgeführt, um einen Fehler zu löschen, der in dem Programm enthalten sein kann, welches den Betrieb der Kamera steuert.
- Die Erfindung wird im folgenden anhand der Zeichnungen näher erläutert. Darin zeigen:
-
1 die Vorderansicht einer elektronisch steuerbaren Kamera, -
2 eine Draufsicht auf die Kamera nach1 , -
3 eine Rückansicht der Kamera nach1 , -
4 das Blockdiagramm des Steuersystems der Kamera nach1 , -
5 die Blockschaltung für die Ports P00 bis P07 des in4 gezeigten Steuersystems, -
6 das Flußdiagramm der Hauptroutine, die mit der Gehäuse-CPU in dem in4 gezeigten Steuersystem ausgeführt wird, -
7 das Diagramm eines Adreßraums in der Gehäuse-CPU des in4 gezeigten Steuersystems, -
8 ein Diagramm für Speicherbereiche in einem elektrisch löschbaren und programmierbaren Festspeicher (EEPROM) in dem Steuersystem nach4 , -
9 Speicherinhalte von POINT 1- und POINT 2-Informationen nach8 , -
10 Speicherinhalte von POINT 3- und POINT 8-Informationen nach8 , -
11 bestimmte Bitinformationen für die in8 gezeigte POINT-Ausführung OK-Information, -
12 ein Diagramm für Merker, die abhängig von der POINT-Ausführung OK-Information nach11 gesetzt sind, -
13 Speicherbereiche in einem Speicher mit wahlfreiem Zugriff (RAM) des Steuersystems nach4 , -
14 das Flußdiagramm eines Neustart-Prozesses der in6 gezeigten Hauptroutine, -
15 das Flußdiagramm einer Verschlußauslösung in dem Neustart-Prozeß nach14 , -
16 das Flußdiagramm einer Prüf-Subroutine in der Hauptroutine nach6 , -
17 das Flußdiagramm einer Spiegel- und Blendensubroutine in dem Auslöseprozeß nach15 , -
18 das Flußdiagramm einer Spiegel-Absenkroutine in dem Auslöseprozeß nach15 , -
19 das Flußdiagramm der Prozesse POINT 1 und POINT 2 als Subroutinen der in6 gezeigten Hauptroutine, -
20 das Flußdiagramm der Prozesse POINT 3 bis POINT 8 als Subroutinen des Neustart-Prozesses nach14 und des Auslöseprozesses nach15 , -
21 das Flußdiagramm des Prozesses POINT 3 in dem Neustart-Prozeß nach14 , -
22 das Flußdiagramm des Prozesses POINT 4 in dem Neustart-Prozeß nach14 und der Prozesse POINT 7 und POINT 8 in dem Auslöseprozeß nach15 , -
23 das Flußdiagramm des Prozesses POINT 5 innerhalb des Neustart-Prozesses nach14 , -
24 ein Diagramm der Änderung einer Aufnahmeart, die für den in23 gezeigten POINT 5-Prozeß erforderlich ist, -
25 das Flußdiagramm des Prozesses POINT 6, der in dem in15 gezeigten Auslöseprozeß ausgeführt wird, und -
26 das Flußdiagramm einer Steuersequenz bei einer Abänderung des POINT 2-Prozesses. - In
1 bis3 ist eine einäugige Spiegelreflexkamera als Anwendungsbeispiel der Erfindung dargestellt. Diese hat ein Gehäuse10 mit einer Objektivfassung14 , an der ein Objektiv12 (4 ) befestigt werden kann. Das Objektiv12 ist ein motorgetriebenes Varioobjektiv, das mit einem eingebauten Motor (nicht dargestellt) zur Brennweitenänderung zwischen beispielsweise 28 und 80 mm verstellt wird. - Das Objektiv
12 wird an der Objektivfassung14 verriegelt. Wenn eine Verriegelungstaste16 auf der linken Seite des Kameragehäuses10 (1 ) an der Objektivfassung14 gedrückt wird, kann das Objektiv12 entriegelt werden, um es von der Objektivfassung14 abzunehmen. Ist das Objektiv12 an dem Kameragehäuse10 befestigt, werden Anschlüsse18 an der Vorderseite der Objektivfassung14 in elektrischer Verbindung mit entsprechenden Anschlüssen an der Rückseite des Objektivs12 gehalten, wodurch zwischen einer Gehäuse-CPU20 und einer Objektiv-CPU im Objektiv12 ein Informationsaustausch möglich ist, wie es das in4 gezeigte Steuersystem darstellt. - An dem Kameragehäuse
10 ist rechts (1 ) ein Wähler für die Art der Scharfeinstellung angeordnet. Mit ihm kann entwe der eine manuelle Scharfeinstellung (MF) oder eine automatische Scharfeinstellung (AF) gewählt werden. Die Einstellung AF wird gewählt, indem der Schalter24 mit seiner Markierung "–" (1 ) auf eine Marke AF am Kameragehäuse10 geschoben wird. Die Einstellung MF wird gewählt, indem der Schalter24 mit seiner Markierung "–" auf eine Marke MF am Kameragehäuse10 geschoben wird. - Wie
1 und2 zeigen, ist im linken Bereich an der Oberseite des Kameragehäuses10 eine Auslösetaste26 nahe der Vorderkante des Gehäuses angeordnet. Ein Kippschalter28 zum Erhöhen/Verringern angezeigter Daten ist an der Oberseite des Kameragehäuses10 unmittelbar hinter der Auslösetaste26 angeordnet und kann um eine Achse parallel zur optischen Achse des Objektivs12 gekippt werden, d.h. um eine Achse, die quer zum Kameragehäuse liegt. Eine Tv/Av-Taste30 , die auch als eine Freigabetaste benutzt wird, ist an der Oberseite des Kameragehäuses10 unmittelbar hinter dem Kippschalter28 angeordnet. Bei einer Automatikbelichtung (A) oder einer manuellen Einstellung (M), die gewählt wird, wenn eine Hauptschaltertaste36 in eine Stellung EIN gebracht wird, kann mit der Tv/Av-Taste jeweils zwischen Zeitpriorität und Blendenpriorität umgeschaltet werden. - Eine eingebaute Blitzeinheit (nicht dargestellt) ist im vorderen Teil des Kameragehäuses
10 nahe der Mitte vorgesehen. Diese Blitzeinheit kann ausgefahren werden, wenn eine Taste32 betätigt wird. Wie2 zeigt, ist ein Flüssigkristall-Anzeigefeld34 zur Darstellung verschiedener Informationen im hinteren Bereich der Oberseite des Kameragehäuses10 nahe der Mitte angeordnet. Die Hauptschaltertaste36 ist an der Oberseite des Kameragehäuses10 links (2 ) von dem Anzeigefeld34 angeordnet und kann quer zum Kameragehäuse10 verschoben werden. Sie kann dabei auf Stellungen ON, GREEN und OFF eingestellt werden. Ist sie in der Stellung OFF, so ist ein Hauptschalter geöffnet, während er in den Stellungen GREEN und ON geschlossen ist. - Wenn die Hauptschaltertaste
36 in der Stellung ON ist, so ist ein Belichtungsbetrieb (FULL-Betrieb) eingeschaltet, bei dem eine Programmbelichtung (P), eine Automatikbelichtung (A), eine manuelle Belichtungseinstellung (M) oder eine B-Belichtung (B) gewählt werden kann. Wird der Kippschalter28 bei gedrückter noch zu beschreibender Taste40 betätigt, so können diese Belichtungsarten nacheinander geändert bzw. gewählt werden. Befindet sich die Hauptschaltertaste36 in der Stellung GREEN, so ist eine Betriebsart eingestellt, die sich für die Benutzung der Kamera durch den Anfänger eignet. - Ist die manuelle Belichtungseinstellung (M) gewählt, so kann die Belichtungszeit oder die Blende, gewählt durch die Tv/Av-Taste
30 , durch Betätigen des Kippschalters28 verändert werden. - Eine Aufnahmeart-Taste
38 ist im rechten Bereich (2 ) der Oberseite des Kameragehäuses10 angeordnet, und eine Belichtungsart-Taste40 zum Wählen der Belichtungsart ist gleichfalls in diesem Bereich links von der Aufnahmeart-Taste38 angeordnet. Die Aufnahmeart-Taste38 und die Belichtungsart-Taste40 können unabhängig voneinander oder gleichzeitig mit dem Zeigefinger der linken Hand betätigt werden. - Wenn der Kippschalter
28 bei gedrückter Aufnahmeart-Taste38 betätigt wird, wird die Aufnahmeart nacheinander zwischen Einzelaufnahme, Serienaufnahme und Selbstauslöser umgeschaltet. Wird der Kippschalter28 bei gedrückter Belichtungsart-Taste40 betätigt, so wird die Belichtungsart zwischen Programmbelichtung (P), Automatikbelichtung (A), manueller Belichtungseinstellung (M) und B-Belichtung (B) umgeschaltet. - Ein Geräteschuh
42 zur Montage eines externen Blitzgerätes (nicht dargestellt) ist im linken Bereich (2 ) der Oberseite des Kameragehäuses10 vorgesehen. Der Geräteschuh42 ist normalerweise mit einer Abdeckung44 versehen. - Wie
3 zeigt, ist ein Sucherokular46 im oberen Teil der Rückseite des Kameragehäuses10 angeordnet. Die Rückseite des Kameragehäuses10 hat einen unteren Teil, der praktisch vollständig aus einem Deckel48 besteht, der geöffnet werden kann, um eine Filmpatrone einzusetzen oder herauszunehmen. Der Deckel48 ist mit einer nicht dargestellten Vorrichtung zum Aufzeichnen des Tages, des Monats und des Jahres der jeweiligen Aufnahme auf den Film versehen. - Eine Belichtungskorrekturtaste
50 ist im oberen rechten Teil (3 ) der Rückseite des Kameragehäuses10 vorgesehen. Ist die Programmbelichtung (P) oder die Automatikbelichtung (A) gewählt, werden bei gedrückter Korrekturtaste50 und Betätigen des Kippschalters28 die optimalen in der Kamera berechneten Belichtungsbedingungen je nach Wahl durch den Benutzer in positiver oder negativer Richtung abgeändert. - Das Kameragehäuse
10 enthält eine nicht dargestellte Schalteranordnung unterhalb der Auslösetaste26 . Diese Schalteranordnung hat einen Lichtmeßschalter52 (4 ), der mit der Auslösetaste26 gekoppelt ist und geschlossen wird, wenn die Auslösetaste26 nur teilweise gedrückt wird. Ein Auslöseschalter54 (4 ) ist gleichfalls mit der Auslösetaste26 gekoppelt und wird geschlossen, wenn die Auslösetaste26 vollständig gedrückt wird. Das Kameragehäuse10 enthält auch einen Tv/Av-Wahlschalter56 unter der Tv/Av-Taste30 . Mit diesem Wahlschalter56 kann die Zeitpriorität oder die Blendenpriorität gewählt werden, wenn die Tv/Av-Taste gedrückt wird. - Der Kippschalter
28 kann gekippt, aber nicht niedergedrückt werden. Er hat ein nicht dargestelltes Hebelelement, das mit einem in4 gezeigten Aufwärts/Abwärts-Schalter58 bzw.60 gekoppelt ist. Wird das Hebelelement im Gegenuhrzeigersinn (1 ) gekippt, wird der Aufwärtsschalter58 geschlossen. Wird das Hebelelement im Uhrzeigersinn (1 ) gekippt, wird der Abwärtschalter60 geschlossen. Das Hebelelement wird normalerweise durch eine Rückführungsfeder (nicht dargestellt) in einer Neutralstellung gehalten, in der die beiden Schalter58 und60 geöffnet sind. Das Kameragehäuse10 enthält auch einen Belichtungsartschalter62 unter der Belichtungsart-Taste40 . Dieser Schalter62 wird bei Niederdrücken der Belichtungsart-Taste40 geschlossen. Das Kameragehäuse10 enthält ferner einen Aufnahmeartschalter64 unter der Aufnahmeart-Taste38 . Er wird geschlossen, wenn diese Taste niedergedrückt wird. Außerdem enthält das Kameragehäuse10 einen Hauptschalter66 unter der Hauptschaltertaste36 . Der Hauptschalter66 wird geschlossen, wenn die Hauptschaltertaste36 verschoben wird. - Die Kamera enthält das in
4 gezeigte Steuersystem. Dieses Steuersystem enthält eine Gehäuse-CPU20 , mit der ein segmentierter Lichtmeßsensor70 über eine Lichtmeßschaltung72 und einen Analog-Digitalwandler74 verbunden ist. Der Lichtmeßsensor70 erzeugt ein elektrisches Signal abhängig von der auf ihn einwirkenden Lichtintensität. Dieses Signal wird in der Lichtmeßschaltung72 logarithmisch, komprimiert und dann mit dem A/D-Wandler74 in ein Digitalsignal umgesetzt, das als Lichtmeßsignal der Gehäuse-CPU20 zugeführt wird. Diese verarbeitet das digitale Lichtmeßsignal und Filmempfindlichkeitsinformationen aus einer Filmempfindlichkeits-Einstellschaltung76 , um die optimale Belichtungszeit und den Blendenwert zu berechnen. Abhängig von der berechneten Belichtungszeit und Blende steuert die Gehäuse-CPU20 eine Verschlußsteuerschaltung78 und eine Blendensteuerschaltung80 zum Betätigen eines Bildebenenverschlusses (nicht dargestellt) und eines Blendenmechanismus (nicht dargestellt) im Kameragehäuse10 . Wie vorstehend beschrieben, führt die Gehäuse-CPU20 vorbestimmte Belichtungsberechnungen mit dem digitalen Lichtmeßsignal und den Filmempfindlichkeitsinformationen aus, woraus sich Optimalwerte für die Belichtungszeit und die Blende ergeben, und steuert die Verschlußsteuerschaltung78 und die Blendensteuerschaltung80 entsprechend, um den im Kameragehäuse10 enthaltenen Film zu belichten. Außerdem steuert die Gehäuse-CPU20 eine Spiegelsteuerschaltung82 , um einen nicht dargestellten Motor zum Anheben und Absenken eines Hauptspiegels68 (1 ) anzusteuern, wodurch ein Bild auf den Film belichtet wird. Nach dieser Belichtung steuert die Gehäuse-CPU20 eine Filmtransportsteuerschaltung84 zum Einschalten eines Filmtransportmotors (nicht dargestellt). Nachdem eine vorbestimmte Anzahl Bilder belichtet ist, steuert die Gehäuse-CPU20 die Filmtransportsteuerschaltung84 zum Einschalten eines Rückspulmotors (nicht dargestellt). - Die Gehäuse-CPU
20 tauscht auch Daten und Befehle mit der Objektiv-CPU über die Anschlüsse18 an der Objektivfassung14 und die entsprechenden Anschlüsse an dem Objektiv12 aus. Das Objektiv12 hat einen nicht dargestellten Brennweiten-Erfassungsmechanismus, der mit der Objektiv-CPU verbunden ist und mit dem die jeweils eingestellte Brennweite ermittelt wird. - Die Gehäuse-CPU
20 enthält eine Steuerung20a zum Steuern ihres Gesamtbetriebes, welche ein ROM zum Speichern von Programmen und ein RAM zum Speichern von Daten und Programmen enthält. Ferner enthält sie eine arithmetische Einheit20c für verschiedene arithmetische Operationen wie automatische Scharfeinstellungsberechnungen (AF), Objektivantriebsberechnungen (PZ), Automatikbelichtungsberechnungen (AE) usw., sowie einen Zeitgeber20b . Mit der Steuerung20a ist ein EEPROM86 als externer Speicher verbunden, der ein elektrisch löschbarer, nicht flüchtiger Speicher ist. Dieser speichert verschiedene Konstanten des Kameragehäuses10 , verschiedene Funktionen und Konstanten zur automatischen Scharfeinstellung (AF), für den Objektivantrieb (PZ), für die Automatikbelichtung (AE) usw. Außerdem enthält dieser Speicher POINT-Ausführung OK-Bitinformationen, POINT-Informationen und Programme, die in POINT-Prozessen abgearbeitet werden. Diese Informationen werden im folgenden noch eingehend beschrieben. - Die Gehäuse-CPU
20 hat acht Ports P00 bis P07, die mit dem Lichtmeßschalter52 , dem Auslöseschalter54 , dem Tv/Av-Wahlschalter56 , dem Aufwärtsschalter58 , dem Abwärtsschalter60 , dem Belichtungsartschalter62 , dem Aufnahmeartschalter64 und dem Hauptschalter66 verbunden sind. - Mit der Gehäuse-CPU
20 sind außerdem ein Spiegel-Hebeschalter88 zum Heben des Hauptspiegels68 und ein Spiegel-Senkschalter50 zum Herabklappen des Hauptspiegels68 verbunden. - Ein externer Rechner
92 wie z.B. ein Personal Computer wird mit der Gehäuse-CPU20 über eine nicht dargestellte Kommunikationssteuerung verbunden, um Daten in das EEPROM86 einzuschreiben, Programme zu ändern und/oder Testoperationen auszuführen. - Die Gehäuse-CPU
20 hat einen Stromversorgungsanschluß VDD, der mit dem positiven Anschluß einer Stromversorgung96 über einen Gleichstromwandler94 verbunden ist. Die Stromversorgung96 ist an ihrem negativen Anschluß mit dem Masseanschluß GND der Gehäuse-CPU20 verbunden. Ein Oszillator98 ist mit der Gehäuse-CPU20 verbunden und erzeugt ein Taktsignal. - Im folgenden wird anhand der
5 die Schaltung für die acht Ports P00 bis P07 beschrieben. Da diese Ports P00 bis P07 gleichartig sind, werden sie in5 durch P gekennzeichnet. - Jedes Port P dient als Eingangs-/Ausgangs-Port, d.h. entweder als Eingangs-Port oder als Ausgangs-Port, je nach der noch zu beschreibenden Datenrichtung. Jedes Port P wird mit einem Metalloxid-Halbleiter-Feldeffekttransistor (MOSFET)
100 " hochgezogen". Werden Daten in der in5 gezeigten Schaltung auf 0 gesetzt, so wirkt das Port P als Eingangs-Port zum Übertragen des Zustandes eines externen Schalters auf einen internen Datenbus. Wenn das Port P als Eingangs-Port wirkt, wird der MOSFET100 leitend und verbraucht einen gewissen Be trag an elektrischer Energie, wenn der externe Schalter geschlossen, d.h. mit Masse verbunden ist. Wenn die Daten auf 1 gesetzt werden, wirkt das Port P als Ausgangs-Port zur Ausgabe von Daten von dem internen Datenbus. Wenn das Port P als Ausgangsport wirkt, ist der MOSFET100 gesperrt, so daß er unabhängig vom Zustand des externen Schalters keine elektrische Energie verbraucht, wenn ein O-Signal ausgegeben wird. - Die Gehäuse-CPU
20 führt eine Steuersequenz für den Betrieb der elektronisch gesteuerten Kamera aus, die im folgenden anhand von Flußdiagrammen erläutert wird. - Die Steuersequenz enthält eine Hauptroutine mit einer Schleife POFF für einen Bereit-Zustand und einer Schleife PON für einen Betriebszustand. Verschiedene Prozesse zum Steuern der elektronisch gesteuerten Kamera gemäß der Erfindung werden aus der Schleife PON ausgeführt. Ein solcher Prozeß ist ein Auslöseprozeß zur Steuerung der Kamera bei einer Aufnahme, wenn die Auslösetaste
26 vollständig niedergedrückt wird. - Gemäß der Erfindung sind an verschiedenen Stellen der noch zu beschreibenden Steuersequenz acht POINT-Prozesse, d.h. Hilfsprozesse POINT 1 bis POINT 8 enthalten. In jedem dieser POINT-Prozesse, die noch eingehend erläutert werden, wird ein vorgegebenes Programm in das EEPROM
86 geschrieben, ohne ein bereits vorhandenes Programm abzuändern oder zu wechseln, und ein solches eingeschriebenes Programm wird wahlweise in einem bestimmten POINT-Prozeß ausgeführt, um einen Fehler im Hauptprogramm zu löschen oder virtuell zu eliminieren oder um eine spezielle Funktion für eine spezielle Anwendung dem Hauptprogramm hinzuzufügen. - HAUPTROUTINE
-
6 zeigt das Flußdiagramm der Hauptroutine der in der Gehäuse-CPU20 des Steuersystems ausgeführten Steuersequenz. - Die Hauptroutine beginnt, wenn eine Batterie in die Kamera eingesetzt wird. Dadurch wird bei Schritt S601 jeder Interrupt gesperrt, dann werden Merker initialisiert, das RAM und die Register initialisiert, ein Stapelzeiger auf die höchste Stelle gesetzt und die Ports initialisiert, d.h. die Ausgangsdaten der Ports P00 bis P07 werden in Schritt S603 auf Null gesetzt. Dann wird in Schritt S605 der Speisebetrieb eingeschaltet, um die gesamten elektrischen Schaltungen der Kamera einzuschalten. In Schritt S607 werden die in dem EEPROM
86 gespeicherten Daten in das RAM der Gehäuse-CPU20 eingeschrieben. - Die Gehäuse-CPU
20 hat einen in7 dargestellten Adreßraum. Das EEPROM86 speichert jede POINT-Information, so daß sie in einem noch zu beschreibenden Prüfprozeß neu geschrieben werden kann, wie8 zeit. - Wie in
9 dargestellt, werden als POINT 1-Information und POINT 2-Information in dem EEPROM86 Adressen niederer Ordnung, Adressen hoher Ordnung, Logikinformationen und Bitinformation gespeichert. Wenn die Logikinformationen auf OOh gesetzt sind, wird ein ODER gesetzt. Wenn die Logikinformationen auf 01h gesetzt sind, wird ein UND gesetzt. Wenn die Logikinformationen auf 02h gesetzt sind, wird ein EXKLUSIV-ODER gesetzt. - In der folgenden Beschreibung wird eine beispielsweise Einstellung in dem EEPROM zum Löschen eines Softwarefehlers erläutert. In diesem Beispiel wird an einer Stelle 1 bzw. POINT 1 die Information 9Fh als Adresse niederer Ordnung, die Information 00h als Adresse hoher Ordnung, die Information 00h als Logikinformation und 00h als Bitinformation (numerische Information) gespeichert. An einem POINT 2 wird 01h als Adresse niederer Ordnung, 00h als Adresse hoher Ordnung, 00h als Logikinformation und FFh als Bitinformation (numerische Information) gespeichert.
- Wie noch zu beschreiben ist, wird die Bitinformation an dem POINT 2 auf FFh gesetzt, weil beim Öffnen des Hauptschalters
66 oder beim Öffnen des Auslöseschalters54 oder des Lichtmeßschalters52 auch bei geschlossenem Hauptschalter66 die Richtungsdaten für die Ports P00 bis P07 ursprünglich auf FFh gesetzt sind, damit die Ports P00 bis P07 als Ausgangsports arbeiten und dadurch 0-Daten ausgeben, um unerwünschten elektrischen Energieverbrauch zu vermeiden. Wenn aber die Richtungsdaten für eines der Ports P00 bis P07 durch einen Softwarefehler auf Null gesetzt sind, so arbeitet dieses Port als Eingangsport und verbraucht elektrische Energie, wenn der zugeordnete Schalter geschlossen ist. Um diese Situation zu vermeiden, wird die Bitinformation für POINT 2 auf FFh gesetzt, um die Richtungsdaten für die Ports P00 bis P07 zwangsweise auf FFh zu setzen. - Wie
10 zeigt, werden Adreßinformationen zum Lesen von Daten aus dem EEPROM86 und die Zahl der aus dem EEPROM86 gelesenen Bytes als POINT 3- bis POINT 8-Informationen gespeichert. Ein Ausführungsprogramm entsprechend jedem POINT (mit Ausnahme von POINT 1 und POINT 2) wird gleichfalls als zusätzliche Routine durch die voreingestellte Bytezahl gespeichert, die an einer bezeichneten Adresse gelesen wird, um das Lesen der Daten aus dem EEPROM86 zu starten. - Das EEPROM
86 speichert Merkerdaten (Bitinformationen), die anzeigen, ob jeder POINT 1- bis POINT 8-Prozeß auszuführen ist oder nicht, wie11 zeigt. Wenn die Bitinformationen für jeden POINT auf 0 gesetzt sind, so wird gemäß12 ein entsprechender POINT-Ausführung OK-Merker (F_POINT 1 bis 8) freigegeben, um die Ausführung der POINT-Prozesse 1 bis 8 zu sperren. Wenn die Bitinformationen für jeden POINT auf 1 gesetzt sind, so wird der POINT-Ausführungs-OK-Merker (F_POINT) gesetzt, um die Ausführung der POINT-Prozesse 1 bis 8 zu ermöglichen. Wenn die Merkerdaten auf 0 gesetzt sind, werden also vorbestimmte Prozesse nicht ausgeführt, wenn sie auf 1 gesetzt sind, wird der jeweils vorbestimmte Prozeß ausgeführt. - Die in dem EEPROM
86 gespeicherten Bitinformationen können je nach Wunsch neu geschrieben werden, beispielsweise in dem Prüfprozeß. In diesem Ausführungsbeispiel sind zunächst alle Bits der Bitinformationen auf Null gesetzt, d.h. wenn die Kamera das Werk verläßt. Wenn keine Softwarefehler oder zusätzliche Funktionen vorhanden sind, werden also die POINT-Prozesse 1 bis 8, die an acht unterschiedlichen Stellen der Steuersequenz enthalten sind, gesperrt, wenn die Kamera das Werk verläßt. - In Schritt S607 (
6 ) werden mindestens Informationen für jeden POINT und Bitinformationen, die anzeigen, ob jeder POINT-Prozeß auszuführen ist oder nicht, aus dem EEPROM86 gelesen und in einem vorgegebenen Bereich des RAMs gespeichert, wie13 zeigt. - Danach geht die Steuerung in die POFF-Schleife, die wiederholt ausgeführt wird, wenn der Hauptschalter
66 im Kameragehäuse10 geöffnet ist. - POFF-SCHLEIFE
- In dieser Schleife wird in Schritt S609 ein Prüfprozeß aufgerufen. Dieser wird im folgenden als Subroutine beschrieben. Dann wird in Schritt S611 ein Schaltereingabeprozeß aufgerufen. In diesem wird jeweils 1 oder 0 eingegeben, abhängig von dem Zustand des Auslöseschalters
54 , des Lichtmeßschalters52 , des Hauptschalters66 usw., und die Merker dieser Schalter sowie verschiedene Merker, die abhängig von der Betätigung der Schalter gesetzt sind, werden in die Gehäuse-CPU20 eingegeben. Danach wird in Schritt S613 der POINT 1-Prozeß aufgerufen, und dann wird das Anzeigefeld34 abhängig von den in Schritt S615 eingegebenen Schalterdaten angesteuert. Dann wird der Hauptschalter66 in Schritt S617 abhängig von den Schaltereingabedaten geprüft. Wenn der Merker des Hauptschalter66 auf Null gesetzt ist, d.h. wenn die Hauptschaltertaste36 in der Position OFF ist, wird in Schritt S619 der POINT 2-Prozeß aufgerufen. Der POINT 1- und der POINT 2-Prozeß werden im folgenden noch als Subroutinen beschrieben. - Auch wenn der Merker des Hauptschalters
66 auf 1 gesetzt ist, d.h. wenn die Hauptschaltertaste36 in der Stellung GREEN oder ON ist, und wenn - 1. der Auslöseschalter
54 und - 2. der Lichtmeßschalter
52 - NEUSTART
-
14 zeigt das Flußdiagramm des Neustartprozesses. Dieser wird ausgeführt, wenn der Merker des Auslöseschalters54 oder des Lichtmeßschalters52 und der Merker des Hauptschalters66 auf 1 gesetzt ist. - In dem Neustartprozeß wird in Schritt S1401 der Speisebetrieb eingeschaltet, um alle elektrischen Schaltungen der Kamera einzuschalten, und die in dem EEPROM
86 gespeicherten Daten werden in das RAM der Gehäuse-CPU20 in Schritt S1403 eingeschrieben. Dieser Schritt entspricht dem in6 gezeigten Schritt S607. Dann wird in Schritt S1405 ein PON-Zeitgeber auf eine Anzahl Wiederholungen der PON-Schleife gesetzt, in diesem Ausführungsbeispiel auf80 . Wenn eine noch zu beschreibende Periode von 128 Millisekunden der PON-Schleife80 mal wiederholt wird, ergibt sich eine Wiederholungszeit von insgesamt etwa 10 Sekunden. Danach geht die Steuerung in die PON-Schleife. - PON-SCHLEIFE
- In dieser Schleife wird der Datenaustausch zwischen dem Kameragehäuse
10 und dem Objektiv12 ausgeführt, ein Lichtmeßprozeß veranlaßt, die Automatikbelichtungsrechnungen (AE) für einen Tv/Av-Wert abhängig von der Lichtmessung ausgeführt und ein Auslöseprozeß durchgeführt. - Zunächst wird in Schritt S1407 ein 128 Millisekunden-Zeitgeber gestartet, um die Periode der PON-Schleife einzustellen. Dann erfolgt in Schritt S1409 der Datenaustausch zwischen dem Kameragehäuse
10 und dem Objektiv12 . - Ein normaler fotometrischer Prozeß wird in Schritt S1411 ausgeführt, um Objekthelligkeitsdaten in Form digitaler Werte einzugeben, die der A/D-Wandler
74 aus den von dem Lichtmeßsensor70 über die Lichtmeßschaltung72 gelieferten Signalen ableitet. Abhängig von den eingegebenen Objekthelligkeitsdaten wird die Automatikbelichtungsrechnung in Schritt S1413 ausgeführt. Danach wird in Schritt S1415 der POINT 3-Prozeß aufgerufen. Dieser Prozeß wird als Subroutine noch beschrieben. - Dann wird in Schritt S1417 ein Schaltereingabeprozeß aufgerufen. Wie bei Schritt S611 wird 1 oder 0 abhängig vom Zustand des Auslöseschalters
54 , des Lichtmeßschalters52 , des Hauptschalters66 usw. eingegeben, und die Merker dieser Schalter sowie verschiedene Merker, die abhängig von der Betätigung der Schalter gesetzt sind, werden in die Gehäuse-CPU20 eingegeben. Danach wird der POINT 4-Prozeß in Schritt S1419 aufgerufen und dann wird das Anzeigefeld34 abhängig von den in der Schaltereingabe eingegebenen Daten in Schritt S1421 angesteuert. - Danach wird in Schritt S1423, abhängig von den bei der Schaltereingabe eingegebenen Daten der Hauptschalter
66 geprüft. Wenn der Merker des Hauptschalters66 auf 0 gesetzt ist, d.h. wenn sich die Hauptschaltertaste36 in der Stellung OFF befindet, springt die Steuerung zu der POFF-Schleife. Ist der Merker des Schalters66 auf 1 gesetzt, d.h. ist die Hauptschaltertaste36 in der Stellung ON oder GREEN, so wird in Schritt S1425 der POINT 5-ProzeB aufgerufen. Der POINT 4- und der POINT 5-Prozeß werden im folgenden als Subroutinen noch beschrieben. - Wird in Schritt S1427 festgestellt, daß die Auslösetaste
26 vollständig niedergedrückt ist, d.h. daß der Auslöseschalter54 geschlossen ist oder der Merker des Auslöseschalters54 auf 0 gesetzt ist, so wird ein Auslöseprozeß ausgeführt. Dieser Auslöseprozeß wird im folgenden noch beschrieben. - Wird in Schritt S1427 festgestellt, daß die Auslösetaste
26 nur teilweise oder nicht niedergedrückt ist, d.h. daß der Auslöseschalter54 geöffnet oder sein Merker auf 1 gesetzt ist, so wird der Zustand des Auslöseschalters54 überwacht, bis der 128 ms-Zeitgeber abläuft und dies bei Schritt S1429 festgestellt wird. Beim Ablauf dieser Zeit wird der PON-Zeitgeber in Schritt S1433 um 1 verringert, wenn der Lichtmeßschalter52 geöffnet, d.h. sein Merker auf 1 gesetzt ist und dies in S1431 festgestellt wird. Wenn die PON-Schleife entsprechend der Voreinstellung in Schritt S1405 wiederholt durchlaufen wurde, d.h. wenn der Stand des PON-Zeitgebers 0 ist und dies in Schritt S1435 festgestellt wird, geht die Steuerung in die POFF-Schleife. Wird in Schritt S1431 festgestellt, daß der Lichtmeßschalter52 geschlossen ist, oder wird in Schritt S1435 festgestellt, daß der Stand des PON-Zeitgebers 0 ist, wird die PON-Schleife wiederholt. - AUSLÖSEPROZESS
-
15 zeigt das Flußdiagramm des Auslöseprozesses. In diesem Prozeß werden ein Lichtmeßprozeß und AE-Berechnungen nacheinander in den Schritten S1501, S1503 ausgeführt, wonach in Schritt S1505 der POINT 6-Prozeß aufgerufen wird. Danach wird das Ergebnis der AE-Berechnungen auf dem Anzeigefeld34 in Schritt S1507 angezeigt, und in Schritt S1509 wird der POINT 7-Prozeß aufgerufen. - Dann wird eine Belichtungssequenz ausgeführt, indem nacheinander in Schritt S1511 ein Spiegelhebe-/Blendensteuerprozeß, ein Belichtungsprozeß in Schritt S1513 und ein Spiegelsenkprozeß in Schritt S1515 sowie ein Filmtransportprozeß in Schritt S1517 ausgeführt wird: Schließlich wird in Schritt S1519 der POINT 8-Prozeß aufgerufen. Nachdem der Auslöseprozeß beendet ist, geht die Steuerung zu der in
14 gezeigten PON-Schleife. Der Spiegelhebe-/Blendensteuerprozeß in Schritt S1511 und der Spiegelsenkprozeß in Schritt S1515 werden im folgenden als Subroutinen noch beschrieben. Auch werden die POINT-Prozesse 6, 7 und 8 der Schritte S1505, S1509 und S1519 noch beschrieben. - PRÜFPROZESS
- Der in Schritt S609 der in
6 gezeigten Hauptroutine aufgerufene Prüfprozeß wird als Subroutine anhand der16 erläutert. - In dem Prüfprozeß werden Daten, Programme usw. in das EEPROM
86 geschrieben oder aus ihm gelesen und Daten in die ein/Asugabe (I/O) und das RAM geschrieben oder daraus gelesen, während die Gehäuse-CPU20 mit dem externen Rechner92 zum Datenaustausch verbunden ist. - Wird der Prüfprozeß aufgerufen, so wird in Schritt S1601 geprüft, ob eine Anforderung für Datenaustausch besteht oder nicht. Besteht keine Anforderung, so ist der Prüfprozeß beendet, und die Steuerung kehrt zu der in
6 gezeigten Hauptroutine zurück. - Ergibt sich in Schritt S1601 eine Anforderung für Datenaustausch, werden die einzelnen Schritte des Prüfprozesses ausgeführt. Zunächst werden in Schritt S1603 ein Prozeßcode zum Anzeigen des Schreibens von Daten in das EEPROM
86 , ein Prozeßcode zum Anzeigen des Lesens von Daten aus dem EEPROM86 , ein Prozeßcode zum Anzeigen des Schreibens von Daten in die Ein/Ausgabe oder das RAM und ein Prozeßcode zum Anzeigen des Lesens von Daten aus der Ein/Ausgabe oder dem RAM eingegeben. Dann wird in Schritt S1605 abhängig von den eingegebenen Prozeßcodes geprüft, ob das Schreiben eines Bytes in das EEPROM86 angezeigt wurde. - Trifft dies zu, so werden in Schritt S1607 eine Schreibadresse und Daten über den externen Rechner
92 eingegeben, das EEPROM86 in Schritt S1609 in den Zustand zum Schreiben eines Bytes versetzt, und die über den externen Rechner92 eingegebenen Adressen und Daten in Schritt S1611 in das EEPROM86 eingegeben. Nach der Schreibsequenz der Adresse und der Daten in das EEPROM86 kehrt die Steuerung zu der in6 gezeigten Hauptroutine zurück. - Wird das Schreiben eines Bytes in das EEPROM
86 in Schritt S1605 nicht angezeigt, dann wird in Schritt S1613 geprüft, ob das Lesen von Daten aus dem EEPROM86 angezeigt wurde. Trifft dies zu, so werden in Schritt S1617 eine Adresse zum Starten des Lesens von Daten aus dem EEPROM86 und die Zahl der zu lesenden Bytes über den externen Rechner92 in Schritt S1615 eingegeben. Dann werden Daten mit der eingegebenen Adresse und der eingegebenen Bytezahl aus dem EEPROM86 gelesen und dann zu dem externen Rechner92 übertragen. Die Sequenz zum Lesen der Daten aus dem EEPROM86 wird beendet und die Steuerung kehrt zu der in6 gezeigten Hauptroutine zurück. - Wenn das Lesen der Daten aus dem EEPROM
86 in Schritt S1613 nicht angezeigt wird, so wird in Schritt S1619 abhängig von den eingegebenen Prozeßcodes geprüft, ob das Schreiben eines Bytes in die Ein/Ausgabe oder das RAM angezeigt wurde. Trifft dies zu, so werden eine Schreibadresse und Daten über den externen Rechner92 in Schritt S1621 eingegeben. Dann werden die eingegebene Adresse und Daten in Schritt S1623 in das RAM geschrieben. Die Sequenz zum Schreiben der Daten in das RAM ist nun beendet, und die Steuerung kehrt zur Hauptroutine gemäß6 zurück. - Wenn das Schreiben eines Bytes in die Ein/Ausgabe oder das RAM in Schritt S1619 nicht angezeigt wurde, so wird in Schritt S1625 abhängig von den eingegebenen Prozeßcodes geprüft, ob das Lesen der Daten aus der Ein/Ausgabe oder dem RAM angezeigt wurde. Wird in Schritt S1625 das Lesen der Daten aus der Ein/Ausgabe oder dem RAM angezeigt, so wird eine Adresse zum Start des Lesens von Daten aus dem RAM sowie die zu lesende Zahl von Bytes über den externen Rechner
92 in Schritt S1627 eingegeben. Dann werden in Schritt S1629 Daten mit der eingegebenen Adresse und der eingegebenen Bytezahl aus dem RAM gelesen und zu dem externen Rechner92 übertragen. Nachdem die Sequenz des Lesens der Daten aus dem RAM beendet ist, kehrt die Steuerung zu der Hauptroutine nach6 zurück. - In dem Prüfprozeß ist es also möglich, bei der Verbindung der Gehäuse-CPU
20 mit dem externen Rechner92 Daten, Programme usw. in das EEPROM86 einzuschreiben oder aus ihm zu lesen und außerdem Daten in die Ein/Ausgabe und das RAM einzuschreiben oder daraus zu lesen. - SPIEGELHEBE-/BLENDENSTEUERPROZESS
- Dieser Prozeß wird in Schritt S1511 des Auslöseprozesses nach
15 aufgerufen und im folgenden anhand der17 als eine Subroutine beschrieben. - Wenn dieser Prozeß aufgerufen wird, so wird in Schritt S1701 ein nicht dargestellter Spiegelhebeschalter geprüft. Ist er geschlossen, so wird der Spiegelhebe-/Blendensteuerprozeß nicht ausgeführt, da der Hauptspiegel
68 hochgeklappt ist, und die Steuerung kehrt aus diesem Steuerprozeß zu dem Auslöseprozeß zurück. - Wenn der Spiegelhebeschalter nicht geschlossen ist, wird der Spiegelmotor in Schritt S1703 so eingeschaltet, daß der Hauptspiegel
68 angehoben wird. Synchron damit wird in Schritt S1705 ein Prozeß zum Steuern der Blende gestartet. Dieser wird abgeschlossen, bis in Schritt S1707 das Schließen des Spiegelhebeschalters festgestellt wird. In Schritt S1709 wird dadurch das Anheben des Hauptspiegels68 beendet. Mit Ende dieses Prozesses kehrt die Steuerung zu dem Auslöseprozeß zurück. - SPIEGELSENKPROZESS
- Dieser in Schritt S1515 des in
15 gezeigten Auslöseprozesses aufgerufene Prozeß wird im folgenden anhand der18 als Subroutine beschrieben. - Wenn der Spiegelsenkprozeß aufgerufen wird, wird in Schritt S1801 ein Senkschalter (nicht dargestellt) geprüft. Ist er geschlossen, wird der Spiegelsenkprozeß nicht ausgeführt, weil der Hauptspiegel
68 bereits heruntergeklappt ist. Die Steuerung kehrt dann aus diesem Prozeß zu dem Auslöseprozeß zurück. - Ist der Spiegelsenkschalter nicht geschlossen, wird der Spiegelmotor so betrieben, daß der Hauptspiegel
68 in Schritt S1803 abgesenkt wird. Der Hauptspiegel68 wird kontinuierlich heruntergeklappt, bis in Schritt S1805 festgestellt wird, daß der Spiegelhebeschalter geschlossen ist. Dann wird das Absenken des Hauptspiegels68 in Schritt S1807 unterbrochen. Mit Ende dieses Prozesses kehrt die Steuerung zu dem Auslöseprozeß zurück. - POINT-PROZESSE
- Wie oben beschrieben, werden diese Prozesse an verschiedenen Stellen POINT 1 bis POINT 8 der Steuersequenz ausgeführt. Jeder dieser Prozesse wird im folgenden näher erläutert.
- Bei den zu beschreibenden Prozessen für POINT 1 bis POINT 8 wird ein vorgegebenes Programm in das EEPROM
68 eingeschrieben, ohne die in dem ROM gespeicherte Programmsoftware zu verändern. Das in dem EEPROM68 gespeicherte Programm wird wahlweise in einem bestimmten POINT-Prozeß ausgeführt, um einen Softwarefehler zu eliminieren oder eine Sonderfunktion oder eine Sonderanwendung an das existierende Programm anzufügen. - POINT 1- UND POINT 2-PROZESS
- Im folgenden werden anhand der
19 spezielle Steuersequenzen der Prozesse für POINT 1 und POINT 2 erläutert. Die Steuersequenzen dieser Prozesse sind einander ähnlich. - In jedem der beiden Prozesse wird eine vorbestimmte Prozeßsequenz ausgeführt, indem Bitinformationen benutzt werden, die für einen POINT gelesen werden. Wenn der POINT 1- oder der POINT 2-Prozeß ausgeführt wird, prüft Schritt S1901 einen entsprechenden Merker "POINT-Ausführung OK".
- Wie oben beschrieben, werden alle Bits der in dem EEPROM
86 gespeicherten Bitinformationen, die anzeigen, ob der POINT 1- und der POINT 2-Prozeß auszuführen ist oder nicht, bei Fehlen eines Softwarefehlers oder von Zusatzfunktionen auf 0 gesetzt, wenn die Kamera das Werk verläßt. Wenn in dem EEPROM86 gespeicherte Daten in das RAM der Gehäuse-CPU20 in Schritt S607 der Hauptroutine eingeschrieben werden, wird die Bitinformation aus dem EEPROM86 gelesen, und die Merker POINT-Ausführung OK (F_POINT 1–2) für die beiden Prozesse werden freigegeben. Daher überspringt die Steuerung einen Hilfsprozeß der Schritte S1903 bis S1911 und kehrt von Schritt S1901 (Nein) zur Hauptroutine zurück, wenn nicht die den Merkern entsprechende Bitinformation neu eingeschrieben wurde, wie beispielsweise bei dem Prüfprozeß in Schritt S609 der Hauptroutine. Die Prozesse für POINT 1 und POINT 2 sind dann beendet. - Wenn die Bitinformation der Merker POINT-Ausführung OK als 1 neu geschrieben wurde, geht die Steuerung von Schritt S1901 (Ja) zur Ausführung des zu beschreibenden Hilfsprozesses. Zunächst werden Informationen für jeden POINT, d.h. Adressen niederer Ordnung, Adressen hoher Ordnung, Logikinformationen und Bitinformationen wie in
9 gezeigt aus dem EEPROM86 in Schritt S1903 gelesen, und Bitinformationen, die die in dem Schritt S1903 dargestellte Adresse repräsentieren, werden aus dem RAM in Schritt S1905 gelesen. - Dann wird in Schritt S1907 geprüft, ob die in Schritt S1903 gelesene Logikinformation EXKLUSIV ODER ist oder nicht. Trifft dies zu (Ja), dann werden die Bitinformationen aus dem RAM und aus dem EEPROM
86 in Schritt S1909 EXKLUSIV ODER-verknüpft. Das Ergebnis dieser Operation wird in Schritt S1909 an der Adresse des RAMs zurückgeschrieben, die für jeden POINT in dem EEPROM86 angezeigt wird. Dann kehrt die Steuerung von den beiden für Prozessen POINT 1 und POINT 2 zurück zur Hauptroutine. - Auf diese Weise wird die in dem RAM enthaltene Bitinformation durch das Ergebnis neu geschrieben, das durch eine EXKLUSIV ODER-Verknüpfung der Bitinformationen des RAMs und der Bitinformationen des EEPROMs
86 erzeugt wird. - Wenn in Schritt S1907 das Ergebnis "Nein" ist, wird in Schritt S1913 geprüft, ob die in Schritt S1903 gelesene Logikinformation logisch UND ist oder nicht. Ist die Antwort "Ja", so werden in Schritt S1915 die Bitinformationen aus dem RAM und die Bitinformationen aus dem EEPROM
86 UND-verknüpft. Das Ergebnis dieser Verknüpfung wird in Schritt S1911 an der Adresse in das RAM zurückgeschrieben, die für jeden POINT in dem EEPROM86 angezeigt wird. Dann kehrt die Steuerung von den Prozessen für POINT 1 und POINT 2 zu der Hauptroutine zurück. - Wenn die Logikinformation aus Schritt S1903 in Schritt S1913 nicht mit UND festgestellt wird (Nein), werden die Bitinformationen aus dem RAM und die Bitinformationen aus dem EEPROM
86 in Schritt S1917 ODER-verknüpft, da die Logikinformation ODER ist. Das Ergebnis dieser Verknüpfung wird in Schritt S1911 an der Adresse in das RAM zurückgeschrieben, die für jeden POINT in dem EEPROM86 angezeigt wird. Dann kehrt die Steuerung von den Prozessen für POINT 1 und POINT 2 zur Hauptroutine zurück. - OPERATIONSBEISPIELE FÜR POINT 1- UND POINT 2-PROZESS
- Im folgenden wird ein Operationsbeispiel beschrieben, das auszuführen ist, wenn die Ausführung der Prozesse für POINT 1 und POINT 2 zugelassen wird, d.h. wenn die entsprechenden Merker F_POINT 1–2 gesetzt sind. In diesem Beispiel wird angenommen, daß die Richtungsdaten für jedes der Ports P00 bis P07, die auf FFh gesetzt sein sollten, durch einen Softwarefehler auf 0 gesetzt sind.
- Wenn in dem POINT 1-Prozeß der Schritt S1903 ausgeführt wird, so wird aus dem EEPROM
86 die Information 9Fh als Adresse niederer Ordnung, die Information 00h als Adresse hoher Ordnung, die Information 00h als Logikinformation und die Information 00h als Bitinformation gelesen. Wird Schritt S1905 ausgeführt, so werden Bitinformationen an eine Adresse 009Fh des RAMs gelesen. Da 00h als Logikinformation aus dem EEPROM86 gelesen wurde, wird in dem POINT 1-Prozeß ein ODER gesetzt. Dadurch geht die Steuerung von Schritt S1907 (Nein) über den Schritt S1913 (Nein) zum Schritt S1917, bei dem die an der Adresse 009Fh aus dem RAM gelesenen Informationen und die Bitinformationen 00h aus dem EEPROM86 ODER-verknüpft werden. - Dadurch stimmt die Bitinformation, die in Schritt S1911 an der angezeigten Adresse des RAMs zurückgeschrieben wurde, mit der an den Adressen 009Fh des RAMs gelesenen Information überein. Anders ausgedrückt, wird eine Prozeßsequenz equivalent der Nichtausführung des POINT 1-Prozesses in dem POINT 1-Prozeß ausgeführt.
- Wird in dem POINT 2-Prozeß der Schritt S1903 ausgeführt, so wird die Information 01h als Adresse niederer Ordnung, die Information 00h als Adresse hoher Ordnung, die Information 00h als Logikinformation und die Information FFh als Bitinformation aus dem EEPROM
86 gelesen. Wird Schritt S1905 ausgeführt, so wird die Bitinformation an der Adresse 0001h des RAMs gelesen. Da die Information 00h als Logikinformation aus dem EEPROM86 gelesen wurde, wird in dem POINT 2-Prozeß ein ODER gesetzt. Dadurch geht die Steuerung von Schritt S1907 (Nein) über Schritt S1913 (Nein) zu Schritt S1917, in dem die Bitinformation der Adresse 0001h des RAMs und die Bitinformation FFh aus dem EEPROM86 ODER-verknüpft werden. - Dadurch wird die Bitinformation, die an der bezeichneten Adresse des RAMs in Schritt S1911 zurückgeschrieben wird, zu FFh und ersetzt jegliche Bitinformation, die an der Adresse 0001h des RAMs gelesen wurde.
- Anders ausgedrückt: wenn der Hauptschalter
66 geöffnet ist oder der Auslöseschalter54 oder der Lichtmeßschalter52 auch bei geschlossenem Hauptschalter66 geöffnet sind, und nach dem Schaltereingabeprozeß, werden die Richtungsdaten für die Ports P00 bis P07 ursprünglich auf FFh gesetzt, so daß die Ports P00 bis P07 als Ausgangsports arbeiten, um den elektrischen Energieverbrauch minimal zu halten. Auch wenn die Richtungsdaten für jedes Port P00 bis P07 durch einen Softwarefehler auf Null gesetzt sind, werden sie zwangsweise auf FFh gesetzt, ohne die Software abzuändern oder zu wechseln, indem in das EEPROM86 neu eingeschrieben wird, daß der Merker POINT-Ausführung OK für POINT 2 gesetzt wird und der POINT 2-Prozeß ausgeführt wird. - Indem so der POINT 2-Prozeß ausgeführt wird, werden nach der Schaltereingabe die Ports, die ursprünglich als Ausgangsports arbeiten sollten, zuverlässig auch weiterhin als Ausgangsports arbeiten, ohne infolge eines Softwarefehlers als Eingangsports zu arbeiten. Somit wird jeder unerwünschte Energieverbrauch vermieden und der Energieverbrauch minimal gehalten, auch wenn der Hauptschalter
66 geöffnet ist oder wenn der Auslöseschalter54 oder der Lichtmeßschalter52 auch bei geschlossenem Hauptschalter66 geöffnet werden. Ein solcher Softwarefehler wird also in einfacher Weise durch Neueinschreiben in das EEPROM86 virtuell eliminiert. - Da in dem dargestellten Ausführungsbeispiel der POINT 2-Prozeß in der in
6 gezeigten Hauptroutine wie beschrieben angeordnet ist, ermöglicht er eine Vorbestimmung eines Programms und einer Bitinformation, um eine Situation zu bewältigen, in der Ports, die als Ausgangsports arbeiten sollen, durch einen Softwarefehler als Eingangsports arbeiten, wobei ein solcher Softwarefehler bei dem Schaltereingabeprozeß auftreten kann. Die Erfindung ist jedoch auf eine solche Ar beitsweise nicht beschränkt. Es ist schwierig, die Stelle vorherzusagen, an der ein Softwarefehler erzeugt wird, sowie den Zustand, in dem er auftritt. Es können mehrere POINT-Prozesse in der Hauptroutine angeordnet sein, und wenn ein Softwarefehler gefunden wird (während das Programm generiert wird oder nachdem das Produkt auf dem Markt ist), wird ein Programm zum Entfernen des Fehlers neu in das EEPROM86 im Prüfprozeß eingeschrieben, um in einem optimalen POINT-Prozeß ausgeführt zu werden, und wird ausgeführt, indem der Merker POINT-Ausführung OK für diesen POINT-Prozeß gesetzt wird. Die obige Bitanordnung mit Programm oder die Bitanordnung oder das Programm, die nicht hierzu gehören, sind so angeordnet, daß nachfolgend ein solches gewünschtes Programm geschrieben werden kann. - POINT 3-PROZESS BIS POINT 8-PROZESS
- Im folgenden werden anhand der
20 spezielle Steuersequenzen für die Prozesse für POINT 3 bis POINT 8 beschrieben. Die Steuersequenzen dieser Prozesse sind einander ähnlich. - In jedem dieser Prozesse wird eine vorbestimmte Hilfsprozeßsequenz auf der Basis von Programminformationen ausgeführt, die für jeden POINT gelesen werden. Wenn einer der Prozesse für POINT 3 bis POINT 8 ausgeführt wird, prüft Schritt S2001 den entsprechenden Merker POINT-Ausführung OK in derselben Weise wie bei dem POINT 1- oder dem POINT 2-Prozeß.
- Wenn die Bitinformation entsprechend diesem Merker neu geschrieben wurde, kehrt die Steuerung von Schritt S2001 (Nein) zu dem Neustartprozeß oder dem Auslöseprozeß zurück. Daher werden Verarbeitungen der Prozesse für POINT 3 bis POINT 8 nicht ausgeführt.
- Wenn die Bitinformation für den Merker POINT-Ausführung OK als 1 neu geschrieben wurde, geht die Steuerung von Schritt S2001 (Ja) weiter zur Ausführung der im folgenden zu be schreibenden Hilfssteuersequenz. Zunächst wird ein Stapelzeiger in dem RAM in Schritt S2003 zur höchsten Stelle rückgesetzt, und dann werden in Schritt S2005 eine Adresse zum Lesestart von Daten und die aus dem EEPROM
86 zu lesende Bytezahl, wie in10 gezeigt, als Informationen entsprechend jedem POINT aus dem EEPROM86 gelesen, um einen Programmbereich zu bestimmen, der jedem POINT in dem EEPROM86 entspricht. Dann wird in Schritt S2007 eine zusätzliche Programminformation aus dem EEPROM86 ausgehend von der in Schritt S2005 gezeigten Startadresse mit der Bytezahl in einen Bereich des RAMs umgeladen, der mit einer bestimmten Adresse beginnt, d.h. ein Stapelbereich (Adresse 00A0h) in diesem Ausführungsbeispiel. - Danach wird das zusätzliche Programm, das in Schritt S2007 umgeladen wurde, in Schritt S2009 aufgerufen und ausgeführt, und die Steuersequenz ist beendet. In diesem Ausführungsbeispiel wird ein Stapelbereich geöffnet, in dem der Stapelzeiger in Schritt S2003 auf die höchste Stelle rückgesetzt wird, und der benutzte Speicherbereich des RAMs wird gespart, indem die Programminformation aus dem EEPROM
86 in den Stapelbereich gelesen und die gelesene Programminformation ausgeführt wird. Die Erfindung ist auf eine solche Verfahrensweise aber nicht beschränkt. Wenn ausreichender allgemeiner RAM-Bereich verfügbar ist, kann die Programminformation aus dem EEPROM86 auch in diesen Bereich gelesen werden. Bei einer solchen Abänderung ist der Schritt S2003, bei dem der Stapelzeiger auf die höchste Stelle rückgesetzt wird, nicht erforderlich, und die Prozesse für POINT 3 bis POINT 8 können selbst als Subroutinen ausgeführt werden. - BEISPIEL EINER OPERATION IN DEM POINT 3-PROZESS
- Im folgenden wird ein Beispiel einer Operation beschrieben, die auszuführen ist, wenn die Ausführung der Prozesse POINT 3 bis POINT 8 zulässig ist, d.h. wenn die entsprechenden Merker F_POINT 3 bis 8 gesetzt sind. In diesem Prozeß wird eine Steuersequenz zum zwangsweisen Heben den Hauptspiegels
68 als Zusatzfunktion bezeichnet. - Eine aus dem EEPROM
86 als Beispiel gelesene Programminformation, d.h. das in das RAM umgeladene Zusatzprogramm, wird wie in21 gezeigt ausgeführt, wenn Schritt S2007 des POINT 3-Prozesses ausgeführt wird. Das in diesem Prozeß ausgeführte Zusatzprogramm wird im folgenden eingehend erläutert. - Die Funktion des zwangsweisen Hebens des Hauptspiegels
68 ist besonders dann nötig, wenn das beim Hochklappen des Hauptspiegels68 erzeugte Geräusch zu verringern ist, beispielsweise in einer ruhigen Umgebung während eines Konzerts o.ä. - Wenn dieser Prozeß ausgeführt wird, prüft Schritt S2101, ob eine manuelle Belichtungseinstellung eingestellt ist. Trifft dies nicht zu, d.h. es ist eine Automatikbelichtung oder eine Programmbelichtung eingestellt, kann dieser Betrieb nicht ausgeführt werden, da der Hauptspiegel
68 nicht zur Lichtmessung hochgeklappt werden kann. Deshalb kann die Steuersequenz zum zwangsweisen Heben des Hauptspiegels68 nicht ausgeführt werden, wenn die manuelle Belichtungseinstellung nicht wirksam ist. Diese Steuersequenz wird also sofort gelöscht, und die Steuerung kehrt zum Neustartprozeß zurück. - Wenn die manuelle Belichtungseinstellung in Schritt S2101 festgestellt wird, und wenn die Belichtungsarttaste
40 und die Aufnahmearttaste38 gleichzeitig gedrückt werden, um den Belichtungsartschalter62 und den Aufnahmeartschalter64 zu schließen, was in den Schritten S2103 und S2105 (Ja) festgestellt wird, so sind die Startbedingungen erfüllt, und der Prozeß zum Heben des Hauptspiegels68 wird aktiviert. In Schritt S2107 wird bestimmt, ob der Spiegelhebeschalter88 geschlossen ist. Trifft dies zu, so wird geprüft, ob das zwangsweise Heben des Hauptspiegels68 angezeigt wird, und die Subroutine des Spiegelhebe-/Blendensteuerprozesses wird aufgerufen und in Schritt S2109 ausgeführt. Diese Subroutine stimmt mit der Steuersequenz in Schritt S1511 des oben beschriebenen Auslöseprozesses überein, die in17 gezeigt ist. - Wenn der Spiegelhebe-/Blendensteuerprozeß in Schritt S2109 ausgeführt wird, wird der Hauptspiegel
68 zwangsweise hochgeklappt. Nach diesem Prozeß kehrt die Steuerung zum Neustartprozeß zurück. - Wird in Schritt S2107 festgestellt, daß der Spiegelhebeschalter
88 geöffnet ist, so wird in Schritt S2111 geprüft, ob der Spiegelsenkschalter90 geschlossen oder geöffnet ist. Ist er geschlossen, so wird festgestellt, daß das zwangsweise Herabklappen des Hauptspiegels68 angezeigt wird, und die Subroutine des Spiegelsenkprozesses wird aufgerufen und in Schritt S2113 ausgeführt. Die Subroutine des Spiegelsenkprozesses stimmt mit der Steuersequenz in18 überein, die in Schritt S1515 des Auslöseprozesses ausgeführt wird. - Wenn der Spiegelsenkprozeß in Schritt S2113 ausgeführt wird, wird der Hauptspiegel
68 zwangsweise herabgeklappt. Nach diesem Vorgang kehrt die Steuerung zu dem Neustartprozeß zurück. - Wenn in Schritt S2103 der Belichtungsartschalter
62 geöffnet ist (Nein) oder der Aufnahmeartschalter64 in Schritt S2105 geöffnet ist (Nein), sind die Startbedingungen nicht erfüllt, und die Steuersequenz wird gelöscht, die Steuerung kehrt dann zum Neustartprozeß zurück. - Wenn der Spiegelhebeschalter
88 und der Spiegelsenkschalter90 in den Schritten S2107 und S2111 (Nein) geöffnet sind, wird die Steuersequenz gelöscht und die Steuerung zum Neustartprozeß zurückgeführt, da zwar die Startbedingungen erfüllt sind, aber das Heben oder Senken des Hauptspiegels68 nicht angezeigt wird. Jegliche Operation, die mit der Zusatzfunktion des Hauptprogramms in Konflikt kommen könnte, wird übersprungen, wenn der POINT 3-Prozeß ausgeführt wird. - Mit diesem POINT 3-Prozeß kann die Steuersequenz zum zwangsweisen Heben des Hauptspiegels
68 als eine Zusatzfunktion ausgeführt werden, indem einfach die in dem EEPROM86 gespeicherten Daten überschrieben werden, ohne daß Programmänderungen oder Programmwechsel erforderlich sind. Das zwangsweise Heben des Hauptspiegels68 ist besonders dann vorteilhaft, wenn Aufnahmen mit geringem Spiegelgeräusch zu machen sind, beispielsweise in einer ruhigen Umgebung wie ein Konzert o.ä. - BEISPIELE VON OPERATIONEN DER POINT 4-, POINT 7- UND POINT 8-PROZESSE
- Die aus dem EEPROM
86 gelesene Programminformation (d.h. das in dem RAM gespeicherte Programm) bei Ausführung des Schritts S2007 der Prozesse ist in22 gezeigt. Beispiele eines in diesen Prozessen ausgeführten Zusatzprogramms werden im folgenden erläutert. - Wird die Subroutine aufgerufen, wird jede spezielle Steuersequenz als Hilfsprozeß ausgeführt, und die Steuerung kehrt direkt zum Neustartprozeß oder zum Auslöseprozeß zurück. Anders ausgedrückt, wird in den Prozessen POINT 4, POINT 7 und POINT 8 im wesentlichen dieselbe Operation ausgeführt, als wenn die Merker POINT-Ausführung OK in Schritt S2001 als freigegeben festgestellt werden.
- BEISPIEL EINER OPERATION DES POINT 5-PROZESSES
- Die aus dem EEPROM
86 bei Ausführen des Schritts S2007 des POINT 5-Prozesses gelesene Information, d.h. das in dem Speicherbereich des EEPROMs86 gespeicherte Programm, das bezeichnet wird, wenn Schritt S2005 des POINT 5-Prozesses ausgeführt wird, ist in23 dargestellt. Im folgenden wird ein Beispiel eines Programms beschrieben, das in dem POINT 5-Prozeß als Subroutine ausgeführt wird. In dieser Subroutine wird eine Steuersequenz zum Entfernen eines Fehlers defi niert, der erzeugt wird, wenn eine bestimmte Aufnahmeart eingestellt wird. - Vor der in
23 gezeigten Subroutine wird im folgenden anhand der24 beschrieben, wie die Aufnahmearten umgeschaltet werden. - Wenn der Kippschalter
28 nach links oder rechts betätigt wird, während die Aufnahmearttaste38 zum Schließen des Schalters64 gedrückt ist, wird der Aufwärts-Schalter58 oder der Abwärts-Schalter60 geschlossen, um ein sukzessives Umschalten der Aufnahmeart zwischen Einzelaufnahme, Serienaufnahme und Selbstauflöseraufnahme umzuschalten. - Die Einzelaufnahme wird eingeschaltet, wenn ein Merker F_DRIVES zum Anzeigen der Einzelaufnahme gesetzt ist, ein Merker F_DRIVEC zur Anzeige der Serienaufnahme freigegeben ist und ein Merker F_SELF zur Anzeige der Selbstauslöseraufnahme freigegeben ist. Die Aufnahmeart wird auf Serienaufnahme gesetzt, wenn der Merker F_DRIVES freigegeben ist, der Merker F_DRIVEC gesetzt ist und der Merker F_SELF freigegeben ist. Die Selbstauslöseraufnahme wird eingestellt, wenn der Merker F_DRIVES freigegeben ist, der Merker F_DRIVEC freigegeben ist und der Merker F_SELF gesetzt ist.
- Daher wird nur einer der drei Merker für diese Aufnahmearten, die jeweils einzeln gewählt werden können, gesetzt, während die anderen beiden Merker freigegeben sind. Diese Merker können abhängig davon gesetzt werden, ob der Aufwärts-Schalter
58 , der Abwärts-Schalter60 und der Aufnahmeartschalter64 geschlossen oder geöffnet sind, wie es bei dem Schaltereingabeprozeß in Schritt S1417 des Neustartprozesses nach14 angezeigt wird. Zwei dieser drei Merker können aber möglicherweise gleichzeitig gesetzt sein, was auf einen Softwarefehler zurückzuführen ist. - Wenn zwei der Merker für die Aufnahmearten gleichzeitig gesetzt sind, ist die Gehäuse-CPU nicht in der Lage, die Priorität festzustellen, die diesen beiden gesetzten Merkern zukommt. Daher kann eine gewünschte Aufnahmeart nicht gewählt werden, und es ist unmöglich, die Kamera zu betätigen. Auch können dabei zwei Aufnahmearten auf dem Anzeigefeld
34 dargestellt werden, wodurch der Benutzer verwirrt wird. - Wenn ein solcher Softwarefehler auftritt, wird ein Zustand erreicht, in dem nur ein Merker gesetzt ist, wenn der POINT 5-Prozeß ausgeführt wird, wozu das ursprüngliche Programm nicht geändert werden muß. Wenn das Zusatzprogramm für den POINT 5-Prozeß ausgeführt wird, bestimmt Schritt S2301, ob der Merker F_DRIVES gesetzt ist. Ist er gesetzt, so wird in Schritt S2303 bestimmt, ob der Merker F_DRIVEC gesetzt ist. Trifft dies zu, dann sind zwei Merker durch einen Softwarefehler gleichzeitig gesetzt, und in Schritt S2305 werden der Merker F_DRIVES gesetzt und die Merker F_DRIVEC und F_SELF werden gleichzeitig freigegeben.
- Dann wird in Schritt S2307 der durch das Setzen der Merker bedingte Zustand dargestellt. Die Steuersequenz der Subroutine ist nun beendet, und die Steuerung kehrt zu dem Neustartprozeß zurück.
- Ist der Merker F_DRIVEC in Schritt S2303 nicht gesetzt, so wird in Schritt S2309 geprüft, ob der Merker F_SELF gesetzt ist. Ist er freigegeben, so liegt kein Softwarefehler vor, und die Steuersequenz der Subroutine ist beendet, die Steuerung kehrt zum Neustartprozeß zurück. Wenn der Merker F_SELF in Schritt S2309 jedoch als gesetzt festgestellt wird, geht die Steuerung zu Schritt S2305, weil zwei Merker gleichzeitig durch einen Softwarefehler gesetzt sind, und in diesem Schritt wird der Merker F_DRIVES gesetzt und die Merker F_DRIVEC und F_SELF werden gleichzeitig freigegeben. Dann wird in Schritt S2307 der durch die Merker bedingte Zustand dargestellt. Die Steuersequenz ist nun beendet. Die Steuerung kehrt zum Neustartprozeß zurück.
- Wenn der Merker F_DRIVES und einer der Merker F_DRIVEC und F_SELF gleichzeitig gesetzt sind, wird also der Einzelaufnahme die Priorität gegeben und diese Aufnahmeart zwangsweise eingestellt.
- Ist in Schritt S2301 der Merker F_DRIVES freigegeben, so wird in Schritt S2311 bestimmt, ob der Merker F_DRIVEC gesetzt ist. Ist er freigegeben, so liegt kein Softwarefehler vor, und die Steuersequenz der Subroutine ist beendet. Die Steuerung kehrt zum Neustartprozeß zurück. Ist der Merker F_DRIVEC in Schritt S2311 gesetzt, so wird in Schritt S2313 geprüft, ob der Merker F_SELF gesetzt ist. Ist er freigegeben, so liegt kein Softwarefehler vor, die Steuersequenz der Subroutine ist beendet, und die Steuerung kehrt zu dem Neustartprozeß zurück. Ist der Merker F_SELF in Schritt S2313 gesetzt, so sind zwei Merker gleichzeitig durch einen Softwarefehler gesetzt, und die Steuerung geht zu Schritt S2315, bei dem der Merker F_DRIVEC gesetzt und die Merker F_DRIVES und F_SELF freigegeben werden. Dann wird der dadurch erreichte Zustand in Schritt S2307 angezeigt. Die Steuersequenz der Subroutine ist nun beendet. Die Steuerung kehrt zum Neustartprozeß zurück.
- Wenn der Merker F_DRIVEC und der Merker F_SELF gleichzeitig gesetzt sind, wird der Serienaufnahme die Priorität gegeben und diese Aufnahmeart zwangsweise eingestellt.
- Auch wenn ein Softwarefehler auftritt, durch den zwei Aufnahmeartmerker gleichzeitig gesetzt sind, erreicht man also einen Zustand, bei dem nur ein solcher Merker gesetzt ist, indem der POINT 5-Prozeß ausgeführt wird, ohne daß das Programm abgeändert wird.
- Wie vorstehend für den POINT 2-Prozeß beschrieben, kann ein Programm zum Entfernen eines Fehlers allgemein nur nach Auftreten des Fehlers entwickelt werden. Bei der Erfindung wird ein solches Programm aber vorher geschrieben und enthält den POINT 5-Prozeß, der in dem Neustartprozeß angeordnet ist, so daß auch bei Auftreten eines Fehlers beim Setzen der Aufnahmeartmerker eine zusätzliche Software leicht hinzugefügt werden kann, um den Fehler zu eliminieren, ohne daß das eigentliche Programm abgeändert werden muß.
- BEISPIEL EINER OPERATION DES POINT 6-PROZESSES
- Die aus dem EEPROM
86 beim Ausführen des Schritts S2007 des POINT 6-Prozesses gelesene Programminformation, d.h. das in dem Speicherbereich des EEPROMs86 gespeicherte Programm, welches beim Ausführen des Schritts 2005 des POINT 5-Prozesses angezeigt wird, ist in25 dargestellt. Ein Beispiel eines als Subroutine in dem POINT 6-Prozeß ausgeführten Programms wird im folgenden erläutert. - Wird diese Subroutine aufgerufen, so wird in Schritt S2501 der in
16 gezeigte Prüfprozeß ausgeführt, und die Steuerung kehrt zum Auslöseprozeß zurück. Anders gesagt, wird in dem POINT 6-Prozeß dieselbe Operation wie in dem Prüfprozeß in Schritt S609 der Hauptroutine ausgeführt mit dem Unterschied, daß der Testprozeß in Schritt S609 der Hauptroutine in der POFF-Schleife ausgeführt wird, während der Testprozeß in dem POINT 6-Prozeß in dem Auslöseprozeß der PON-Schleife ausgeführt wird. - Wenn die in dem RAM gespeicherten Ergebnisse des Lichtmeßprozesses und der AE-Berechnungen zur Auslösesteuerung (Belichtungssteuerung) beim Korrigieren der Software oder beim Prüfen der hergestellten Kamera zu bestätigen sind, können sie durch Einfügen des Testprozesses in den POINT 6-Prozeß bestätigt werden. Durch Einfügen des Testprozesses, Datenaustausch zwischen dem externen Rechner
92 und der Gehäuse-CPU20 bei Auslösung und Übertragen eines Prozeßcodes zum Lesen der Daten aus dem RAM ist es möglich, die RAM-Daten aus der Gehäuse-CPU20 mit dem externen Rechner92 zu lesen, um die Ergebnisse der AE-Berechnungen zu bestätigen. - Die Erfindung ist nicht auf die Einzelheiten des vorstehend erläuterten Ausführungsbeispiels beschränkt. Zahlreiche Änderungen und Modifikationen sind ohne Abweichen vom Grundgedanken der Erfindung möglich.
- Beispielsweise wird bei dem beschriebenen Ausführungsbeispiel ein bestimmter Prozeß ausgeführt unter Verwendung von Bitinformationen, die in dem POINT 1-Prozeß und dem POINT 2-Prozeß gelesen werden, und ein bestimmter Prozeß wird ausgeführt unter Verwendung von Programminformationen, die in den Prozessen POINT 3 bis POINT 8 gelesen werden. Ein bestimmter Prozeß kann jedoch ausgeführt werden unter Verwendung von Bitinformationen, die in den Prozessen POINT 3 bis POINT 8 gelesen werden, und ein bestimmter Prozeß kann ausgeführt werden unter Verwendung von Programminformationen, die in den Prozessen POINT 1 und POINT 2 gelesen werden. Alternativ kann ein bestimmter Prozeß ausgeführt werden unter Verwendung von Programminformationen, die in allen Prozessen POINT 1 bis POINT 8 gelesen werden.
- Während ein Programm unter Verwendung nur einer Art von Logikinformationen, d.h. EXCLUSIV ODER, ODER, UND in dem POINT 2-Prozeß ausgeführt wird, ist die Erfindung auf die Auswahl solcher Informationsarten nicht beschränkt, sondern es ist auch möglich, andere Logikinformationen zu verwenden. Es ist ferner möglich, ein Programm unter Verwendung mehrerer Arten Logikinformationen auszuführen.
- Bei dem oben beschriebenen Ausführungsbeispiel wird das Nicht-Ausführen eines bestimmten POINT-Prozesses durch Freigabe eines entsprechenden Merkers angezeigt. Wird aber ein bestimmter Prozeß auf der Basis gelesener Bitinformationen ausgeführt, wird virtuell kein Prozeß ausgeführt, d.h. es wird derselbe Prozeß wie bei Freigabe des Merkers POINT-Ausführung OK ausgeführt, indem 00h als logische Information und 00h als Bitinformation wie bei dem POINT 1-Prozeß gespeichert wird. Deshalb kann man auf das Bestimmen des Merkers POINT-Ausführung OK verzichten. Wenn ein bestimmter Prozeß auf der Basis gelesener Programminformationen ausgeführt wird, wird virtuell kein Prozeß ausgeführt, d.h. derselbe Prozeß wie bei Freigabe des Merkers POINT-Ausführung OK wird ausgeführt, indem keine spezielle Steuersequenz ausgeführt, sondern direkt zum Neustartprozeß oder zum Auslöseprozeß zurückgekehrt wird, wie es bei dem POINT 4-Prozeß (POINT 7-Prozeß oder POINT 8-Prozeß) der Fall ist. Daher kann auf den Schritt der Bestimmung des Merkers POINT-Ausführung OK verzichtet werden.
- Beim dargestellten Ausführungsbeispiel können die Richtungsdaten für alle Ports zwangsweise auf FFh gesetzt werden, ohne die Software zu ändern oder auszuwechseln, indem die logische Information auf 00h und die Bitinformation auf FFh in dem POINT 2-Prozeß gesetzt wird, auch wenn die Richtungsdaten für jedes Port P00 bis P07 auf 0 infolge eines Softwarefehlers bei geöffnetem Hauptschalter
66 gesetzt sind oder wenn der Auslöseschalter54 oder der Lichtmeßschalter52 geöffnet und der Hauptschalter66 geschlossen ist. Die Erfindung ist jedoch auf eine solche Fehlerbeseitigung mit gelesenen Bitinformationen nicht begrenzt. Entsprechend einer Abänderung nach26 ist eine Fehlerbeseitigung auch mit gelesenen Programminformationen möglich. - Bei dieser Modifikation wird die Steuersequenz nach
20 in dem POINT 2-Prozeß ausgeführt, und eine in dieser Steuersequenz aufgerufene Subroutine ist in26 gezeigt. Wenn diese Subroutine aufgerufen wird, werden alle Ports P00 bis P07 in Schritt S2601 so gesetzt, daß sie als Ausgangsports arbeiten, und dann kehrt die Steuerung zum Neustartprozeß zurück. - Bei dieser Abänderung kann also ein Fehler mit gelesenen Programminformationen beseitigt werden, indem die Steuersequenz nach
26 angewendet wird.
Claims (11)
- Verfahren zum Steuern des Betriebes einer elektronisch gesteuerten Kamera mit einem Festspeicher für ein Steuerprogramm und mindestens einen Hilfsprozeß sowie einem überschreibbaren Speicher, wobei in dem überschreibbaren Speicher Merkerdaten gespeichert werden, die bestimmen, ob der Hilfsprozeß mit gespeicherten Operationsdaten auszuführen ist, die Merkerdaten gelesen werden, und der Hilfsprozeß mit den Operationsdaten nur dann ausgeführt wird, wenn dies durch die Merkerdaten vorgegeben wird, dadurch gekennzeichnet, daß der überschreibbare Speicher mit einer externen Vorrichtung verbunden wird, die das Überschreiben der Merkerdaten und der Operationsdaten ermöglicht, die Operationsdaten eine Adresse enthalten, die ein Zusatzprogramm in dem überschreibbaren Speicher bezeichnet, und der Hilfsprozeß durch Ausführen des Zusatzprogramms ausgeführt wird.
- Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß Parameterdaten für den Betriebsstatus der Kamera in einem weiteren Speicher gespeichert werden und daß die Operationsdaten Informationen über eine Bitmanipulation der Parameterdaten enthalten.
- Verfahren nach Anspruch 2, dadurch gekennzeichnet, daß die Informationen eine Adreßinformation zum Bezeichnen von Parameterdaten in dem weiteren Speicher enthalten, die zu manipulieren sind.
- Verfahren nach Anspruch 3, dadurch gekennzeichnet, daß die Informationen numerische Informationen, eine logische Operation zum Behandeln der numerischen In formationen und die mit der Adreßinformation bezeichneten Parameterdaten enthalten.
- Verfahren nach Anspruch 4, dadurch gekennzeichnet, daß die logische Operation eine ODER-Operation, eine UND-Operation oder eine EXCLUSIV-ODER-Operation ist.
- Verfahren nach Anspruch 4, dadurch gekennzeichnet, daß die logische Operation zum Löschen eines Fehlers im Programm dient.
- Verfahren nach Anspruch 6, dadurch gekennzeichnet, daß das Zusatzprogramm das Löschen eines Programmfehlers umfaßt.
- Verfahren nach Anspruch 6, dadurch gekennzeichnet, daß das Zusatzprogramm das Anfügen einer Funktion umfaßt.
- Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß mehrere Hilfsprozesse an unterschiedlichen vorbestimmten Stellen des Steuerprogramms vorgesehen sind.
- Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß der überschreibbare Speicher ein EEPROM ist.
- verfahren nach einem der Ansprüche 2 bis 10, dadurch gekennzeichnet, daß der weitere Speicher ein Speicher mit wahlfreiem Zugriff ist.
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP16620893A JPH06347857A (ja) | 1993-06-11 | 1993-06-11 | プログラム変更可能なカメラ |
JP5-166208 | 1993-06-11 | ||
JP5-166209 | 1993-06-11 | ||
JP16620993A JP3411622B2 (ja) | 1993-06-11 | 1993-06-11 | プログラム変更可能なカメラ |
Publications (2)
Publication Number | Publication Date |
---|---|
DE4420404A1 DE4420404A1 (de) | 1994-12-15 |
DE4420404B4 true DE4420404B4 (de) | 2007-12-06 |
Family
ID=26490663
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE4420404A Expired - Fee Related DE4420404B4 (de) | 1993-06-11 | 1994-06-10 | Verfahren zum Steuern des Betriebes einer elektronisch gesteuerten Kamera |
Country Status (2)
Country | Link |
---|---|
US (1) | US5561493A (de) |
DE (1) | DE4420404B4 (de) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3356537B2 (ja) * | 1994-04-15 | 2002-12-16 | 富士写真フイルム株式会社 | カメラシステムおよび画像ファイルシステム |
US5809345A (en) * | 1995-03-31 | 1998-09-15 | Asahi Kogaku Kogyo Kabushiki Kaisha | Programmable electronic device |
US5973734A (en) | 1997-07-09 | 1999-10-26 | Flashpoint Technology, Inc. | Method and apparatus for correcting aspect ratio in a camera graphical user interface |
JP2957977B2 (ja) * | 1997-10-30 | 1999-10-06 | 三洋電機株式会社 | ビデオカメラ |
US6317141B1 (en) | 1998-12-31 | 2001-11-13 | Flashpoint Technology, Inc. | Method and apparatus for editing heterogeneous media objects in a digital imaging device |
US6973522B1 (en) | 1999-08-10 | 2005-12-06 | Pentax Corporation | Microcomputer with program-revision ability |
US9224145B1 (en) | 2006-08-30 | 2015-12-29 | Qurio Holdings, Inc. | Venue based digital rights using capture device with digital watermarking capability |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02941A (ja) * | 1988-03-29 | 1990-01-05 | Olympus Optical Co Ltd | カメラ |
JPH02196332A (ja) * | 1989-01-26 | 1990-08-02 | Nec Corp | 情報処理装置 |
JPH04226437A (ja) * | 1990-08-13 | 1992-08-17 | Olympus Optical Co Ltd | カメラ |
DE4216910A1 (de) * | 1991-05-21 | 1992-11-26 | Asahi Optical Co Ltd | Kamerasystem mit motorisch verstellbarem varioobjektiv |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5305044A (en) * | 1988-09-29 | 1994-04-19 | Asahi Kogaku Kogyo Kabushiki Kaisha | Autofocusing system for a camera |
JP3026584B2 (ja) * | 1990-07-06 | 2000-03-27 | 旭光学工業株式会社 | カメラシステム |
US5187517A (en) * | 1990-10-15 | 1993-02-16 | Olympus Optical Co., Ltd. | Camera controllable with use of a control program |
-
1994
- 1994-06-10 DE DE4420404A patent/DE4420404B4/de not_active Expired - Fee Related
- 1994-06-10 US US08/258,454 patent/US5561493A/en not_active Expired - Lifetime
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02941A (ja) * | 1988-03-29 | 1990-01-05 | Olympus Optical Co Ltd | カメラ |
JPH02196332A (ja) * | 1989-01-26 | 1990-08-02 | Nec Corp | 情報処理装置 |
JPH04226437A (ja) * | 1990-08-13 | 1992-08-17 | Olympus Optical Co Ltd | カメラ |
DE4216910A1 (de) * | 1991-05-21 | 1992-11-26 | Asahi Optical Co Ltd | Kamerasystem mit motorisch verstellbarem varioobjektiv |
Also Published As
Publication number | Publication date |
---|---|
DE4420404A1 (de) | 1994-12-15 |
US5561493A (en) | 1996-10-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3347872C2 (de) | ||
DE3710581C2 (de) | Kamera mit einstellbaren Betriebsarten | |
DE68923506T2 (de) | Einäugiges Spiegelreflexkamera-System. | |
DE68910352T2 (de) | Wechselobjektif-Mechanismus. | |
DE3409812C2 (de) | ||
DE3938650C2 (de) | ||
DE4420404B4 (de) | Verfahren zum Steuern des Betriebes einer elektronisch gesteuerten Kamera | |
DE3750728T2 (de) | Photographische Kamera. | |
DE3152272C1 (de) | Einrichtung zum Berechnen und Anzeigen der Werte von Belichtungsparametern fuer photographische Aufnahmen | |
DE69819248T2 (de) | Kamera mit automatischer Fokuseinstellung und TTL Blitzkontrolle | |
DE2240920A1 (de) | Fotografische kamera | |
DE3810258C2 (de) | Kamera mit Blitzlichteinrichtung | |
DE4108511A1 (de) | Automatisch verstellbares varioobjektiv | |
DE10249404A1 (de) | Kamera mit Benutzeridentifikation | |
DE4212619C2 (de) | Belichtungssteuerung für eine Kamera | |
DE3931268C2 (de) | Belichtungssteuereinrichtung für eine fotografische Kamera | |
DE4212620C2 (de) | Belichtungssteuerung für eine Kamera | |
DE3410350C2 (de) | Mikroskop | |
DE4026563C2 (de) | Steuerungseinrichtung für eine einäugige Spiegelreflexkamera | |
DE69525088T2 (de) | Elektronische Stehbildkamera | |
DE2414039B2 (de) | Fotografische Kamera | |
DE69125114T2 (de) | Kamera für Standbildaufnahmen | |
DE4212661C2 (de) | Belichtungssteuerung für eine Kamera | |
DE3504028A1 (de) | Kamera, insbesondere elektronisch gesteuerte kamera | |
DE4003976C2 (de) | Elektronisch gesteuerte Kamera |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8110 | Request for examination paragraph 44 | ||
8125 | Change of the main classification |
Ipc: G03B 19/00 |
|
8127 | New person/name/address of the applicant |
Owner name: PENTAX CORP., TOKIO/TOKYO, JP |
|
8364 | No opposition during term of opposition | ||
8327 | Change in the person/name/address of the patent owner |
Owner name: HOYA CORP., TOKIO/TOKYO, JP |
|
R082 | Change of representative |
Representative=s name: SCHAUMBURG, THOENES, THURN, LANDSKRON, ECKERT, DE |
|
R081 | Change of applicant/patentee |
Owner name: PENTAX RICOH IMAGING COMPANY, LTD., JP Free format text: FORMER OWNER: HOYA CORP., TOKYO, JP Effective date: 20120529 |
|
R082 | Change of representative |
Representative=s name: PATENTANWAELTE SCHAUMBURG, THOENES, THURN, LAN, DE Effective date: 20120529 |
|
R119 | Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee |
Effective date: 20130101 |