VOICE RECOGNITION SYSTEM BASED ON AUDIO FINGERPRINTING. Mantej Singh Sahota B.E., Punjab Technical University, India, 2007 PROJECT

Size: px
Start display at page:

Download "VOICE RECOGNITION SYSTEM BASED ON AUDIO FINGERPRINTING. Mantej Singh Sahota B.E., Punjab Technical University, India, 2007 PROJECT"

Transcription

1 VOICE RECOGNITION SYSTEM BASED ON AUDIO FINGERPRINTING Mantej Singh Sahota B.E., Punjab Technical University, India, 2007 PROJECT Submitted in partial satisfaction of the requirements for the degree of MASTER OF SCIENCE in ELECTRICAL AND ELECTRONICS ENGINEERING at CALIFORNIA STATE UNIVERSITY SACRAMENTO Fall 2010

2 VOICE RECOGNITION SYSTEM BASED ON AUDIO FINGERPRINTING A Project by Mantej Singh Sahota Approved by:, Committee Chair Jing Pang, Ph.D., Second Reader Preetham Kumar, Ph.D. Date ii

3 Student: Mantej Singh Sahota I certify that this student has met the requirements for format contained in the University format manual, and that this project is suitable for shelving in the Library and credit is to be awarded for the Project., Graduate Coordinator Preetham Kumar, Ph.D. Date Department of Electrical and Electronics Engineering iii

4 Abstract of VOICE RECOGNITON SYSTEM BASED ON AUDIO FINGERPRINTING by Mantej Singh Sahota Voice recognition is the ability of a machine or a program to receive and interpret dictation, or to understand the spoken words. In the recent years, an interest has been received by systems for audio fingerprinting based voice recognition systems which enable automatic content-based identification by extracting the audio signatures from the signal and matching them to the fingerprint of the word to be recognized. This project discusses the implementation of a hardware based, real-time voice recognition system which is capable of storing the fingerprints and later recognizing them for the three words of the user s choice. This is achieved by implementing band pass filters in the assembly language with fixed-point arithmetic onto to AT Mega32 microcontroller. The outputs of the filters are squared and accumulated. This approach helps in saving a lot of time for the speech sample to be processed for the frequency spectrum before the next samples comes in. The analysis of the voice is made by calculating the Euclidean distance between the saved and the current fingerprints of the words. This technique provides high success rate in recognizing the word. The algorithm for the voice recognition system is written in assembly and C programming language. iv

5 The successful demonstration of the voice recognition system was presented on AT Mega kit with AT Mega32 microcontroller., Committee Chair Jing Pang, Ph.D. Date v

6 ACKNOWLEDGEMENT Special thanks to Dr. Jing Pang for guiding me throughout my project and encouraging me to implement new ideas. I would also like to thank Dr. Preetham Kumar, graduate coordinator of Electrical and Electronics Engineering department at California State University for proof reading my desertion and providing me with best lab facilities and latest equipment for testing. vi

7 TABLE OF CONTENTS Page Acknowledgement..vi List of Tables...x List of Figures.xi Chapter 1. INTRODUCTION Introduction to Voice Recognition Purpose of the Project Significance of the Project Report Organization BASICS OF VOICE RECOGNITION AND AUDIO FINGERPRINTING Voice Recognition Methods of voice recognition Template Matching Approach Feature Analysis Approach Concept of Audio Fingerprinting Properties of Audio Fingerprint Based Voice Recognition System ATMEL MEGA32 OVERVIEW AT Mega32 ADC EEPROM Data Memory vii

8 3.2.1 EEPROM Read/Write Access Registers EEPROM Usage in Voice Recognition System USART Timer/Counter Registers PROJECT DETAILS Overview Design Implementation Details Microphone High Pass Filter Amplifier Stage ATMEL Mega and AT Mega 32 Processor LED Circuitry Design Strategy Filter Design Fingerprint Generation Fingerprint Calculation Initial Threshold Calculation Software Flow SIMULATIONS AND DESIGN IMPLEMENTATION ANALYSIS Speech Frequency Analysis Filter Design and Fingerprint Generation Analysis. 34 viii

9 5.2.1 MATLAB Filter Design and Fingerprint Generation Actual Filter Design and Fingerprint Generation Fingerprint Comparison Analysis CONCLUSION. 41 Appendix Source Code References..51 ix

10 LIST OF TABLES 1. Table 3.1: USBR Setting for Commonly Used Frequencies Table 5.1: Band Pass Filter Hz First 2 nd Order Coefficients Table 5.2: Band Pass Filter Hz Second 2 nd Order Coefficients.. 38 x

11 LIST OF FIGURES 1. Figure 2.1: Voice Recognition Based on Template Matching Figure 2.2 Feature Extraction Model for Voice Recognition Figure 2.3: Clips and Frames used in Feature Analysis Figure 2.2: Spectrogram of a Word one Figure 3.1: AT Mega32 Block Diagram Figure 3.2: ADC Auto Trigger Logic Figure 4.1: Voice Recognition System Block Diagram Figure4.2: Microphone with Amplification Circuitry Figure 4.3: Schematic of Microphone Amplification Circuit Figure 4.4: ATMEL Mega32 Developer s Kit Figure 4.5: LED Circuitry Figure 4.6: Schematic of AT Mega32 Connected with LED and Microphone Circuitry Figure 4.7: Software Flow for Voice Recognition System Figure 5.1: Signal Variation of Hello Figure 5.2: Signal Variation of One Figure 5.3: Fingerprint Accumulation after Every 250 Samples for a Word Figure 5.4: Fingerprints of Words Back and History Figure 5.5: Fingerprints of the Word Hello at Different Intervals of Time Figure 6.1 Hyper Terminal Screen Shot.42 xi

12 1 Chapter 1 INTRODUCTION 1.1 Introduction to Voice Recognition The term voice recognition is used to refer to a recognition system that can be trained to a particular speaker as is the case for most desktop recognition software. The voice recognition is performed on the basis of frequency content in a voice. In order to achieve the frequency contents, several samples of the same sound are averaged during the training phase. These averaged samples are referred to as the fingerprints. The frequency content of a sound can be compared to the averaged stored fingerprints by treating them as vectors and calculating the difference between them. If the distance is close enough to the reference fingerprint then it is considered to be a match [1]. 1.2 Purpose of the Project The purpose of the project is to implement a voice recognition algorithm on AT Mega32 microcontroller in an efficient manner. The system should be capable of storing the fingerprints of three words of user s choice in the EEPROM of AT Mega32 microcontroller as a dictionary and then later using the stored fingerprints to recognize the spoken word by implementing the template matching (fingerprint matching) algorithm. The fingerprint matching is achieved by calculating the Euclidean distance between the fingerprints of the dictionary word and the spoken word. The minimum distance with the relative word in the dictionary is recognized as the spoken word. The process comprises of three steps. The steps are initial threshold (noise) calculation, filter

13 2 implementation, fingerprint generation, storing the fingerprint and lastly fingerprint comparison. 1.3 Significance of the Project The project helps in understanding the implementation of the voice recognition algorithm on a hardware platform. From the hardware prospective, the project gives an introduction to the AT Mega16 programmer kit and AT Mega32 microprocessor implementation of real-time voice recognition system. The project gives a basic idea of implementing an optimized filter design in assembly language. The project can be elaborated in future and used in various applications like voice based security systems, voice based car navigation systems and in various other applications. Algorithms for audio fingerprint generation, filter implementation and template matching using Euclidean distance were tested in code vision AVR complier and AT Mega32 microcontroller effectively, and were written in assembly and advanced C programming. All the results were also simulated in MATLAB. 1.4 Report Organization Chapter two describes the basics of voice recognition and audio fingerprinting technology. It gives an overview of the methods for voice recognition. The methods include template matching and feature extraction. Chapter three gives an overview of AT Mega 32 microprocessor used for voice recognition. Chapter four gives the details of the implementation of the project both from hardware and software prospective.

14 3 Chapter five presents the implementation and the MATLAB simulations analysis for the audio fingerprint generation and fingerprint matching algorithm, using Euclidean distance. Chapter six provides the conclusions of the project, challenges, limitations of the project and the future work associated with it. The references are provided in Bibliography section. The program for simulation and hardware implementation are provided in Attachment section.

15 4 Chapter 2 BASICS OF VOICE RECOGNITION AND AUDIO FINGERPRINTING 2.1 Voice Recognition Voice Recognition is the technology by which the human voice is converted in to the electrical signals. These electrical signals are converted into the coding patterns which already have predefined meaning assigned to it. The meaning is nothing but the database of the fingerprints (frequency samples) of the words already stored in the memory of the voice recognition system. The voice recognition is also known by another name called speech recognition. For voice recognition most of the focus is on the human voice. The reason is that humans most naturally use their voice for most part of the communication [2]. The computer systems which are capable of voice recognition are designed with such precision that they produce a specific type of response on receiving a voice signal. As we know that even the fingerprint of the same word spoken by a same person at different instance of time is never the same. Also, each human voice is different and even the same words can have different meaning if they are spoken in different context. To overcome this, over the years several approaches have been implemented with different degrees of success [1]. 2.2 Methods of Voice Recognition There are various approaches for the voice recognition but most commonly it is divided into two categories: template matching and feature analysis. The most accurate and simple approach out of these two is template matching, if implemented

