Claims
- 1. A trainable transmitter comprising:
- a receiver for receiving a data encoded signal transmitted from an original transmitter;
- a memory device;
- a control circuit coupled to said receiver and said memory device for storing the data encoded signal in said memory device by performing the steps of:
- (a) sampling the received data encoded signal at a first sampling rate,
- (b) counting the number of consecutive samples of the data encoded signal that are at a first logic level,
- (c) storing the number of samples counted in step (b) in a first portion of a memory template in said memory device,
- (d) counting the number of consecutive samples of the data encoded signal that are at a second logic level,
- (e) comparing the number of samples counted in step (d) to a threshold value,
- (f) changing the sampling rate at which the data encoded signal is sampled and counting the number of consecutive samples at the second logic level if the number of samples counted in step (d) exceeds the threshold value, and
- (g) storing in a second portion of the memory template, the number of samples counted in step (d) if the threshold was not exceeded, or the number of samples counted in step (f) if the threshold value was exceeded; and
- a transmitter coupled to said control circuit for receiving and transmitting the data encoded signal as said control circuit reads the signal from said memory device, wherein said memory device includes a plurality of uniquely defined templates that are defined by the stored numbers of counted samples, each of said plurality of uniquely defined templates having a unique template identification number associated therewith, said memory device further includes a template sequence portion in which unique template identification numbers are stored in the sequence in which the samples defining such templates appear in said data encoded signal.
- 2. The trainable transmitter as defined in claim 1, wherein said receiver is an RF receiver and said data encoded signal is an RF signal.
- 3. The trainable transmitter as defined in claim 1, wherein said control circuit is further adapted to (h) store in said memory device, a unique template identification number associated with the memory template into which the numbers of samples stored in steps (c) and (g) have been stored.
- 4. The trainable transmitter as defined in claim 1, wherein said control circuit is further adapted to repeat steps (a)-(g) and determine whether the stored numbers of samples correspond to the stored numbers of samples of a previously defined template, and, if there is no correspondence, storing a unique template identification number for the newly defined template in the template sequence portion of said memory device, and, if there is a correspondence to a previously defined template, storing the unique template identification number of the corresponding template in the template sequence portion of said memory device.
- 5. The trainable transmitter as defined in claim 4, wherein said control circuit reads the data encoded signal from said memory device by performing the steps of:
- (i) reading from the template sequence portion of said memory, a first template identification number;
- (ii) reading from said memory device, the numbers of samples at the first and second logic levels as stored in the template identified by the read template identification number;
- (iii) generating a data encoded signal having a first logic level maintained for a time period equal to the number of samples stored in the template for the first logic level divided by the sampling rate at which the number of samples were obtained;
- (iv) generating a data encoded signal having a second logic level maintained for a time period equal to the number of samples stored in the template for the second logic level divided by the sampling rate at which the number of samples were obtained;
- (v) reading from the template sequence portion of said memory device, the next of the sequentially stored template identification numbers; and
- (vi) repeating steps (ii) through (v) until all template identification numbers stored in the template sequence portion of said memory portion have been read.
- 6. The trainable transmitter as defined in claim 1 and further including a plurality of user-actuatable switches coupled to said control circuit, wherein said memory device is partitioned into a corresponding plurality of channel segments each including a template definition portion and a template sequence portion, said control circuit reads or writes data to/from one of said channel segments of said memory device when a corresponding user-actuatable switch has been actuated.
- 7. The trainable transmitter as defined in claim 6, wherein, when a user-actuatable switch has been actuated for at least a predetermined time period, said control circuit stores a data encoded signal in a corresponding one of said channel segments of said memory device, and, when a user-actuatable switch has been actuated for less than the predetermined time period, said control circuit generates a data encoded signal by reading data stored in the corresponding one of said channel segments.
- 8. The trainable transmitter as defined in claim 7, wherein said receiver is an RF receiver, said data encoded signal is an RF signal, and said control circuit identifies an RF carrier frequency of the received RF signal and stores data in said memory device that represents the identified RF carrier frequency.
- 9. The trainable transmitter as defined in claim 1, wherein said data encoded signal is a binary signal.
- 10. A method of storing a binary data signal comprising the steps of:
- (a) receiving a binary data signal;
- (b) sampling the received binary data signal at a first sampling rate;
- (c) counting the number of consecutive samples of the binary data signal that are at a first logic level;
- (d) storing the number of samples counted in step (c) in a first portion of a memory template;
- (e) counting the number of consecutive samples of the binary data signal that are at a second logic level;
- (f) comparing the number of samples counted in step (e) to a threshold value;
- (g) changing the sampling rate at which the received binary data signal is sampled and counting the number of consecutive samples at the second logic level if the number of samples counted in step (e) exceeds the threshold value;
- (h) storing in the memory template, the number of samples counted in step (e) if the threshold was not exceeded, or the number of samples counted in step (g) if the threshold value was exceeded; and
- (i) storing a unique template identification number associated with the memory template into which the numbers of samples stored in steps (d) and (h) have been stored.
- 11. The method as defined in claim 10 and further including the step of (j) repeating steps (b)-(i) and determining whether the stored numbers of samples correspond to the stored numbers of samples of a previously defined template, and, if there is no correspondence, sequentially storing a unique template identification number for the newly defined template, and, if there is a correspondence to a previously defined template, sequentially storing the unique template identification number of the corresponding template.
- 12. An apparatus including a memory device and a processor adapted to:
- (a) receive a binary data signal;
- (b) sample the received binary data signal at a first sampling rate;
- (c) count the number of consecutive samples of the binary data signal that are at a first logic level;
- (d) store the number of samples counted in step (c) in a first portion of a memory template of said memory device;
- (e) count the number of consecutive samples of the binary data signal that are at a second logic level;
- (f) compare the number of samples counted in step (e) to a threshold value;
- (g) change the sampling rate at which the received binary data signal is sampled and counting the number of consecutive samples at the second logic level if the number of samples counted in step (e) exceeds the threshold value;
- (h) store in the memory template, the number of samples counted in step (e) if the threshold was not exceeded, or the number of samples counted in step (g) if the threshold value was exceeded; and
- (i) store a unique template identification number associated with the memory template into which the numbers of samples stored in steps (d) and (h) have been stored.
- 13. The apparatus as defined in claim 12, wherein said processor is further adapted to repeat steps (b)-(i) and determine whether the stored numbers of samples correspond to the stored numbers of samples of a previously defined template, and, if there is no correspondence, sequentially storing a unique template identification number for the newly defined template, and, if there is a correspondence to a previously defined template, sequentially storing the unique template identification number of the corresponding template.
- 14. A trainable transmitter comprising:
- a receiver for receiving a data encoded signal transmitted from an original transmitter;
- a memory device;
- a control circuit coupled to said receiver and said memory device for storing the data encoded signal in said memory device by performing the steps of:
- (a) sampling the received data encoded signal at a first sampling rate,
- (b) counting the number of consecutive samples of the data encoded signal that are at a first logic level,
- (c) storing the number of samples counted in step (b) in a first portion of a memory template in said memory device,
- (d) counting the number of consecutive samples of the data encoded signal that are at a second logic level,
- (e) comparing the number of samples counted in step (d) to a threshold value,
- (f) changing the sampling rate at which the data encoded signal is sampled and counting the number of consecutive samples at the second logic level if the number of samples counted in step (d) exceeds the threshold value, and
- (g) storing in a second portion of the memory template, the number of samples counted in step (d) if the threshold was not exceeded, or the number of samples counted in step (f) if the threshold value was exceeded;
- a transmitter coupled to said control circuit for receiving and transmitting the data encoded signal as said control circuit reads the signal from said memory device; and
- a plurality of user-actuatable switches coupled to said control circuit, wherein said memory device is partitioned into a corresponding plurality of channel segments each including a template definition portion and a template sequence portion, said control circuit reads or writes data to/from one of said channel segments of said memory device when a corresponding user-actuatable switch has been actuated.
- 15. The trainable transmitter as defined in claim 14, wherein, when a user-actuatable switch has been actuated for at least a predetermined time period, said control circuit stores a data encoded signal in a corresponding one of said channel segments of said memory device, and, when a user-actuatable switch has been actuated for less than the predetermined time period, said control circuit generates a data encoded signal by reading data stored in the corresponding one of said channel segments.
- 16. The trainable transmitter as defined in claim 15, wherein said receiver is an RF receiver, said data encoded signal is an RF signal, and said control circuit identifies an RF carrier frequency of the received RF signal and stores data in said memory device that represents the identified RF carrier frequency.
- 17. The trainable transmitter as defined in claim 14, wherein said data encoded signal is a binary signal.
- 18. A method of storing a data encoded signal, the method comprising:
- (a) receiving a data encoded signal;
- (b) sampling the received data encoded signal at a first sampling rate;
- (c) counting the number of consecutive samples of the data encoded signal that are at a first logic level;
- (d) storing the number of samples counted in step (c) in a first portion of a memory template;
- (e) counting the number of consecutive samples of the data encoded signal that are at a second logic level;
- (f) storing in the memory template, the number of samples counted in step (e); and
- (g) storing a unique template identification number associated with the memory template into which the numbers of samples stored in steps (d) and (f) have been stored.
- 19. The method as defined in claim 18 wherein receiving the data encoded signal includes receiving a binary data signal.
- 20. The method as defined in claim 18 wherein receiving the data encoded signal includes receiving a RF data signal.
- 21. The method as defined in claim 18 and further including the step of (h) repeating steps (b)-(f) and determining whether the stored numbers of samples correspond to the stored numbers of samples of a previously defined template, and, if there is no correspondence, sequentially storing a unique template identification number for the newly defined template, and, if there is a correspondence to a previously defined template, sequentially storing the unique template identification number of the corresponding template.
CROSS-REFERENCE TO RELATED APPLICATIONS
This application claims priority under 35 U.S.C. .sctn.119(e) on U.S. Provisional Application No. 60/065,517 entitled "Method and Apparatus for Storing Data Encoded Signal" filed on Nov. 12, 1997, by Kurt A. Dykema.
US Referenced Citations (17)
Foreign Referenced Citations (2)
Number |
Date |
Country |
1261150 |
Dec 1993 |
ITX |
9402920 |
Feb 1994 |
WOX |