The invention relates to sound generators typically used in computing devices. In particular, the invention relates to a software pre-filter for a sound generating circuit, the pre-filter being a software pre-filter. Further, the invention relates to a compact sound generator circuit using a software pre-filter for a personal digital assistant. Yet further still, the invention relates to a method of improving the sound quality of a simple sound generator.
Hand held computing devices, “palmtops”, or “palmhelds”, personal digital assistants (PDAs), or hand held computers typically weight less than a pound and fit in a pocket. These palmhelds generally provide some combination of personal information management, database functions, word processing, and spreadsheets. Because of the small size and portability of palmhelds, strict adherence to hardware constraints, such as sound generation hardware, must be maintained. It is conventional to use a sound generator in a palmheld device which is configured to operate ideally at a particular single frequency, rather than across a broad audio frequency range. When the sound generator is used across the audio frequency range, it provides “poor sound quality” with a widely varying sound pressure level over the audio frequency range for the same user setting.
Other conventional implementations of sound generation circuits include a dynamic speaker that is designed to operate across an audio frequency range having a substantially flat frequency response across the range. Such dynamic speakers are physically larger and cost many times more than sound generators. Further, the dynamic speaker drive circuit is also more complicated and expensive to implement than simple sound generators.
Accordingly, there is a need for a compact sound generator circuit that utilizes a software pre-filter to improve sound quality over an audible frequency range. Further, there is a need for a method of pre-filtering sound generator circuit signals in order to provide improved sound quality using a compact sound generator circuit.
The teachings herein below extend to those embodiments which fall within the scope of the appended claims, regardless of whether they accomplish one or more of the above mentioned needs.
An exemplary embodiment relates to an apparatus configured to improve sound quality for a sound generator. The apparatus includes a processing device and a memory coupled to the processing device. The apparatus also includes a sound generator coupled to the processing device. The apparatus also includes a program residing in memory and configured to be run on the processing device. The program is configured to vary the output amplitude of the sound generator depending on the sound generator frequency.
Another exemplary embodiment relates to a sound generator circuit. The sound generator circuit includes a processor and a memory coupled to the processor. The sound generator circuit also includes a modulator circuit coupled to the processor. The sound generator circuit further includes a transistor coupled to the modulator circuit. Further still, the sound generator circuit includes a sound generator coupled to the transistor. Yet further still, the sound generator circuit includes a program residing in memory and configured to be run on the processor. The program is configured to vary the output amplitude of the sound generator depending on the sound generator frequency.
Further, an exemplary embodiment relates to a method of improving sound quality for a sound generator. The method includes providing a signal indicative of a sound frequency to be generated. The method also includes accessing a lookup table according to the sound frequency to be generated to obtain volume adjusted information. The method further includes providing the current volume setting and adjusting the volume based on the volume adjustment information.
Further still, an exemplary embodiment relates to a method of improving sound quality for a sound generator. The method includes providing a signal indicative of a sound frequency to be generated. The method also includes calculating volume adjustment information according to the sound frequency to be generated. Further, the method includes providing the current volume setting. Further still, the method includes adjusting the volume based on the volume adjustment information.
The invention will become more fully understood from the following detailed description, taken in conjunction with the accompanying drawings, wherein like reference numerals refer to like elements, in which:
Referring to
Preferably, hand held computer 100 includes interactive hardware and software that performs functions such as maintaining calendars, phone lists, task lists, notepads, calculation applications, spreadsheets, games, and other applications capable of running on a computing device. Hand held computer 100, shown in
Accessory device 110 may be one of several types of accessories, such as, but not limited to, a modem device for serial and/or wireless data communications, a Universal Serial Bus (USB) device, or a communication cradle having an extended housing. Accessory device 110 may include one or more ports for parallel and/or serial data transfer with other computers or data networks. Hand held computer 100 may use the accessory device 110 for the purpose of downloading and uploading software and for synchronizing data on hand held computer 100 with a personal computer, for example. Accessory device 110 couples to hand held computer 100 through an electrical connector located at a bottom portion of its front face. Button 155 on accessory 110 may effectuate an electrical connection between accessory device 110 and hand held computer 100 when the two are connected.
Referring to
Referring now to
Referring now to
Without the improvement described herein, the volume for a hand held computer is set to a particular level by the user ranging, for example, from 1 to 7. Different tones are played in sequence by buzzer 310 at the fixed volume setting for different durations to create the hand held sounds or tunes. Because each tone has a different sound pressure level (or amplitude) with some widely varying, an inconsistent sound level is produced. For example, as depicted in graph 400, a 1.6 kilohertz tone has a sound pressure level of around 81 decibels while a 2.7 kilohertz tone has a sound pressure level of around 96 decibels. This variation of sound pressure level over frequency degrades the sound quality by misrepresenting the tone being played. The use of a software pre-filter may be configured to change the volume at particular frequencies to provide a flatter frequency response curve. An exemplary implementation of the software pre-filter uses a look-up table of frequencies versus adjustment amount of volume to reduce. An exemplary look-up table for a hand held computer using the CHB-03F Citisound sound generator is shown below.
In an exemplary embodiment, the table above is calibrated for a volume setting of 7. Because the volume can be changed by a user, the adjustment amount must also change by the same ratio. Accordingly, the equation to scale the adjustment amount over volume is provided in the program code below;
Once adjusted volume has been calculated in equation 2, the use of the adjustedVolume gives a flatter frequency response. In an exemplary embodiment the frequency response may not be completely flat due to quantization error in the table and because of the limited volume steps, for example, 1–7, that are being used. However, improvement over the use of an unfiltered sound generator is affected. It should be noted that the quantization of the table and the number of volume steps may differ depending on the hardware configurations and software configurations used and the flatness of the frequency response desired. Use of the software pre-filter described above provides an audible improvement in sound for alarms, games, etc. in hand held computing devices and other devices using sound generators, such as buzzers 310 while not requiring complex or costly hardware improvements.
Referring now to
While the detailed drawings, specific examples and particular formulations given describe exemplary embodiments, they serve the purpose of illustration only. The hardware and software configurations shown and described may differ depending on the chosen performance characteristics and physical characteristics of the computing devices. For example, the type of computing device, communications bus, or processor used may differ. The systems shown and described are not limited to the precise details and conditions disclosed. Furthermore, other substitutions, modifications, changes, and omissions may be made in the design, operating conditions, and arrangement of the exemplary embodiments without departing from the scope of the invention as expressed in the appended claims.
Number | Name | Date | Kind |
---|---|---|---|
4118601 | Yeap | Oct 1978 | A |
4283600 | Cohen | Aug 1981 | A |
4314236 | Mayer et al. | Feb 1982 | A |
4618985 | Pfeiffer | Oct 1986 | A |
5095798 | Okada et al. | Mar 1992 | A |
5459790 | Scofield et al. | Oct 1995 | A |
5635903 | Koike et al. | Jun 1997 | A |
5781636 | Tai | Jul 1998 | A |
5872852 | Dougherty | Feb 1999 | A |
5890115 | Cole | Mar 1999 | A |
5974101 | Nago | Oct 1999 | A |
6011473 | Klein | Jan 2000 | A |
6202109 | Salo et al. | Mar 2001 | B1 |
6311982 | Lebensfeld et al. | Nov 2001 | B1 |
6532005 | Campbell | Mar 2003 | B1 |
6725109 | Hile et al. | Apr 2004 | B1 |
6778672 | Breed et al. | Aug 2004 | B1 |
6801629 | Brimhall et al. | Oct 2004 | B1 |
Number | Date | Country | |
---|---|---|---|
20020173963 A1 | Nov 2002 | US |