16 5 correctly. It also has some limitations though. In the template matching approach the first step for the user to speak a word or a phrase into a microphone Template Matching Approach The electrical signals from a microphone are analog so these are converted into the digital signal with the help of analog to digital converter. This digitized output is stored in the memory. Now, to determine the meaning of this input voice, the computer attempts to match it with a sample or a template that has some kind of a knowing meaning. This is just like input commands that are sent by the keyboard. The voice recognition system already has a stored template and it just attempts to match the current template to the stored one. The template is usually also known a fingerprint (frequency sample). It is a fact that no two humans can have the same voice. This is also true that a voice recognition system cannot contain a template for each potential user [1]. This means that the system needs to be trained with new user s voice input before that user can use the system for voice detection purpose. During the training session, a user has to speak a word several times into the microphone. Each time the user speaks the word the program in the voice recognition system displays that word on to the screen. Once the user feels comfortable with the system and words spoken by him/her are displayed correctly then the training session ends. There is one limitation with this approach and that is the system is limited to the vocabulary. This type of a system is called speaker dependent. The system with good amount of memory can have hundreds of words and

17 6 even short phrases and the recognition accuracy is almost 98 percent [2]. Figure 2.1 shows the template matching process. Figure2.1: Voice Recognition Based on Template Matching Feature Analysis Approach Another form of voice recognition systems is available which are based on the feature extraction approach. These systems are usually speaker independent. Instead of finding an exact or a near match to the actual voice template and the stored template, this method first processes the voice using the Fast Fourier Transforms or the Linear Predictive Coding. In the next step the system tries to find the similarities between the expected inputs and the actual digital voice inputs. Now, with this approach the system will find the similarities that are present for good range of speakers and thus the system need not to be trained by the user before using it for voice detection purpose [2]. Figure 2.2 shows a feature extraction model for voice recognition. There are many ways of characterizing an audio signal. Mostly, the audio signals are categorized into two domains: time-domain and frequency-domain features. This can be explained by taking an example in which an audio sample at 22 KHz is divided into

18 7 Figure 2.2 Feature Extraction Model for Voice Recognition clips of one second long. Feature analysis is done on each clip by calculating a feature vector for each clip. These features are calculated on the basis of frame level features. The frame level features are computed by overlapping short intervals known as frames. Each frame contains 512 samples which are shifted by 128 samples from the previous frame. Figure 2.3 shows the relationship between the clips and the frames. Figure 2.3: Clips and Frames used in Feature Analysis The differences between the template matching and the feature extraction technique are that the feature extraction technique can recognize a speech that is spoken in different accents and varying speeds of speech delivery, pitch and volume. The

19 8 template matching technique is completely lags these features. The implementation of the speaker independent systems is a difficult task with some of the greatest hurdles like different accents and inflections used by the speakers around the world with different nationalities. This is the reason that the accuracy of the speech independent system drops to 90 percent as compared to speech dependent voice recognitions system with 98 percent accuracy. There is another way of differentiating the voice recognition systems by determining the kind of speech they can recognize. The speech can be different words, connected words and it can also be continuous. The simplest system out of these systems to implement is different word systems. For this the user has to take breaks in between the words to be recognized. This gives enough time to the system to process the spoken word. On the contrary the continuous speech systems are the most difficult to implement. The reason for that is that continuous speech involves the words running into each other without any significant pauses. This gives very little time to the system to process the spoken words. 2.3 Concept of Audio Fingerprinting An audio fingerprint is nothing but the samples of frequencies of speech or voice, which summarizes the whole recoding. In the recent years, the audio fingerprinting technology has evolved and has gained a lot, as it allows recognizing the audio irrespective of its format. The audio fingerprinting technology is known by different names like pattern matching, multimedia information retrieval system and cryptography [3].

20 9 Audio fingerprinting works on a principle of extracting audio frequency samples (fingerprints) from an audio stream and comparing these samples with the database of pre stored samples and hence leading to voice detection. This process is not as simple as it seems to be. The biggest challenge in this case is giving the correct result of pattern matching. The reason is that it the fingerprints of many words are closely matched so it becomes a challenging for the system to detect the correct match. It just gives the result on a perfect match bases which may be wrong. An approach that one can think of to get the appropriate result is by matching the whole speech but that is not an effective and efficient method [3]. The other efficient approach could be cyclic redundancy check but this way includes the compression of the binary formats and one flip of a bit here and there can give completely absurd results. The human speech can be analyzed by looking at different intensity frequencies in the voice with respect to time. Figure 2.1 shows the spectrogram of a word one. The x axis represents time and the y axis represents frequency and the black spots shows the intensity of the word. If the spectrum is observed closely then one can see that the intensity of the word one lies in between time 0.6 and 0.9 seconds. The red area in the spectrogram represents high energy levels and the lower energy levels are represented by shades of yellow and orange.

21 10 Figure 2.2: Spectrogram of a word one. 2.4 Properties of Audio Fingerprint Based Voice Recognition System The audio fingerprint based voice recognition system should have the following properties [3, 4]: Robustness The fingerprint obtained from a noisy version of audio should be similar to that of the original audio. This requires the system to be really fast and precise. Pair wise independence The audio fingerprints of a word spoken by the same speaker at different instances of time should be same. However, this is not the case. Every time a person speaks the same word at different instances of time, the intensity is different each time and hence the fingerprints are not the same. Quick database search A voice recognition system designed for a practical application then it should be able to search a database quickly which is having a large number of fingerprints. Versatility The voice recognition system should have an ability to extract and detect the audio irrespective of the audio format.

22 11 Reliability Methods used by the voice recognition system to access a query is also important as it may lead to copyright violations in case of song recognition. Fragility The voice recognition system may be used for applications in which the recognition of the content integrity of the audio is important. The voice recognition system should be capable to detect the changes in the audio as compared to the original one.

23 12 Chapter 3 ATMEL MEGA32 OVERVIEW AT Mega 32 is a general purpose low power CMOS 8-bit microcontroller. It is based on AVR RISC architecture. The key features of this microcontrollers includes up to 16 MIPS throughput at 16 MHz, 32 Kbytes of flash program memory, 2 Kbyte of internal SRAM, Kbyte of EEPROM, two 8 bit times, 8 channel 10 bit A/D converter, USART interface, JTAG interface etc. Figure 3.1 shows the block diagram of AT Mega32 [5]. 3.1 AT Mega32 ADC The Analog to Digital Converter in AT Mega32 is based on 10 bit successive approximation. The ADC is connected to an 8 channel multiplexer. This arrangement allows 8 single ended voltage inputs that are constructed from the pins of port A. The ADC converts the analog input to 10 bit digital output through successive approximation. The analog inputs and the differential gain values can be selected to writing particular bits to the ADMUX register [5]. The ADMUX register is an 8 bit register. The ADC is enabled by selecting ADC bit named ADEN in ADCSRA register. If it is set one then the ADC is enabled otherwise it is disabled. The 10 bit ADC result is presented by the ADC data registers. The name of these registers is ADCH and ADCL. If the ADC is used in the left adjust result mode and not more than 8 bit precision is required, then it is sufficient to read ADCH register only.

24 13

25 14 Figure3.1: AT Mega32 Block Diagram A single conversion is started in ADC by writing logic 1 to bit ADC Start Conversion Bit. The bit stays high as long as the conversion is completed. In between the conversion, if the data channel is changed, ADC finishes the current conversion before making a move to the next one. The conversion can also be started automatically. The automatic mode is initiated by setting an ADC Auto Trigger Enable bit. The source that provides the trigger can also be selected by setting the ADC trigger select bits. If the trigger bit is set even when the conversion has been completed, the new conversion does not start. In this situation, an interrupt is generated which is needed to be cleared before the new conversion attempt is made again. Figure shows the ADC auto trigger logic. If the auto trigger mode is enabled, the single conversion can be started by writing ADSC in ADCSRA to one. The ADSC is also used to determine the progress of the conversion. Figure3.2: ADC Auto Trigger Logic An analog input source that is applied to ADC (0-7) has pin capacitance as well as input leakage of that pin particular pin. This happens even when the pin is not selected

26 15 for input. The analog to digital converter is optimized for analog signals like microphone output with an output impedance of approximately 10 KΩ. If a source matching to this configuration is used then the sampling time is negligible. If a source with higher impedance is used then the sampling time depends on the time taken by the capacitor associated with ADC to charge. For the purpose of this project, the ADC is used to convert the analog output of the microphone to the digital value. The value of the register ADMUX used was Bits 7 and 6 were zero which means that internal Vref is turned off. Bit 5 which is ADC left adjust result bit. This bit was 1 which means ADC left adjust result is turned on. The bits 4:0 are the analog channel and gain selection bits. These bits are used to select the pin from where the ADC gets the analog input. The value of all the bits was taken zero to select the input at ADC0 [5]. 3.2 EEPROM Data Memory AT Mega32 contains 1 KB of Electrical Erasable Programmable Read Only Memory. It is a separate data space in AT Mega32. The EEPROM can be written and erased 100,000 times EEPROM Read/Write Access Registers The EEPROM registers are accessible in the I/O space. EEPROM have varying access times. If the user s code contains instructions to write the EEPROM then some precautions must be taken. If a heavily filtered power supply is used then the Vcc rises and falls slowly on power up and down. A specific order of instructions must be followed while writing to the EEPROM. The CPU is halted for two clock cycles when a write

27 16 attempt is made to EEPRM. When a read attempt is made, CPU is halted for four clock cycles before the next set instructions are executed. The various registers that correspond to EEPROM are EEPROM address register, EEPROM data register and EEPROM control register. The EEPROM address register is a 16 bit wide register and the bits from 15:10 are reserved in it. The bits 9:0 specify the address in the 1024 bytes EEPROM space. The data bytes can be addressed linearly from 0 to The initial value for this register must be defines before it can be used. The EEPROM data register is 8 bit wide. This register contains the data that is to be written to the EEROM in the address that is given by the EEPROM address register. The EEPROM control register is 8 bit wide register. Bits 7:4 are reserved for future use. Bit 3 is the ready interrupt enable bit. Bit 2 is EEPROM master write enable bit. This bit is used to determine whether setting the bit EEWE to 1 caused the EEPROM to be written or not. Bits 1 and 0 are EEPROM write enable and read enable bits. These bits are set and reset according to read and write requirements to EEPROM EEPROM Usage in Voice Recognition System In the voice recognition project, the EEPROM was used for writing the fingerprints of three words which correspond to the 75.2 % usage of the memory. The EEPROM was erased by using the pin 7 of the port C. Whenever, the input at the pin 7 of port C was high, and EEPROM was erased completely. Due to the limited space of the EEPROM only three words were stored.

