INTERFACE MODULE AND METHOD FOR USE IN SENDING
DIGITIZED DATA
BACKGROUND
Field of the Invention
The present invention relates to the field of transmitting and processing images. More particularly, the present invention relates to the field of digital cameras which transmit their image data to a computer through telephone or other communication lines.
Description of the Related Art
With the growth in the internet and personal computing there has been a corresponding growth in the desire to record, transmit and display images. Images relating to the weather and traffic have become popular features on web sites. Computer users can check the weather and traffic by logging on to the site and viewing an image only seconds old. The image data from a digital camera is output to a computer which processes the image data prior to transmitting the image data to the server over a modem. The server then sends this image data to a workstation or personal computer for viewing. The use of a computer to process the image data prior to transmission over a modem significantly increases the cost of the operation of such cameras. This high cost makes the personal use of a digital cameras by individuals impractical.
While the processing of image data prior to transmission over standard communications lines results in an a prohibitive cost for individuals, the output format of the image data from the digital camera is not well suited for transmission over standard communications lines. More particularly, the raw digital format of data output from the digital camera can result in causing a modem to halt operation. Such an event is unacceptable to individual users who
wish to have a reliable and inexpensive way to access their camera to receive pictures.
Accordingly, it is desired that the present invention overcome the limitations of current cameras and related transmitting and processing devices.
SUMMARY OF THE INVENTION
The present invention provides an intelligent converter interface between a camera and a modem, thereby allowing image signals from the camera to be sent by the modem over standard telephone lines to a remote server. The digital parallel output of the camera is converted to serial to output to a modem. Digital pixel data bits are converted to ASCII format for transmission over standard telephone lines by use of a modem.
BRIEF DESCRIPTION OF THE DRAWINGS
Figure 1 is a block diagram of the present invention of a module in use with a camera, modem, server and computer workstation in accordance with the present invention.
Figure 2 is a generalized schematic representation of the module in accordance with the present invention.
Figure 3 is a circuit diagram of the module in accordance with the present invention.
Figure 4 is a flow chart which depicts the steps performed in sending command and data signals between the camera and the modem in accordance with the present invention.
DETAILED DESCRIPTION OF THE INVENTION
The present invention provides a module for interfacing between a digital camera and a modem. In the following description, numerous details are set forth in order to enable a thorough understanding of the present invention. However, it will be understood by those of ordinary skill in the art that these specific details are not required in order to practice the invention. Further, well-known elements, devices, process steps and the like are not set forth in detail in order to avoid obscuring the present invention. In the following figures like objects are given the same numbers in an effort to aid the reader in understanding the features of the present invention. Figure 1 is a block diagram of the present invention (2) in use with a camera (4), a modem (6), a first public telephone line (8), a server (10), a second public telephone line (12), a modem (14), and a personal computer (16). A user wishing to view an image on their personal computer (16) accesses the server ( 10) through the modem (14) and public telephone lines (12). The server (10) calls the modem (6) through the public telephone lines (8). The modem (6) receives the call from the server (10) and passes this signal to the module (2). The module (2) controls the transfer of commands and data between server (10) and the camera (4). The camera (4) is a standard digital array camera such as a QUICK CAM™ made by CONNECTIX™. The image data relating to a picture taken by the camera (4) is sent to the server (10) via the modem (6) and public telephone lines (8) by the module (2). The image from the camera (4) is preset to 160x120 pixels. In one embodiment of the present invention output from the camera (4) is sent in one byte per pixel with the camera set to four bit color output. This output is in the set [A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P} where A is 01 OH and P is 01FH. A represents solid white and P represents solid black. The intermediary members of the set form a gray scale from almost white to almost black. The image receiving area of the camera is typically a square array of pixels. Each pixel is
capable of outputting a gray scale value depending on the intensity of light striking that pixel. The output of the camera is through a parallel port. Image data is transmitted in a straight binary format. In cameras such as the CONNECTIX QUICK CAM™ the camera can send information through the parallel port in 4 bit nibbles. The array of pixels is read in a row and column format starting at the top most row and reading from left to right. Each successive row is read from left to right proceeding from the top row of the array to the bottom row. This manner of sending the pixel information allows the image to be readily reconstructed by another computer receiving the image data. Figure 2 is a generalized schematic block diagram of the module (2) shown in Figure 1. Two connectors (20) and (22) provide command and data signal connection to the modem (6) and camera (4) shown in Figure 1. Connector (20) provides connection to the modem (6), and the connector (22) provides connection to the camera (4). Command and data signals between the modem (6) and the module (2) pass through the converter (38). The converter (38) converts signals between RS232 and TTL. The converter (38) connects to a CPU (28). Power for operation of the camera is provided by connector (24). Connector (18) receives power form an external power source (not shown). Both connector (18) and connector (24) connect to the VBUS (40) which is the power bus for the module (2) and connects to all of the components of the module. An EPROM (26) is connected to the CPU (28) and a DFLOP chip (30). A parallel input/output (PIO) chip (32) connects to the connector (22), the EPROM (26), a reset chip (34), the DFLOP chip (30) and the CPU (28). The reset chip (34) is used on power-up of the module to initialize the registers of the CPU (28) and the PIO chip (32). A capacitive crystal (36) connects to the CPU (26). The DFLOP chip (30), the reset chip (34) and the capacitive crystal (36) are connected to ground (38). Ground (39) is connected to the ground of the external power source via connector (18). The EPROM (26) contains source code used in receiving and executing instructions from both the camera and modem, in sending instructions to the camera and in the processing of image data received from the camera and sent to
the modem. The CPU (28) processes the command and data signals between the camera and the modem according to the source code instructions contained in the EPROM (26). The PIO chip (32) receives parallel signals from the connector (22) and relays them to the CPU (28). Additional details on the operation of the present invention are included in the discussion below in connection with Figure
4.
Figure 3 is a detailed circuit diagram of a preferred embodiment the module (2) shown in Figures 1 and 2. All the pin connections between the components of the module are shown in the circuit diagram. In this embodiment of the present invention an 80C31 CPU (28) is used. The CPU (28) is connected to an 11 MHz capacitive crystal (36), a 74HCT373 DFLOP chip (30), a 27C256 EPROM (26), an 82C55 parallel input/output (PIO) chip (32) and a DS1232 reset chip (34). Converter (38) is a MCI 45046 RS232 to TTL converter. The source code used with the 27C256 EPROM (26) is written in INTEL™ 8051 assembly language and assembled into an INTEL™ hex format. The connector (20) is a
DB9 connector and provides connection to the modem (6). Connector (22) is a DB25 connector and provides a control and data connection to the camera (4). An RJ45 connector (18) supplies power to the module (2) received from the external power source (not shown). The external power source supplies the module (2) with DC power as +5 Volts, -5 Volts, +12 Volts and -12 Volts. The connector
(18) also connects the module (2) to ground (39). A five pin Din connector (24) supplies power to the camera (4) as +5 Volts and connects to ground (39). The voltage point VCC is +5 Volts and is used to show connection to the power bus which provides power to all of the components of the module (2). Figure 4 is a flow chart which depicts the steps performed by the module
(2) in sending command and data signals between the camera (4) and the modem (6). A command signal from the server (10) is received by the module (2) on the DB9 connector (20). Pin (10) on the CPU (28) is interrupt driven and monitors for valid command signals received by the connector (20) from the server (10). Command signals received by the connector (20) are input to converter (38) which
converts the 12 Volt RS232 analog signal received from the server into a 0-5 Volt digital TTL signal. The command signal is then sent to the CPU (28). The CPU (28) receives this signal and, based on the source code stored within the EPROM (26), sends a reset signal to the camera (4) through the PIO chip (32) at step 102. The reset signal is sent through pins (2)-(9)of the connector (22). Pins (2)-(9) of the connector (22) connect to pins (4), (3), (2), (1), (40), (39), (38) and (37), respectively, of the PIO chip (32). The module (2) then toggles pin (15) of the PIO chip (32) to signal the camera (4) to read pins (2)-(9) of the connector (22). In this manner, the module also sends information to the camera (4) to set exposure, set contrast, set image size and set the image location on the CCD.
After the camera has been initialized the module signals the camera sends image data to the module at step 104 in response to the toggling of pin (15) of the PIO chip (32). The toggling of PIO pin (15) is the change in state of the voltage on pin (15), from high to low or low to high. The camera notices the change in state on pin (15) and reads this change as an instruction to send four bits of image data on pins (11)-(13) of connector (22). Pins (11)-(13) of connector (22) connect to pins (21), (20), (19 and (18), respectively, of PIO chip (32). After the new data is sent by the camera (4) and after the toggling of pin (15) of the PIO chip, the camera raises the voltage on pin (15) of connector (22). Pin (15) of the connector (22) connects to pin (12) of the PIO chip (32). This is done to signal that the current values on pins (18), (19), (20) and (21) of PIO chip (32) represent new data, even if their actual values may be the same as the previous set of data. The PIO chip (32) reads these data bits at step 106 and sends these data bits to the CPU (28). The CPU (28) converts these data bits to ASCII characters at step 108 by adding ten hex to each data bit. After the conversion to ASCII characters, the data bits are then stored in RAM memory of the CPU (28).
After the conversion and storage of the data bits, the CPU (28) then causes the toggling of pin (15) of the PIO Chip (32), which causes the camera to send four more data bits to the module. As with the previous four data bits, they are received by the PIO chip (32) on pins ( 18), ( 19), (20) and (21 ) and converted by
the CPU (28) to ASCII characters before storage in the RAM memory of the CPU (28). This procedure of toggling pin (15) of PIO chip (32), collecting the data bits, conversion of the data bits to ASCII characters, and storage of the converted data bits in RAM memory of the CPU (28) continues until the 60 bytes RAM memory is unable to accept another four data bits. After each group of converted data bits is stored in memory the CPU checks whether there is sufficient memory to store four more additional converted data bits in RAM memory at step 112. If the memory cannot accept four additional converted data bits, a signal is generated to cause the module at step 114 to send the data bits to the modem. If there is sufficient memory to store an additional four converted data bits, then step
112 returns to step 104 to toggle pin (15) of connector (22), thereby signaling the camera (4) to send an additional for bits of image data, as described above.
Once RAM memory of the CPU (28) is unable to accept another four data bits, the CPU (28) then has the data bits stored as ASCII characters sent from RAM memory to the modem (6) via the TXD pin ( 11 ) of the CPU (28) which connects to the DB9 connector (20). Before reaching the DB9 connector (20), these signals are converted to RS232 by the converter (38).
In this manner the present invention is able to provide a low cost method of converting the image data from the camera in its raw binary form and convert it to an ASCII format suitable for transmission over standard communications lines using a modem. The present invention allows the processing of the data to be accomplished at the server, or other receiving computer. This has the benefit of reducing the cost operation of such a digital camera to the point where it is feasible than an individual can install and run such a camera, with the module and a modem, for their own personal needs. This expands the functionality of the camera to allow the user to monitor personal property from anywhere in the world by simply logging on to a public web site, entering a code, and within a matter of minutes access and view an image of their property. Additional uses will be found as users install the camera with the module and modem to take pictures for their own personal needs.
While the above embodiments had a module which was separate from both the camera and the modem, alternate embodiments of the present invention could integrate the module into either the camera, the modem, or both.
While the above embodiments are shown in connection with a server, the present invention is equally applicable to sending data to other types of computers.
While the above embodiments sent information to standard communications lines, the present invention is also applicable to RF transmission of data as is done with a cell phone or other method of RF communication. Although the invention has been described in conjunction with particular embodiments, it will be appreciated that various modifications and alterations may be made by those skilled in the art without departing from the spirit and scope of the invention. In particular, those skilled in the art will recognize that the present invention is not limited to communication over standard telephone lines but is also applicable to other communications devices.