28 USART The Universal Synchronous and Asynchronous serial Receiver and Transmitter is a serial communication port that is integral part of AT Mega32. This port is used to print the microcontroller messages on the HyperTerminal. Also, this port acts as a serial console to transfer data between the AT Mega32 and the peripheral devices. It has different modes of operation and the baud rate can be adjusted according to the user s requirement by witting some values to the UBRRL register. All these values are available in AT Mega32 datasheet according to different frequencies. The table 3.1 shows some of the values of the UBRRL register as per the clock frequency used. The UBRRL is a 16 bit register. The bit 15 is a regular select bit and the bits from 14:12 are reserved bits. The bits 11:0 are used to specify the value for the USART baud rate as per the table given in the AT Mega32 data sheet. For the purpose of the voice recognition project, the value of the UBRRL register was 103. This value means that the system clock is 16 MHz and the baud rate used is Accordingly, the HyperTerminal was also adjusted to the corresponding value. The USART was used to print the information like peripheral initialization, word detected and the Euclidean distance calculated between the stored fingerprint and the fingerprint of the spoken word. The transmission and reception of USART was set by writing 0x18 values to the register UCSRB.

29 18 Table 3.1: USBR Setting for Commonly Used Frequencies 3.4 Timer/Counter Registers There are two timer/counter available in AT Mega32 namely Timer/Counter0 and timer/counter1 Presclaers. These are usually used to set the prescale values. Timer/Counter0 and Timer/Counter1 shares the same prescaler module but the Timer/Counter0 can have different prescaler settings. The internal clock source provides 16 MHz clock frequency. By using appropriate values in the timers, the prescaled clock can have a frequency of fclk/8, fclk/64, fclk/256 or fclk/1024 [5]. Special function I/O

30 19 register is one of the registers that is associated with the timers. It is an 8 bit register. Bit 0 is a prescaler reset timer/counter1 and timer/counter bit. If this bit is set then the prescaler gets reset. As both the timers share the same prescaler, so the reset of it affects both the timers. Thus this bit is always read as zero. The registers which are associated with the timer 1 are TCNT1, OCR1A/B and ICR1. All these registers are 16 bit registers. There are some special procedures that are needed to be followed while accessing these registers. The procedures are explained in detail in the AT Mega32 data sheet. The Timer/Counter can be clocked internally with the help of a prescaler or by an external clock source connected to pin T1. The double buffered OCR1A/B registered is always compared to the value in the Timer/Counter. The result of their match can be used to generate a PWM waveform. The result also sets one of the bit named compare match flag which can be used to generate an interrupt. In the voice recognition project, different values of the timers were used at different intervals of time, to get different clock frequencies. To sample the ADC input at 4000 Hz, the value of the register TCCR0 was and the counter register TCNT0 was 0. The value of the output control register (OCR0) was set 64. This means that when the counter value in TCNT0 started incrementing and became equal to 64, the ADC input was sampled at 4032 Hz which is close to the sampling frequency 4000 Hz.

31 20 Chapter 4 PROJECT DETAILS 4.1 Overview The implementation of the project included various fields of electrical engineering like analog design, digital design, digital signal processing and systems programming in C. Figure 4.1 shows the block diagram of the voice recognition system. Figure 4.1: Voice Recognition System Block Diagram 4.2 Design Implementation Details The hardware design for the voice recognition system was divided into the following five parts:-

32 Microphone The microphone used in the project is a two pin microphones. One of the pin is connected to ground and the other one is for the output. The operating power is supplied to the microphone from the Vcc terminal of ATMEGA board. Pull up resistors has been used to avoid damaging the microphone. The microphone has a response of 9 KHz which makes it suitable for the voice recognition system. It is a known fact that most of the first and second harmonics of the human speech lies close to 2 KHz. The output of the microphone is around 1.93 mv. Figure 4.2 shows the microphone with an amplification circuitry Figure4.2: Microphone with Amplification Circuitry High Pass Filter The output from the microphone is passed through high pass filter. This analog RC filter is having.22 uf capacitor and a 2 Ω Kresistor. The cutoff frequency of the capacitor is nearly 160 Hz and the noise added by the other electronic components is 60

33 22 Hz as the power operation in America is at 60 Hz. The value of 160 Hz is fairly close to the lower limit of the human speech frequency. This filter also cutoff the unnecessary noise of 60 Hz. Another advantage of using this RC filter is to prevent the dc bias from going to the op amp Amplifier Stage The op amp used for the amplification stage is LM358p. The LM358p has a very good slew rate of 0.3V/μs and the response of the op amp for the input signal from microphone is better than the other op-amps. The formula used for the calculation of the gain (Va) is Va = Feedback resistance/ input resistance. 1M / 2K = 1, /2,000 = 500. The same was verified with the voltmeter. The output of the op-amp comes out to be nearly 4 V which is good enough for the words to be recognized by the ATMEL Mega32. Figure 4.3 shows the circuit diagram of amplification stage. Figure 4.3: Schematic of Microphone Amplification Circuit

34 ATMEL Mega and AT Mega 32 Processor The developer kit used for the project is ATMEL mega with ATMEL MEGA32 processor. Figure 4.4 shows the ATMega developer kit. The key features of the kit include a USART connector for printing the messages on the hyper terminal, ISP connector and four I/O ports with a JTAG interface for the boundary scan. The assembly and C code is converted into a hex file and downloaded to the AT Mega32 flash memory using AVR dude (hardware module) via ISP connector present on the kit. The board is responsible for the providing 5V power to the LED and the microphone amplification circuitry. The microphone signal from the amplification circuitry connects to the pin PA0 of the ATMEL Mega32 microcontroller. Figure 4.4: ATMEL Mega32 Developer s Kit

35 LED Circuitry The LED circuitry consists of six LEDs. Three of the LEDs are green and represents the stored words in EEPROM and three are red LEDs. One of the red LEDs glows when a spoken word fingerprint matches with the fingerprints of the stored in the EEPROM. 2 KΩ resistors are connected with each LED for current limiting purpose. Figure 4.5: LED Circuitry All the LEDs connect to the port B of AT Mega 32 microcontroller. Figure 4.5 shows the LED circuitry. The figure 4.6 shows the full schematic of the board, microcontroller, the amplification circuitry with microphone and the LED circuitry connected to it. The EEPROM is erased using a switch that is connected to the pin 7 of the Port C.

36 25 Figure 4.6: Schematic of AT Mega32 Connected with LED and Microphone Circuitry 4.3 Design Strategy The sampling frequency required to sample the spoken word is calculated based on the Nyquist theorem. It states that - To avoid aliasing, the minimum sampling rate should be equal to or more than the highest frequency within the information signal. The sampling frequency of 4000 Hz for the voice recognition system is optimal as the human voice frequency varies between 0 to 4 KHz. The second and the third harmonics of the human speech are close to 2 KHz.

37 Filter Design For the speech analysis, eight digital IIR filters are used. These eight 4 th order Chebyshev Band Pass Filter have a stop band ripple of 40 db. The Chebyshev filters are preferred over the other filters because these filters provide sharp transitions after the cutoff frequency which is necessary during the speech analysis. The band pass filters used for the filter design are:- noise levels. To design st nd rd th th th th th BPF Hz to 400 Hz BPF Hz to 600 Hz BPF Hz to 800 Hz BPF Hz to 1000 Hz BPF Hz to 1200 Hz BPF Hz to 1400 Hz BPF Hz to 1600 Hz BPF Hz to 1800 Hz The Low pass filter (< 200 Hz) was neglected was because of very high th order filters, two second order Chebyshev filters are cascaded using the "Direct Form II Transposed" implementation of a difference equations. y1(n) = b 11 *x 1 + b 12 *x 1 (n-1) + b 13 *x 1 (n-2) a 11 *y 1 (n-1) a 12 *y 1 (n-2)..(4.1) y2(n) = b 21 *x 2 + b 22 *x 2 (n-1) + b 23 *x 2 (n-2) a 21 *y 2 (n-1) a 22 *y 2 (n-2)..(4.2) yout = g * y 2 (n)..(4.3)

38 27 In the equations a and b are the filter coefficients. The values of these coefficients can be calculated using MATLAB and that id described in chapter Fingerprint Generation The first part was to calculate the threshold value above which the input can be recognized as a word. The calculation of the threshold value was done by reading the input of ADC to a temp variable adc_in using a timer 0 and summing up the values 256 times, which was considered as a part of calculating noise value. The value from the adc_in was passed through eight 4 th order band pass Chebyshev filters with a stop band ripple of 40 db samples half a second were taken, the reason for that is the limited RAM size of ATMEL Mega32 controller which is 2K and this much space is required for a word when we are taking 2000 samples half a second. The output of all the filters were multiplied with the gain of the respective filter and then squared. These values were accumulated with the previous values of the filter outputs. Every fingerprint received was stored in 2 KB EEPROM of AT Mega 32 microcontroller Fingerprint Calculation There is a space constraint in the ATMEL Mega32 as it has just 1 K EEPROM, each word was encoded and sampled information was stored in EEPROM. To compare the fingerprints of the stored words and the spoken word, Euclidean distance formula was used. Euclidean distance formula is:

39 28 D = (4.4) In the above equation p1, p2, p3,,pn are the stored fingerprints of a word in EEPROM and q1,q2,q3,.,qn are the fingerprints of a spoken word which is to be recognized. For the comparison between the words to know whether the stored word was same as that of the spoken word, Euclidean distance between them was calculated. The words were considered to be same if the calculated distance between them was the least as compared to the other words. The implementation of this formula required calculating the squares of the distances but due to the implementation of Tor s fixed point arithmetic, the filter coefficients were multiplied with 256. Thus, squaring would have resulted in a big number which would have lead to the buffer overflow [6]. Hence a "pseudo Euclidean distance formula" was used by removing the sum and the square root, reducing the equation for the distance as follows: D =.. (4.5) The basic algorithm for the code was to check the ADC input at a sampling rate of 4 KHz. If the value of the ADC was greater than the threshold value it was interpreted as the beginning of a half a second long word. The samples of the spoken word were passed through 8 band pass filters and were converted into fingerprint. Euclidean

40 29 distance calculation found the closest match with fingerprint stored in the EEPROM and based on that the corresponding red LED was turned on Initial Threshold Calculation As the part of initialization, the value of the ADC was read 256 times by main use of timer0. The average value was calculated without doing multiplication or division. There were three values were obtained each with a gap of almost 16.4 msec. delay between the sample accumulation. After getting the values, the threshold value was taken as four times of the median values. The threshold value was calculated to detect the spoken word. This also prevented the voice recognition system to be too sensitive. The logic was implemented without much success Software Flow Figure 4.7 shows the software flow for the voice recognition system. The first step is the resetting of the board then the system starts the computation of the filter coefficients. The peripheral initialization function initializes all the ports, timers and USART of ATMEL Mega32. If PortC.7th pin is high (connecting with the switch), all the old voice fingerprints are removed from the EEPROM. The system monitors the flag in the EEPROM (address 0x00). If the flag is 0xAA, then there are words stored in the EEPROM. The corresponding word s green LED blinks. A maximum of three words can be stored in the EEPROM. The system runs an infinite loop (while (1) with timer running at the background) to calculate the threshold noise. If the data from ADC is greater than threshold value, the sampling of the input voice starts. During the sampling process, filter

41 30 values are calculated using assembly functions. Once 2000 samples half a second are over, the filter outputs are stored in an array. Figure 4.7: Software Flow for Voice Recognition System

42 31 If there are words available in the EEPROM, the system calls the compare () function to compare the EEPROM samples and current samples. If there are no words in the EEPROM, the samples are written to the EEPROM. This is called the training mode. All the green LED s will glow once all the three words are entered successfully. The compare() function calculates the shortest distance between the samples of the words stored in the EEPROM and the current sample. One of the three RED LED s blink as per the shortest distance for each word calculated using Euclidean distance formula.

43 32 Chapter 5 SIMULATIONS AND DESIGN IMPLEMENTATION ANALYSIS 5.1 Speech Frequency Analysis The human speech frequency is less than 4000 Hz. Hence, as per the Nyquiest theorem the minimum sampling rate should be 8000 Hz. The analysis of the human voice was done on MATLAB before the design implementation. The data acquisition toolbox in MATLAB was used to record six words for exactly two seconds at the sampling rate of 8000 Hz. The data acquisition tool takes in the analog input from the microphone connected to the computer and sample the speech as per the sampling frequency required by the user. Data acquisition tool supports the minimum sampling frequency of 8000 Hz. Thus each two seconds word contained 8000 samples per second. Following were the MATLAB commands used to record one second words. duration = 2; % two second recording period ai = analoginput('winsound'); addchannel(ai, 1); samplerate = get(ai, 'SampleRate') get(ai, 'SamplesPerTrigger') requiredsamples = floor(samplerate * duration); set(ai, 'SamplesPerTrigger', requiredsamples); waittime = duration * % Buffer for the response time of the hardware start(ai) tic

44 33 wait(ai, waittime); toc [data, time] = getdata(ai); % retrieving data from the getdata Figure5.1: Signal Variation of Hello Figure 5.1 and 5.2 shows the signal variation of words Hello and One respectively for a period of two seconds. The y axis in the figures shows signal strength in volts and the x axis shows the time duration of 2 seconds.

45 34 Figure5.2: Signal Variation of One 5.2 Filter Design and Fingerprint Generation Analysis The analysis of filter design and Fingerprint generation is explained in the following two sub sections MATLAB Filter Design and Fingerprint Generation The filter design was tested in MATLAB before it was implemented in the hardware. Eight band pass filters ranging from 200 Hz to 1800 Hz were used. The coefficients of the filter were obtained using the following commands in MATLAB: [B, A] = cheby2 (4, 40, [Freq1, Freq2]) After the calculation of the coefficients, the 8000 samples per second of the words were down sampled to 4000 samples per second. The reason is the sampling frequency of the system is 4000 Hz. The 4000 samples of each word were divided into 16 groups and

46 35 each group containing 250 samples. This was done to pass each sample of the word from the filter and generated 16 data points or fingerprints that define a particular word. The 16 groups were passed through these eight filters. The output of a filter for each sample was squared and added to the previous value for one group that is for 250 samples. Thus, a finger print is generated for that group. This is how each filter generated 16 fingerprints for each word. The fingerprint accumulation process is shown in the figure 5.3. Figure 5.3: Fingerprint Accumulation after Every 250 Samples for a Word The following MATLAB commands were used to generate fingerprints: l1=length(x); x1=resample(x,4000,l1); % Resampling to 4000 samples. y(:,1)=x1; while i<5 % Count for using only four words. count = 1:1:250;

47 36 u1 = y(count,i); % Dividing into groups of 250 (250 * 16 = 4000 samples) % segregating the 4000 samples into groups of 250 continues count = 3751:1:4000; u16 = y(count,i); output1 = filter(b1, A1, u1); % Passing each sample through the filter % collecting outputs of the filter for each sample continues output16 = filter(b1, A1, u16); ot1=output1.*output1; %Squaring the outputs of the filter. % squaring of the outputs of the filter continues ot16=output16.*output16; result1 = sum(ot1); % Adding all the squared results. % accumulation of the results continues result16 = sum(ot16); % concatenating the 16 fingerprints for this filter fingerprint_filter1(i,:) = [result1, result2, result3, result4, result5, result6, result7, result8, result9, result10, result11, result12, result13, result14, result15, result16]; The total number of fingerprints generated by the 8 band pass filters is 128. These fingerprints can be plotted on a graph and the difference between the words can be judged. Figure 5.4 shows the fingerprints of the word Back and History.

48 37 Figure5.4: Fingerprints of Words Back and History Actual Filter Design and Fingerprint Generation The actual filter design was based on Prof Land s optimized implementation of the second order IIR filter on AT Mega 32 microcontroller. In this case the 4 th order Chebychev filter is designed by cascading two second order Chebychev filters. The coefficients of the second order filter were obtained by the following MATLAB command: [B,A] = cheby2(2,40,[freq1, Freq2]); The coefficients of the second 2 nd order filters were obtained by the following command: [sos1, g1]=ft2sos (B1, A1,'up', 'inf'); The coefficients obtained from the above commands were floating point values. The actual design implementation was based on fixed point arithmetic. The coefficients were converted into floating point by multiplying each number by 256 and then rounding it off to the nearest integer rather than using a float 2 fix macro. The process is based on

49 38 Tor s algorithm. A table 5.1 and 5.2 shows first and second 2 nd order coefficients respectively for band pass filter Hz. SOS Floating Point Filter Coefficient SOS Fixed Point Filter Coefficient (Multiplying with 256) Rounding off to Nearest Integer *256 = *256 = *256 = *256 = *256 = Table 5.1: Band Pass Filter Hz First 2 nd Order Coefficients SOS Floating Point Filter Coefficient SOS Fixed Point Filter Coefficient (Multiplying with 256) Rounding off to Nearest Integer *256 = *256 = * 256 = *256 = * 256 =

50 39 Table 5.2: Band Pass Filter Hz Second 2 nd Order Coefficients Each data point was generated after accumulating the outputs from each filter for 125 samples instead of 250 samples. The reason is the limitation of random access memory of 2KB in AT Mega32 microcontroller. The 2000 samples half a second requires almost 2KB of storage when passed from the eight filters. The total number of data points created by all the filters was 128. So for this purpose 2000 samples half a second were taken instead of the actual 4000 samples per second. 5.3 Fingerprint Comparison Analysis. All the samples of a word pass through the eight filters and the output of each filter is the accumulation of the 250 consecutive outputs square of the filters. All the words have different frequency spectrum. The same words should have the same frequency spectrum but it was seen during the simulations that even a same word at different intervals of time does not have the same fingerprints. Figure 5.5 shows the fingerprints of the word Hello spoken at different intervals of time and the same fingerprint varies with respect to time which is spoken at different intervals of time. Figure5.5: Fingerprints of the Word Hello at Different Intervals of Time

51 40 The relevant information of a word was stored in the fingerprint. Once we stored the fingerprints of the three words Hello, Uno and One in the EEPROM of AT Mega32, the spoken words were compared against the stored words. For the comparison purpose, a function was called which did the pseudo Euclidean distance calculations between the values of the fingerprints stored in the EEPROM and fingerprint of the spoken word. The function went through all the three words in the EEPROM for the comparison and the picked the one with the smallest calculated distance. Another set of words that were tried for the voice recognition was back, history and run. The following commands were used for the MATLAB simulations to calculate the Euclidean distance between the words: %Calculating Euclidean distance d1=sum(abs(fingerprint(:,1)-fingerprint(:,2))); % distance between back.wav and history.wav. d2=sum(abs(fingerprint(:,2)-fingerprint(:,3))); % distance between history.wav and hello22.wav. d3=sum(abs(fingerprint(:,1)-fingerprint(:,3))); % distance between back.wav and hello22.wav. d4=sum(abs(fingerprint(:,3)-fingerprint(:,4))); % distance between hello22.wav and hello33.wav. The simulations results showed that the distance between the Hello22 and Hello33 was the minimum and the same was verified on the hardware implementation of the Euclidean distance.

52 41 Chapter 6 CONCLUSION The implementation of the hardware based real time voice recognition system was successful. The project was 80% success as it can recognize particular combinations of three words. The user can train the system in the beginning for the three words of his/her choice and the fingerprints (frequency samples) are stored in the EEPROM of AT Mega32 controller. Each of the fingerprints takes around 300 Byte of space which makes and due to the limited EEPROM space of the microcontroller 1 KB, it was only possible to store fingerprints of just three words. The algorithm used for the voice recognition is effective and is able to recognize the words like Back, History and Run. The other combination of three words is Hello, One and Uno. The limitation of the system is that it can recognize only few combinations of the words. The Euclidean distance was calculated for the words to be recognized and the stored words and the corresponding RED blinked for the minimum distance. The calculated distance for the words was seen on the hyper terminal as well. The results were verified effectively in the practical way. The figure 6.1 shows the screen shot from the hyper terminal. The voice recognition system can be elaborated and used in various applications like voice security system, voice controlled car navigation system etc.

53 Figure6.1 Hyper Terminal Screen Shot 42

54 43 APPENDIX Source Code ////******************************************************************//// //// Function Name : void main(void) //// //// Description This is the main function where it will initialize all peripherals, //// //// then start reading the samples from ADC and compare with EEPROM data //// //// if the new word is near to the stored word in the EEPROM //// //// using Euclidian formula, it will show nearest match //// ////*****************************************************************//// void main(void) { Peripheral_init(); // Initialize all peripherals pin=pinc; PORTC=pin; if(portc.7 == 0) // if port pint is 0, it will erase the EEPROM { sflag=0xff; ENWORD=0; // Flag in the EEPROM is getting erased // Word count in the EEPROM is getting erased printf(" \n\t ******** Clearing of EEPROM Memory Done******** \n\r "); } if (sflag == 0xAA) // There are valid words available in the EEPROM and count is three

55 44 { printf(" Voice Recognition Mode "); PORTB.0=0;PORTB.1=0;PORTB.2=0; } else // if less than three words are avaialbe in EEPROM, display the same using LEDs { printf(" Learning Mode "); if(enword==0) { PORTB.0=1;PORTB.1=1;PORTB.2=1; } else if(enword==1) { PORTB.0=0;PORTB.1=1;PORTB.2=1; } else if(enword==2) { PORTB.0=0;PORTB.1=0;PORTB.2=1; } } while(1) // infinite loop

56 45 { if (latest_sample == 1) // Check whether to read samples from ADC, latest_sample is set to 1, from timer ISR. { In_word(); // Check the ADC input data is greater than thresh value (word detected), // if greater, set "flag2 =1" if(flag2 == 1) // there is a word begining detected from ADC { input = (((int)adc_in) -103); // Attenuate the default DC offset from ADC by 102 and assign to input variable to prvent overflow of input data as per fixed point arithematic. f1 = iir2_1(input); f2 = iir2_2(input); f3 = iir2_3(input); f4 = iir2_4(input); f5 = iir2_5(input); f6 = iir2_6(input); f7 = iir2_7(input); f8 = iir2_8(input); s_count++; // Increment the sample counter if(s_count == 125)

Fig. 1 Analog pins of Arduino Mega

Fig. 1 Analog pins of Arduino Mega Laboratory 7 Analog signals processing An analog signals is variable voltage over time and is usually the output of a sensor that monitors the environment. Such a signal can be processed and interpreted

More information

Analog to Digital Conversion

Analog to Digital Conversion Analog to Digital Conversion What the heck is analog to digital conversion? Why do we care? Analog to Digital Conversion What the heck is analog to digital conversion? Why do we care? A means to convert

More information

ADC Peripheral in Microcontrollers. Petr Cesak, Jan Fischer, Jaroslav Roztocil

ADC Peripheral in Microcontrollers. Petr Cesak, Jan Fischer, Jaroslav Roztocil ADC Peripheral in s Petr Cesak, Jan Fischer, Jaroslav Roztocil Czech Technical University in Prague, Faculty of Electrical Engineering Technicka 2, CZ-16627 Prague 6, Czech Republic Phone: +420-224 352

More information

Hello and welcome to this presentation of the STM32L4 Analog-to-Digital Converter block. It will cover the main features of this block, which is used

Hello and welcome to this presentation of the STM32L4 Analog-to-Digital Converter block. It will cover the main features of this block, which is used Hello and welcome to this presentation of the STM32L4 Analog-to-Digital Converter block. It will cover the main features of this block, which is used to convert the external analog voltage-like sensor

More information

Converters: Analogue to Digital

Converters: Analogue to Digital Converters: Analogue to Digital Presented by: Dr. Walid Ghoneim References: Process Control Instrumentation Technology, Curtis Johnson Op Amps Design, Operation and Troubleshooting. David Terrell 1 - ADC

More information

Report on 4-bit Counter design Report- 1, 2. Report on D- Flipflop. Course project for ECE533

Report on 4-bit Counter design Report- 1, 2. Report on D- Flipflop. Course project for ECE533 Report on 4-bit Counter design Report- 1, 2. Report on D- Flipflop Course project for ECE533 I. Objective: REPORT-I The objective of this project is to design a 4-bit counter and implement it into a chip

More information

SignalTap Plus System Analyzer

SignalTap Plus System Analyzer SignalTap Plus System Analyzer June 2000, ver. 1 Data Sheet Features Simultaneous internal programmable logic device (PLD) and external (board-level) logic analysis 32-channel external logic analyzer 166

More information

Major Differences Between the DT9847 Series Modules

Major Differences Between the DT9847 Series Modules DT9847 Series Dynamic Signal Analyzer for USB With Low THD and Wide Dynamic Range The DT9847 Series are high-accuracy, dynamic signal acquisition modules designed for sound and vibration applications.

More information

Communication Lab. Assignment On. Bi-Phase Code and Integrate-and-Dump (DC 7) MSc Telecommunications and Computer Networks Engineering

Communication Lab. Assignment On. Bi-Phase Code and Integrate-and-Dump (DC 7) MSc Telecommunications and Computer Networks Engineering Faculty of Engineering, Science and the Built Environment Department of Electrical, Computer and Communications Engineering Communication Lab Assignment On Bi-Phase Code and Integrate-and-Dump (DC 7) MSc

More information

ECE 4220 Real Time Embedded Systems Final Project Spectrum Analyzer

ECE 4220 Real Time Embedded Systems Final Project Spectrum Analyzer ECE 4220 Real Time Embedded Systems Final Project Spectrum Analyzer by: Matt Mazzola 12222670 Abstract The design of a spectrum analyzer on an embedded device is presented. The device achieves minimum

More information

Hello and welcome to this training module for the STM32L4 Liquid Crystal Display (LCD) controller. This controller can be used in a wide range of

Hello and welcome to this training module for the STM32L4 Liquid Crystal Display (LCD) controller. This controller can be used in a wide range of Hello and welcome to this training module for the STM32L4 Liquid Crystal Display (LCD) controller. This controller can be used in a wide range of applications such as home appliances, medical, automotive,

More information

A MISSILE INSTRUMENTATION ENCODER

A MISSILE INSTRUMENTATION ENCODER A MISSILE INSTRUMENTATION ENCODER Item Type text; Proceedings Authors CONN, RAYMOND; BREEDLOVE, PHILLIP Publisher International Foundation for Telemetering Journal International Telemetering Conference

More information

Point System (for instructor and TA use only)

Point System (for instructor and TA use only) EEL 4744C - Drs. George and Gugel Spring Semester 2002 Final Exam NAME SS# Closed book and closed notes examination to be done in pencil. Calculators are permitted. All work and solutions are to be written

More information

Microcontrollers. Outline. Class 4: Timer/Counters. March 28, Timer/Counter Introduction. Timers as a Timebase.

Microcontrollers. Outline. Class 4: Timer/Counters. March 28, Timer/Counter Introduction. Timers as a Timebase. Microcontrollers Class 4: Timer/Counters March 28, 2011 Outline Timer/Counter Introduction Timers as a Timebase Timers for PWM Outline Timer/Counter Introduction Timers as a Timebase Timers for PWM Outline

More information

Embedded System Training Module ABLab Solutions

Embedded System Training Module ABLab Solutions Embedded System Training Module ABLab Solutions www.ablab.in Table of Contents Course Outline... 4 1. Introduction to Embedded Systems... 4 2. Overview of Basic Electronics... 4 3. Overview of Digital

More information

Lab 5 Linear Predictive Coding

Lab 5 Linear Predictive Coding Lab 5 Linear Predictive Coding 1 of 1 Idea When plain speech audio is recorded and needs to be transmitted over a channel with limited bandwidth it is often necessary to either compress or encode the audio

More information

PESIT Bangalore South Campus

PESIT Bangalore South Campus SOLUTIONS TO INTERNAL ASSESSMENT TEST 3 Date : 8/11/2016 Max Marks: 40 Subject & Code : Analog and Digital Electronics (15CS32) Section: III A and B Name of faculty: Deepti.C Time : 11:30 am-1:00 pm Note:

More information

Decade Counters Mod-5 counter: Decade Counter:

Decade Counters Mod-5 counter: Decade Counter: Decade Counters We can design a decade counter using cascade of mod-5 and mod-2 counters. Mod-2 counter is just a single flip-flop with the two stable states as 0 and 1. Mod-5 counter: A typical mod-5

More information

VLSI Design: 3) Explain the various MOSFET Capacitances & their significance. 4) Draw a CMOS Inverter. Explain its transfer characteristics

VLSI Design: 3) Explain the various MOSFET Capacitances & their significance. 4) Draw a CMOS Inverter. Explain its transfer characteristics 1) Explain why & how a MOSFET works VLSI Design: 2) Draw Vds-Ids curve for a MOSFET. Now, show how this curve changes (a) with increasing Vgs (b) with increasing transistor width (c) considering Channel

More information

MUHAMMAD NAEEM LATIF MCS 3 RD SEMESTER KHANEWAL

MUHAMMAD NAEEM LATIF MCS 3 RD SEMESTER KHANEWAL 1. A stage in a shift register consists of (a) a latch (b) a flip-flop (c) a byte of storage (d) from bits of storage 2. To serially shift a byte of data into a shift register, there must be (a) one click

More information

B I O E N / Biological Signals & Data Acquisition

B I O E N / Biological Signals & Data Acquisition B I O E N 4 6 8 / 5 6 8 Lectures 1-2 Analog to Conversion Binary numbers Biological Signals & Data Acquisition In order to extract the information that may be crucial to understand a particular biological

More information

NanoGiant Oscilloscope/Function-Generator Program. Getting Started

NanoGiant Oscilloscope/Function-Generator Program. Getting Started Getting Started Page 1 of 17 NanoGiant Oscilloscope/Function-Generator Program Getting Started This NanoGiant Oscilloscope program gives you a small impression of the capabilities of the NanoGiant multi-purpose

More information

Lab 1 Introduction to the Software Development Environment and Signal Sampling

Lab 1 Introduction to the Software Development Environment and Signal Sampling ECEn 487 Digital Signal Processing Laboratory Lab 1 Introduction to the Software Development Environment and Signal Sampling Due Dates This is a three week lab. All TA check off must be completed before

More information

2 MHz Lock-In Amplifier

2 MHz Lock-In Amplifier 2 MHz Lock-In Amplifier SR865 2 MHz dual phase lock-in amplifier SR865 2 MHz Lock-In Amplifier 1 mhz to 2 MHz frequency range Dual reference mode Low-noise current and voltage inputs Touchscreen data display

More information

SUBSYSTEMS FOR DATA ACQUISITION #39. Analog-to-Digital Converter (ADC) Function Card

SUBSYSTEMS FOR DATA ACQUISITION #39. Analog-to-Digital Converter (ADC) Function Card SUBSYSTEMS FOR DATA ACQUISITION #39 Analog-to-Digital Converter (ADC) Function Card Project Scope Design an ADC function card for an IEEE 488 interface box built by Dr. Robert Kolbas. ADC card will add

More information

MAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION (Autonomous) (ISO/IEC Certified)

MAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION (Autonomous) (ISO/IEC Certified) Important Instructions to examiners: 1) The answers should be examined by key words and not as word-to-word as given in the model answer scheme. 2) The model answer and the answer written by candidate

More information

16 Stage Bi-Directional LED Sequencer

16 Stage Bi-Directional LED Sequencer 16 Stage Bi-Directional LED Sequencer The bi-directional sequencer uses a 4 bit binary up/down counter (CD4516) and two "1 of 8 line decoders" (74HC138 or 74HCT138) to generate the popular "Night Rider"

More information

BER MEASUREMENT IN THE NOISY CHANNEL

BER MEASUREMENT IN THE NOISY CHANNEL BER MEASUREMENT IN THE NOISY CHANNEL PREPARATION... 2 overview... 2 the basic system... 3 a more detailed description... 4 theoretical predictions... 5 EXPERIMENT... 6 the ERROR COUNTING UTILITIES module...

More information

Laboratory Exercise 4

Laboratory Exercise 4 Laboratory Exercise 4 Polling and Interrupts The purpose of this exercise is to learn how to send and receive data to/from I/O devices. There are two methods used to indicate whether or not data can be

More information

Sensor Development for the imote2 Smart Sensor Platform

Sensor Development for the imote2 Smart Sensor Platform Sensor Development for the imote2 Smart Sensor Platform March 7, 2008 2008 Introduction Aging infrastructure requires cost effective and timely inspection and maintenance practices The condition of a structure

More information

Vorne Industries. 87/719 Analog Input Module User's Manual Industrial Drive Itasca, IL (630) Telefax (630)

Vorne Industries. 87/719 Analog Input Module User's Manual Industrial Drive Itasca, IL (630) Telefax (630) Vorne Industries 87/719 Analog Input Module User's Manual 1445 Industrial Drive Itasca, IL 60143-1849 (630) 875-3600 Telefax (630) 875-3609 . 3 Chapter 1 Introduction... 1.1 Accessing Wiring Connections

More information

Digital Signal Processing Laboratory 7: IIR Notch Filters Using the TMS320C6711

Digital Signal Processing Laboratory 7: IIR Notch Filters Using the TMS320C6711 Digital Signal Processing Laboratory 7: IIR Notch Filters Using the TMS320C6711 Thursday, 4 November 2010 Objective: To implement a simple filter using a digital signal processing microprocessor using

More information

NI-DAQmx Device Considerations

NI-DAQmx Device Considerations NI-DAQmx Device Considerations January 2008, 370738M-01 This help file contains information specific to analog output (AO) Series devices, C Series, B Series, E Series devices, digital I/O (DIO) devices,

More information

Experiment # 4 Counters and Logic Analyzer

Experiment # 4 Counters and Logic Analyzer EE20L - Introduction to Digital Circuits Experiment # 4. Synopsis: Experiment # 4 Counters and Logic Analyzer In this lab we will build an up-counter and a down-counter using 74LS76A - Flip Flops. The

More information

ECE 5765 Modern Communication Fall 2005, UMD Experiment 10: PRBS Messages, Eye Patterns & Noise Simulation using PRBS

ECE 5765 Modern Communication Fall 2005, UMD Experiment 10: PRBS Messages, Eye Patterns & Noise Simulation using PRBS ECE 5765 Modern Communication Fall 2005, UMD Experiment 10: PRBS Messages, Eye Patterns & Noise Simulation using PRBS modules basic: SEQUENCE GENERATOR, TUNEABLE LPF, ADDER, BUFFER AMPLIFIER extra basic:

More information

WINTER 14 EXAMINATION

WINTER 14 EXAMINATION Subject Code: 17320 WINTER 14 EXAMINATION Model Answer Important Instructions to examiners: 1) The answers should be examined by key words and not as word-to-word as given in the model answer scheme. 2)

More information

DT9834 Series High-Performance Multifunction USB Data Acquisition Modules

DT9834 Series High-Performance Multifunction USB Data Acquisition Modules DT9834 Series High-Performance Multifunction USB Data Acquisition Modules DT9834 Series High Performance, Multifunction USB DAQ Key Features: Simultaneous subsystem operation on up to 32 analog input channels,

More information

SWITCH: Microcontroller Touch-switch Design & Test (Part 2)

SWITCH: Microcontroller Touch-switch Design & Test (Part 2) SWITCH: Microcontroller Touch-switch Design & Test (Part 2) 2 nd Year Electronics Lab IMPERIAL COLLEGE LONDON v2.09 Table of Contents Equipment... 2 Aims... 2 Objectives... 2 Recommended Timetable... 2

More information

A New Hardware Implementation of Manchester Line Decoder

A New Hardware Implementation of Manchester Line Decoder Vol:4, No:, 2010 A New Hardware Implementation of Manchester Line Decoder Ibrahim A. Khorwat and Nabil Naas International Science Index, Electronics and Communication Engineering Vol:4, No:, 2010 waset.org/publication/350

More information

Static Timing Analysis for Nanometer Designs

Static Timing Analysis for Nanometer Designs J. Bhasker Rakesh Chadha Static Timing Analysis for Nanometer Designs A Practical Approach 4y Spri ringer Contents Preface xv CHAPTER 1: Introduction / 1.1 Nanometer Designs 1 1.2 What is Static Timing

More information

WINTER 15 EXAMINATION Model Answer

WINTER 15 EXAMINATION Model Answer Important Instructions to examiners: 1) The answers should be examined by key words and not as word-to-word as given in the model answer scheme. 2) The model answer and the answer written by candidate

More information

BASCOM-TV. TV Code Features: ICs supported: BASCOM versions:

BASCOM-TV. TV Code Features: ICs supported: BASCOM versions: BASCOM-TV With this software module you can generate output directly to a TV - via an RGB SCART connection - from BASCOM (AVR), using a just few resistors and a 20 MHz crystal. Write your program with

More information

Chapter 5 Flip-Flops and Related Devices

Chapter 5 Flip-Flops and Related Devices Chapter 5 Flip-Flops and Related Devices Chapter 5 Objectives Selected areas covered in this chapter: Constructing/analyzing operation of latch flip-flops made from NAND or NOR gates. Differences of synchronous/asynchronous

More information

Netzer AqBiSS Electric Encoders

Netzer AqBiSS Electric Encoders Netzer AqBiSS Electric Encoders AqBiSS universal fully digital interface Application Note (AN-101-00) Copyright 2003 Netzer Precision Motion Sensors Ltd. Teradion Industrial Park, POB 1359 D.N. Misgav,

More information

Pattern Based Attendance System using RF module

Pattern Based Attendance System using RF module Pattern Based Attendance System using RF module 1 Bishakha Samantaray, 2 Megha Sutrave, 3 Manjunath P S Department of Telecommunication Engineering, BMS College of Engineering, Bangalore, India Email:

More information

Design and analysis of microcontroller system using AMBA- Lite bus

Design and analysis of microcontroller system using AMBA- Lite bus Design and analysis of microcontroller system using AMBA- Lite bus Wang Hang Suan 1,*, and Asral Bahari Jambek 1 1 School of Microelectronic Engineering, Universiti Malaysia Perlis, Perlis, Malaysia Abstract.

More information

UNIT V 8051 Microcontroller based Systems Design

UNIT V 8051 Microcontroller based Systems Design UNIT V 8051 Microcontroller based Systems Design INTERFACING TO ALPHANUMERIC DISPLAYS Many microprocessor-controlled instruments and machines need to display letters of the alphabet and numbers. Light

More information

Operating Instructions

Operating Instructions Operating Instructions HAEFELY TEST AG KIT Measurement Software Version 1.0 KIT / En Date Version Responsable Changes / Reasons February 2015 1.0 Initial version WARNING Introduction i Before operating

More information

Amplification. Most common signal conditioning

Amplification. Most common signal conditioning 1. Labview basics virtual instruments, data flow, palettes 2. Structures for, while, case,... editing techniques 3. Controls&Indicators arrays, clusters, charts, graphs 4. Additional lecture State machines,

More information

Voice Controlled Car System

Voice Controlled Car System Voice Controlled Car System 6.111 Project Proposal Ekin Karasan & Driss Hafdi November 3, 2016 1. Overview Voice controlled car systems have been very important in providing the ability to drivers to adjust

More information

Contents Circuits... 1

Contents Circuits... 1 Contents Circuits... 1 Categories of Circuits... 1 Description of the operations of circuits... 2 Classification of Combinational Logic... 2 1. Adder... 3 2. Decoder:... 3 Memory Address Decoder... 5 Encoder...

More information

LX3V-4AD User manual Website: Technical Support: Skype: Phone: QQ Group: Technical forum:

LX3V-4AD User manual Website: Technical Support: Skype: Phone: QQ Group: Technical forum: User manual Website: http://www.we-con.com.cn/en Technical Support: support@we-con.com.cn Skype: fcwkkj Phone: 86-591-87868869 QQ Group: 465230233 Technical forum: http://wecon.freeforums.net/ 1. Introduction

More information

A FOUR GAIN READOUT INTEGRATED CIRCUIT : FRIC 96_1

A FOUR GAIN READOUT INTEGRATED CIRCUIT : FRIC 96_1 A FOUR GAIN READOUT INTEGRATED CIRCUIT : FRIC 96_1 J. M. Bussat 1, G. Bohner 1, O. Rossetto 2, D. Dzahini 2, J. Lecoq 1, J. Pouxe 2, J. Colas 1, (1) L. A. P. P. Annecy-le-vieux, France (2) I. S. N. Grenoble,

More information

Dual Slope ADC Design from Power, Speed and Area Perspectives

Dual Slope ADC Design from Power, Speed and Area Perspectives Dual Slope ADC Design from Power, Speed and Area Perspectives Isaac Macwan, Xingguo Xiong, Lawrence Hmurcik Department of Electrical & Computer Engineering, University of Bridgeport, Bridgeport, CT 06604

More information

Introduction To LabVIEW and the DSP Board

Introduction To LabVIEW and the DSP Board EE-289, DIGITAL SIGNAL PROCESSING LAB November 2005 Introduction To LabVIEW and the DSP Board 1 Overview The purpose of this lab is to familiarize you with the DSP development system by looking at sampling,

More information

TV Synchronism Generation with PIC Microcontroller

TV Synchronism Generation with PIC Microcontroller TV Synchronism Generation with PIC Microcontroller With the widespread conversion of the TV transmission and coding standards, from the early analog (NTSC, PAL, SECAM) systems to the modern digital formats

More information

ECB DIGITAL ELECTRONICS PROJECT BASED LEARNING PROJECT REPORT ON 7 SEGMENT DIGITAL STOP WATCH USING DECODER

ECB DIGITAL ELECTRONICS PROJECT BASED LEARNING PROJECT REPORT ON 7 SEGMENT DIGITAL STOP WATCH USING DECODER ECB2212 - DIGITAL ELECTRONICS PROJECT BASED LEARNING PROJECT REPORT ON 7 SEGMENT DIGITAL STOP WATCH USING DECODER SUBMITTED BY ASHRAF HUSSAIN (160051601105) S SAMIULLAH (160051601059) CONTENTS >AIM >INTRODUCTION

More information

Lab experience 1: Introduction to LabView

Lab experience 1: Introduction to LabView Lab experience 1: Introduction to LabView LabView is software for the real-time acquisition, processing and visualization of measured data. A LabView program is called a Virtual Instrument (VI) because

More information

DESIGN AND DEVELOPMENT OF A MICROCONTROLLER BASED PORTABLE ECG MONITOR

DESIGN AND DEVELOPMENT OF A MICROCONTROLLER BASED PORTABLE ECG MONITOR Bangladesh Journal of Medical Physics Vol. 4, No.1, 2011 DESIGN AND DEVELOPMENT OF A MICROCONTROLLER BASED PORTABLE ECG MONITOR Nahian Rahman 1, A K M Bodiuzzaman, A Raihan Abir, K Siddique-e Rabbani Department

More information

GALILEO Timing Receiver

GALILEO Timing Receiver GALILEO Timing Receiver The Space Technology GALILEO Timing Receiver is a triple carrier single channel high tracking performances Navigation receiver, specialized for Time and Frequency transfer application.

More information

Watchman. Introduction: Door Lock Mobile MAX

Watchman. Introduction: Door Lock Mobile MAX Watchman Introduction: There are many areas where security is of prime importance e.g. Bank locker security, Ammunition security, Jewelry security etc. The area where the valuables are kept must be secured.

More information

AD9884A Evaluation Kit Documentation

AD9884A Evaluation Kit Documentation a (centimeters) AD9884A Evaluation Kit Documentation Includes Documentation for: - AD9884A Evaluation Board - SXGA Panel Driver Board Rev 0 1/4/2000 Evaluation Board Documentation For the AD9884A Purpose

More information

Objectives. Combinational logics Sequential logics Finite state machine Arithmetic circuits Datapath

Objectives. Combinational logics Sequential logics Finite state machine Arithmetic circuits Datapath Objectives Combinational logics Sequential logics Finite state machine Arithmetic circuits Datapath In the previous chapters we have studied how to develop a specification from a given application, and

More information

DSP in Communications and Signal Processing

DSP in Communications and Signal Processing Overview DSP in Communications and Signal Processing Dr. Kandeepan Sithamparanathan Wireless Signal Processing Group, National ICT Australia Introduction to digital signal processing Introduction to digital

More information

Integrated Circuit for Musical Instrument Tuners

Integrated Circuit for Musical Instrument Tuners Document History Release Date Purpose 8 March 2006 Initial prototype 27 April 2006 Add information on clip indication, MIDI enable, 20MHz operation, crystal oscillator and anti-alias filter. 8 May 2006

More information

Analog Input & Output

Analog Input & Output EEL 4744C: Microprocessor Applications Lecture 10 Part 1 Analog Input & Output Dr. Tao Li 1 Read Assignment M&M: Chapter 11 Dr. Tao Li 2 To process continuous signals as functions of time Advantages free

More information

SigPlay User s Guide

SigPlay User s Guide SigPlay User s Guide . . SigPlay32 User's Guide? Version 3.4 Copyright? 2001 TDT. All rights reserved. No part of this manual may be reproduced or transmitted in any form or by any means, electronic or

More information

Department of Electrical & Electronic Engineering Imperial College of Science, Technology and Medicine. Project: Real-Time Speech Enhancement

Department of Electrical & Electronic Engineering Imperial College of Science, Technology and Medicine. Project: Real-Time Speech Enhancement Department of Electrical & Electronic Engineering Imperial College of Science, Technology and Medicine Project: Real-Time Speech Enhancement Introduction Telephones are increasingly being used in noisy

More information

Counter/timer 2 of the 83C552 microcontroller

Counter/timer 2 of the 83C552 microcontroller INTODUCTION TO THE 83C552 The 83C552 is an 80C51 derivative with several extended features: 8k OM, 256 bytes AM, 10-bit A/D converter, two PWM channels, two serial I/O channels, six 8-bit I/O ports, and

More information

Design of Vision Embedded Platform with AVR

Design of Vision Embedded Platform with AVR Design of Vision Embedded Platform with AVR 1 In-Kyu Jang, 2 Dai-Tchul Moon, 3 Hyoung-Kie Yoon, 4 Jae-Min Jang, 5 Jeong-Seop Seo 1 Dept. of Information & Communication Engineering, Hoseo University, Republic

More information

QUICK START GUIDE FOR DEMONSTRATION CIRCUIT /12/14 BIT 10 TO 105 MSPS ADC

QUICK START GUIDE FOR DEMONSTRATION CIRCUIT /12/14 BIT 10 TO 105 MSPS ADC LTC2280, LTC2282, LTC2284, LTC2286, LTC2287, LTC2288 LTC2289, LTC2290, LTC2291, LTC2292, LTC2293, LTC2294, LTC2295, LTC2296, LTC2297, LTC2298 or LTC2299 DESCRIPTION Demonstration circuit 851 supports a

More information

Full Disclosure Monitoring

Full Disclosure Monitoring Full Disclosure Monitoring Power Quality Application Note Full Disclosure monitoring is the ability to measure all aspects of power quality, on every voltage cycle, and record them in appropriate detail

More information

Logic and Computer Design Fundamentals. Chapter 7. Registers and Counters

Logic and Computer Design Fundamentals. Chapter 7. Registers and Counters Logic and Computer Design Fundamentals Chapter 7 Registers and Counters Registers Register a collection of binary storage elements In theory, a register is sequential logic which can be defined by a state

More information

Analogue Versus Digital [5 M]

Analogue Versus Digital [5 M] Q.1 a. Analogue Versus Digital [5 M] There are two basic ways of representing the numerical values of the various physical quantities with which we constantly deal in our day-to-day lives. One of the ways,

More information

DIGITAL SYSTEM FUNDAMENTALS (ECE421) DIGITAL ELECTRONICS FUNDAMENTAL (ECE422) COUNTERS

DIGITAL SYSTEM FUNDAMENTALS (ECE421) DIGITAL ELECTRONICS FUNDAMENTAL (ECE422) COUNTERS COURSE / CODE DIGITAL SYSTEM FUNDAMENTALS (ECE421) DIGITAL ELECTRONICS FUNDAMENTAL (ECE422) COUNTERS One common requirement in digital circuits is counting, both forward and backward. Digital clocks and

More information

Synthesized Clock Generator

Synthesized Clock Generator Synthesized Clock Generator CG635 DC to 2.05 GHz low-jitter clock generator Clocks from DC to 2.05 GHz Random jitter

More information

Tutorial Introduction

Tutorial Introduction Tutorial Introduction PURPOSE - To explain how to configure and use the in common applications OBJECTIVES: - Identify the steps to set up and configure the. - Identify techniques for maximizing the accuracy

More information

CPE 310L EMBEDDED SYSTEM DESIGN (CPE)

CPE 310L EMBEDDED SYSTEM DESIGN (CPE) CPE 310L EMBEDDED SYSTEM DESIGN (CPE) LABORATORY 8 ANALOG DIGITAL CONVERTER DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING UNIVERSITY OF NEVADA, LAS VEGAS GOAL The goal of this lab is to understand

More information

FPGA Design. Part I - Hardware Components. Thomas Lenzi

FPGA Design. Part I - Hardware Components. Thomas Lenzi FPGA Design Part I - Hardware Components Thomas Lenzi Approach We believe that having knowledge of the hardware components that compose an FPGA allow for better firmware design. Being able to visualise

More information

Getting Started with the LabVIEW Sound and Vibration Toolkit

Getting Started with the LabVIEW Sound and Vibration Toolkit 1 Getting Started with the LabVIEW Sound and Vibration Toolkit This tutorial is designed to introduce you to some of the sound and vibration analysis capabilities in the industry-leading software tool

More information

MIE 402: WORKSHOP ON DATA ACQUISITION AND SIGNAL PROCESSING Spring 2003

MIE 402: WORKSHOP ON DATA ACQUISITION AND SIGNAL PROCESSING Spring 2003 MIE 402: WORKSHOP ON DATA ACQUISITION AND SIGNAL PROCESSING Spring 2003 OBJECTIVE To become familiar with state-of-the-art digital data acquisition hardware and software. To explore common data acquisition

More information

Pinewood Derby Finish Line Detection System

Pinewood Derby Finish Line Detection System Pinewood Derby Finish Line Detection System by Cody Clayton Robert Schreibman A Technical Report Submitted to the Faculty of Electrical Engineering Colorado School of Mines Submitted in partial fulfillment

More information

FPGA Laboratory Assignment 4. Due Date: 06/11/2012

FPGA Laboratory Assignment 4. Due Date: 06/11/2012 FPGA Laboratory Assignment 4 Due Date: 06/11/2012 Aim The purpose of this lab is to help you understanding the fundamentals of designing and testing memory-based processing systems. In this lab, you will

More information

Lab #10: Building Output Ports with the 6811

Lab #10: Building Output Ports with the 6811 1 Tiffany Q. Liu April 11, 2011 CSC 270 Lab #10 Lab #10: Building Output Ports with the 6811 Introduction The purpose of this lab was to build a 1-bit as well as a 2-bit output port with the 6811 training

More information

ECE 263 Digital Systems, Fall 2015

ECE 263 Digital Systems, Fall 2015 ECE 263 Digital Systems, Fall 2015 REVIEW: FINALS MEMORY ROM, PROM, EPROM, EEPROM, FLASH RAM, DRAM, SRAM Design of a memory cell 1. Draw circuits and write 2 differences and 2 similarities between DRAM

More information

Design and Implementation of an AHB VGA Peripheral

Design and Implementation of an AHB VGA Peripheral Design and Implementation of an AHB VGA Peripheral 1 Module Overview Learn about VGA interface; Design and implement an AHB VGA peripheral; Program the peripheral using assembly; Lab Demonstration. System

More information

Experiment: FPGA Design with Verilog (Part 4)

Experiment: FPGA Design with Verilog (Part 4) Department of Electrical & Electronic Engineering 2 nd Year Laboratory Experiment: FPGA Design with Verilog (Part 4) 1.0 Putting everything together PART 4 Real-time Audio Signal Processing In this part

More information

Microcontrollers and Interfacing week 7 exercises

Microcontrollers and Interfacing week 7 exercises SERIL TO PRLLEL CONVERSION Serial to parallel conversion Microcontrollers and Interfacing week exercises Using many LEs (e.g., several seven-segment displays or bar graphs) is difficult, because only a

More information

ni.com Digital Signal Processing for Every Application

ni.com Digital Signal Processing for Every Application Digital Signal Processing for Every Application Digital Signal Processing is Everywhere High-Volume Image Processing Production Test Structural Sound Health and Vibration Monitoring RF WiMAX, and Microwave

More information

2. AN INTROSPECTION OF THE MORPHING PROCESS

2. AN INTROSPECTION OF THE MORPHING PROCESS 1. INTRODUCTION Voice morphing means the transition of one speech signal into another. Like image morphing, speech morphing aims to preserve the shared characteristics of the starting and final signals,

More information

DT9837 Series. High Performance, USB Powered Modules for Sound & Vibration Analysis. Key Features:

DT9837 Series. High Performance, USB Powered Modules for Sound & Vibration Analysis. Key Features: DT9837 Series High Performance, Powered Modules for Sound & Vibration Analysis The DT9837 Series high accuracy dynamic signal acquisition modules are ideal for portable noise, vibration, and acoustic measurements.

More information

Chapter 4: One-Shots, Counters, and Clocks

Chapter 4: One-Shots, Counters, and Clocks Chapter 4: One-Shots, Counters, and Clocks I. The Monostable Multivibrator (One-Shot) The timing pulse is one of the most common elements of laboratory electronics. Pulses can control logical sequences

More information

Chapter 11 Sections 1 3 Dr. Iyad Jafar

Chapter 11 Sections 1 3 Dr. Iyad Jafar Data Acquisition and Manipulation Chapter 11 Sections 1 3 Dr. Iyad Jafar Outline Analog and Digital Quantities The Analog to Digital Converter Features of Analog to Digital Converter The Data Acquisition

More information

Long and Fast Up/Down Counters Pushpinder Kaur CHOUHAN 6 th Jan, 2003

Long and Fast Up/Down Counters Pushpinder Kaur CHOUHAN 6 th Jan, 2003 1 Introduction Long and Fast Up/Down Counters Pushpinder Kaur CHOUHAN 6 th Jan, 2003 Circuits for counting both forward and backward events are frequently used in computers and other digital systems. Digital

More information

Design of Fault Coverage Test Pattern Generator Using LFSR

Design of Fault Coverage Test Pattern Generator Using LFSR Design of Fault Coverage Test Pattern Generator Using LFSR B.Saritha M.Tech Student, Department of ECE, Dhruva Institue of Engineering & Technology. Abstract: A new fault coverage test pattern generator

More information

DIGITAL INSTRUMENTS S.R.L. SPM-ETH (Synchro Phasor Meter over ETH)

DIGITAL INSTRUMENTS S.R.L. SPM-ETH (Synchro Phasor Meter over ETH) DIGITAL INSTRUMENTS S.R.L. SPM-ETH (Synchro Phasor Meter over ETH) SPM-ETH (Synchro Phasor Meter over ETH) Digital Instruments 1 ver the years, an awareness of the criticality of the Power Grid and Orelated

More information

TV Character Generator

TV Character Generator TV Character Generator TV CHARACTER GENERATOR There are many ways to show the results of a microcontroller process in a visual manner, ranging from very simple and cheap, such as lighting an LED, to much

More information

SDA 3302 Family. GHz PLL with I 2 C Bus and Four Chip Addresses

SDA 3302 Family. GHz PLL with I 2 C Bus and Four Chip Addresses GHz PLL with I 2 C Bus and Four Chip Addresses Preliminary Data Features 1-chip system for MPU control (I 2 C bus) 4 programmable chip addresses Short pull-in time for quick channel switch-over and optimized

More information

CAP240 First semester 1430/1431. Sheet 4

CAP240 First semester 1430/1431. Sheet 4 King Saud University College of Computer and Information Sciences Department of Information Technology CAP240 First semester 1430/1431 Sheet 4 Multiple choice Questions 1-Unipolar, bipolar, and polar encoding

More information

MULTIDYNE INNOVATIONS IN TELEVISION TESTING & DISTRIBUTION DIGITAL VIDEO, AUDIO & DATA FIBER OPTIC MULTIPLEXER TRANSPORT SYSTEM

MULTIDYNE INNOVATIONS IN TELEVISION TESTING & DISTRIBUTION DIGITAL VIDEO, AUDIO & DATA FIBER OPTIC MULTIPLEXER TRANSPORT SYSTEM MULTIDYNE INNOVATIONS IN TELEVISION TESTING & DISTRIBUTION INSTRUCTION MANUAL DVM-1000 DIGITAL VIDEO, AUDIO & DATA FIBER OPTIC MULTIPLEXER TRANSPORT SYSTEM MULTIDYNE Electronics, Inc. Innovations in Television

More information