{"product_id":"digital-signal-processing-using-the-arm-cortex-m4-isbn-9781118859049","title":"Digital Signal Processing Using the ARM Cortex M4","description":"\u003cp\u003e\u003cb\u003eFeatures inexpensive ARM® Cortex®-M4 microcontroller development systems available from Texas Instruments and STMicroelectronics.\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eThis book presents a hands-on approach to teaching Digital Signal Processing (DSP) with real-time examples using the ARM® Cortex®-M4 32-bit microprocessor. Real-time examples using analog input and output signals are provided, giving visible (using an oscilloscope) and audible (using a speaker or headphones) results. Signal generators and\/or audio sources, e.g. iPods, can be used to provide experimental input signals. The text also covers the fundamental concepts of digital signal processing such as analog-to-digital and digital-to-analog conversion, FIR and IIR filtering, Fourier transforms, and adaptive filtering.\u003c\/p\u003e \u003cp\u003e\u003ci\u003eDigital Signal Processing Using the ARM® Cortex®-M4:\u003c\/i\u003e\u003c\/p\u003e \u003cul\u003e \u003cli\u003eUses a large number of simple example programs illustrating DSP concepts in real-time, in an electrical engineering laboratory setting\u003c\/li\u003e \u003cli\u003eIncludes examples for both STM32F407 Discovery and the TM4C123 Launchpad, using \u003ci\u003eKeil MDK-ARM\u003c\/i\u003e, on a companion website\u003c\/li\u003e \u003cli\u003eExample programs for the TM4C123 Launchpad using\u003ci\u003e Code Composer Studio version 6\u003c\/i\u003e available on companion website\u003c\/li\u003e \u003c\/ul\u003e \u003cp\u003e\u003ci\u003eDigital Signal Processing Using the ARM® Cortex®-M4\u003c\/i\u003e serves as a teaching aid for university professors wishing to teach DSP using laboratory experiments, and for students or engineers wishing to study DSP using the inexpensive ARM® Cortex®-M4.\u003c\/p\u003e \u003cp\u003ePreface xi\u003c\/p\u003e \u003cp\u003e\u003cb\u003e1 ARM\u003csup\u003e®\u003c\/sup\u003e CORTEX\u003csup\u003e®\u003c\/sup\u003e - M4 Development Systems 1\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e1.1 Introduction 1\u003c\/p\u003e \u003cp\u003e1.1.1 Audio Interfaces 2\u003c\/p\u003e \u003cp\u003e1.1.2 Texas Instruments TM4C123 LaunchPad and STM32F407 Discovery Development Kits 2\u003c\/p\u003e \u003cp\u003e1.1.3 Hardware and Software Tools 6\u003c\/p\u003e \u003cp\u003eReference 7\u003c\/p\u003e \u003cp\u003e\u003cb\u003e2 Analog Input and Output 9\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e2.1 Introduction 9\u003c\/p\u003e \u003cp\u003e2.1.1 Sampling, Reconstruction, and Aliasing 9\u003c\/p\u003e \u003cp\u003e2.2 TLV320AIC3104 (AIC3104) Stereo Codec for Audio Input and Output 10\u003c\/p\u003e \u003cp\u003e2.3 WM5102 Audio Hub Codec for Audio Input and Output 12\u003c\/p\u003e \u003cp\u003e2.4 Programming Examples 12\u003c\/p\u003e \u003cp\u003e2.5 Real-Time Input and Output Using Polling, Interrupts, and Direct Memory Access (DMA) 12\u003c\/p\u003e \u003cp\u003e2.5.1 I2S Emulation on the TM4C123 15\u003c\/p\u003e \u003cp\u003e2.5.2 Program Operation 15\u003c\/p\u003e \u003cp\u003e2.5.3 Running the Program 16\u003c\/p\u003e \u003cp\u003e2.5.4 Changing the Input Connection to LINE IN 16\u003c\/p\u003e \u003cp\u003e2.5.5 Changing the Sampling Frequency 16\u003c\/p\u003e \u003cp\u003e2.5.6 Using the Digital MEMS Microphone on the Wolfson Audio Card 20\u003c\/p\u003e \u003cp\u003e2.5.7 Running the Program 21\u003c\/p\u003e \u003cp\u003e2.5.8 Running the Program 23\u003c\/p\u003e \u003cp\u003e2.5.9 DMA in the TM4C123 Processor 26\u003c\/p\u003e \u003cp\u003e2.5.10 Running the Program 30\u003c\/p\u003e \u003cp\u003e2.5.11 Monitoring Program Execution 30\u003c\/p\u003e \u003cp\u003e2.5.12 Measuring the Delay Introduced by DMA-Based I\/O 30\u003c\/p\u003e \u003cp\u003e2.5.13 DMA in the STM32F407 Processor 34\u003c\/p\u003e \u003cp\u003e2.5.14 Running the Program 35\u003c\/p\u003e \u003cp\u003e2.5.15 Measuring the Delay Introduced by DMA-Based I\/O 35\u003c\/p\u003e \u003cp\u003e2.5.16 Running the Program 46\u003c\/p\u003e \u003cp\u003e2.6 Real-Time Waveform Generation 46\u003c\/p\u003e \u003cp\u003e2.6.1 Running the Program 49\u003c\/p\u003e \u003cp\u003e2.6.2 Out-of-Band Noise in the Output of the AIC3104 Codec (tm4c123_sine48_intr.c). 49\u003c\/p\u003e \u003cp\u003e2.6.3 Running the Program 53\u003c\/p\u003e \u003cp\u003e2.6.4 Running the Program 62\u003c\/p\u003e \u003cp\u003e2.6.5 Running the Program 69\u003c\/p\u003e \u003cp\u003e2.7 Identifying the Frequency Response of the DAC Using Pseudorandom Noise 70\u003c\/p\u003e \u003cp\u003e2.7.1 Programmable De-Emphasis in the AIC3104 Codec 72\u003c\/p\u003e \u003cp\u003e2.7.2 Programmable Digital Effects Filters in the AIC3104 Codec 72\u003c\/p\u003e \u003cp\u003e2.8 Aliasing 78\u003c\/p\u003e \u003cp\u003e2.8.1 Running the Program 83\u003c\/p\u003e \u003cp\u003e2.9 Identifying the Frequency Response of the DAC Using An Adaptive Filter 83\u003c\/p\u003e \u003cp\u003e2.9.1 Running the Program 84\u003c\/p\u003e \u003cp\u003e2.10 Analog Output Using the STM32F407’S 12-BIT DAC 91\u003c\/p\u003e \u003cp\u003eReferences 96\u003c\/p\u003e \u003cp\u003e\u003cb\u003e3 Finite Impulse Response Filters 97\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e3.1 Introduction to Digital Filters 97\u003c\/p\u003e \u003cp\u003e3.1.1 The FIR Filter 97\u003c\/p\u003e \u003cp\u003e3.1.2 Introduction to the z-Transform 99\u003c\/p\u003e \u003cp\u003e3.1.3 Definition of the z-Transform 100\u003c\/p\u003e \u003cp\u003e3.1.4 Properties of the z-Transform 108\u003c\/p\u003e \u003cp\u003e3.1.5 z-Transfer Functions 111\u003c\/p\u003e \u003cp\u003e3.1.6 Mapping from the s-Plane to the z-Plane 111\u003c\/p\u003e \u003cp\u003e3.1.7 Difference Equations 112\u003c\/p\u003e \u003cp\u003e3.1.8 Frequency Response and the z-Transform 113\u003c\/p\u003e \u003cp\u003e3.1.9 The Inverse z-Transform 114\u003c\/p\u003e \u003cp\u003e3.2 Ideal Filter Response Classifications: LP, HP, BP, BS 114\u003c\/p\u003e \u003cp\u003e3.2.1 Window Method of FIR Filter Design 114\u003c\/p\u003e \u003cp\u003e3.2.2 Window Functions 116\u003c\/p\u003e \u003cp\u003e3.2.3 Design of Ideal High-Pass Band-Pass and Band-Stop FIR Filters Using the Window Method 120\u003c\/p\u003e \u003cp\u003e3.3 Programming Examples 123\u003c\/p\u003e \u003cp\u003e3.3.1 Altering the Coefficients of the Moving Average Filter 132\u003c\/p\u003e \u003cp\u003e3.3.2 Generating FIR Filter Coefficient Header Files Using MATLAB 137\u003c\/p\u003e \u003cp\u003e\u003cb\u003e4 Infinite Impulse Response Filters 163\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e4.1 Introduction 163\u003c\/p\u003e \u003cp\u003e4.2 IIR Filter Structures 164\u003c\/p\u003e \u003cp\u003e4.2.1 Direct Form I Structure 164\u003c\/p\u003e \u003cp\u003e4.2.2 Direct Form II Structure 165\u003c\/p\u003e \u003cp\u003e4.2.3 Direct Form II Transpose 166\u003c\/p\u003e \u003cp\u003e4.2.4 Cascade Structure 168\u003c\/p\u003e \u003cp\u003e4.2.5 Parallel Form Structure 169\u003c\/p\u003e \u003cp\u003e4.3 Impulse Invariance 171\u003c\/p\u003e \u003cp\u003e4.4 Bilinear Transformation 171\u003c\/p\u003e \u003cp\u003e4.4.1 Bilinear Transform Design Procedure 172\u003c\/p\u003e \u003cp\u003e4.5 Programming Examples 173\u003c\/p\u003e \u003cp\u003e4.5.1 Design of a Simple IIR Low-Pass Filter 173\u003c\/p\u003e \u003cp\u003eReference 216\u003c\/p\u003e \u003cp\u003e\u003cb\u003e5 Fast Fourier Transform 217\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e5.1 Introduction 217\u003c\/p\u003e \u003cp\u003e5.2 Development of the FFT Algorithm with RADIX-2 218\u003c\/p\u003e \u003cp\u003e5.3 Decimation-in-Frequency FFT Algorithm with RADIX-2 219\u003c\/p\u003e \u003cp\u003e5.4 Decimation-in-Time FFT Algorithm with RADIX-2 222\u003c\/p\u003e \u003cp\u003e5.4.1 Reordered Sequences in the Radix-2 FFT and Bit-Reversed Addressing 224\u003c\/p\u003e \u003cp\u003e5.5 Decimation-in-Frequency FFT Algorithm with RADIX-4 226\u003c\/p\u003e \u003cp\u003e5.6 Inverse Fast Fourier Transform 227\u003c\/p\u003e \u003cp\u003e5.7 Programming Examples 228\u003c\/p\u003e \u003cp\u003e5.7.1 Twiddle Factors 233\u003c\/p\u003e \u003cp\u003e5.8 Frame- or Block-Based Programming 239\u003c\/p\u003e \u003cp\u003e5.8.1 Running the Program 242\u003c\/p\u003e \u003cp\u003e5.8.2 Spectral Leakage 244\u003c\/p\u003e \u003cp\u003e5.9 Fast Convolution 252\u003c\/p\u003e \u003cp\u003e5.9.1 Running the Program 256\u003c\/p\u003e \u003cp\u003e5.9.2 Execution Time of Fast Convolution Method of FIR Filter Implementation 256\u003c\/p\u003e \u003cp\u003eReference 261\u003c\/p\u003e \u003cp\u003e\u003cb\u003e6 Adaptive Filters 263\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e6.1 Introduction 263\u003c\/p\u003e \u003cp\u003e6.2 Adaptive Filter Configurations 264\u003c\/p\u003e \u003cp\u003e6.2.1 Adaptive Prediction 264\u003c\/p\u003e \u003cp\u003e6.2.2 System Identification or Direct Modeling 265\u003c\/p\u003e \u003cp\u003e6.2.3 Noise Cancellation 265\u003c\/p\u003e \u003cp\u003e6.2.4 Equalization 266\u003c\/p\u003e \u003cp\u003e6.3 Performance Function 267\u003c\/p\u003e \u003cp\u003e6.3.1 Visualizing the Performance Function 269\u003c\/p\u003e \u003cp\u003e6.4 Searching for the Minimum 270\u003c\/p\u003e \u003cp\u003e6.5 Least Mean Squares Algorithm 270\u003c\/p\u003e \u003cp\u003e6.5.1 LMS Variants 272\u003c\/p\u003e \u003cp\u003e6.5.2 Normalized LMS Algorithm 272\u003c\/p\u003e \u003cp\u003e6.6 Programming Examples 273\u003c\/p\u003e \u003cp\u003e6.6.1 Using CMSIS DSP Function arm_lms_f32() 280\u003c\/p\u003e \u003cp\u003eIndex 299\u003c\/p\u003e   \u003cp\u003e\u003cb\u003eDONALD S. REAY\u003c\/b\u003e is lecturer in electrical engineering at Heriot-Watt University in Edinburgh, Scotland. He has also taught hands-on DSP, on a number of occasions, as a visiting lecturer at Zhejiang University in Hangzhou, China. He co-authored \u003ci\u003eDigital Signal Processing and Applications with the TMS320C6713 and TMS320C6416 DSK, Second Edition\u003c\/i\u003e (Wiley, 2008) with Rulph Chassaing, and is the author of \u003ci\u003eDigital Signal Processing and Applications with the OMAP-L138 eXperimenter\u003c\/i\u003e (Wiley, 2012).    \u003c\/p\u003e\u003cp\u003e\u003cb\u003eFeatures inexpensive ARM\u003csup\u003e®\u003c\/sup\u003e Cortex\u003csup\u003e®\u003c\/sup\u003e-M4 microcontroller development systems available from Texas Instruments and STMicroelectronics\u003c\/b\u003e \u003c\/p\u003e\u003cp\u003eThis book presents a hands-on approach to teaching Digital Signal Processing (DSP) with real-time examples using the ARM\u003csup\u003e®\u003c\/sup\u003e Cortex\u003csup\u003e®\u003c\/sup\u003e-M4 32-bit microprocessor. Real-time examples using analog input and output signals are provided, giving visible (using an oscilloscope) and audible (using a speaker or headphones) results. Signal generators and\/or audio sources, for example, iPods, can be used to provide experimental input signals. The text also covers the fundamental concepts of digital signal processing such as analog-to-digital and digital-to-analog conversion, FIR and IIR filtering, Fourier transforms, and adaptive filtering. \u003c\/p\u003e\u003cp\u003e\u003ci\u003eDigital Signal Processing Using the ARM\u003csup\u003e®\u003c\/sup\u003e Cortex\u003csup\u003e®\u003c\/sup\u003e-M4\u003c\/i\u003e: \u003c\/p\u003e\u003cul\u003e \u003cli\u003eUses a large number of simple example programs illustrating DSP concepts in real time, in an electrical engineering laboratory setting\u003c\/li\u003e \u003cli\u003eIncludes examples for both STM32F407 Discovery and the TM4C123 LaunchPad, using Keil MDK-ARM, on a companion website\u003c\/li\u003e \u003cli\u003eExample programs for the TM4C123 LaunchPad using Code Composer Studio version 6 available on a companion website\u003c\/li\u003e \u003c\/ul\u003e \u003cp\u003e\u003ci\u003eDigital Signal Processing Using the ARM\u003csup\u003e®\u003c\/sup\u003e Cortex\u003csup\u003e®\u003c\/sup\u003e-M4\u003c\/i\u003e serves as a teaching aid for university professors wishing to teach DSP using laboratory experiments and for students or engineers wishing to study DSP using the inexpensive ARM\u003csup\u003e®\u003c\/sup\u003e Cortex\u003csup\u003e®\u003c\/sup\u003e-M4.\u003c\/p\u003e","brand":"Wiley","offers":[{"title":"Default Title","offer_id":47989068595429,"sku":"NP9781118859049","price":97.95,"currency_code":"USD","in_stock":false}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1842\/7735\/files\/9781118859049.jpg?v=1761782664","url":"https:\/\/k12savings.com\/es\/products\/digital-signal-processing-using-the-arm-cortex-m4-isbn-9781118859049","provider":"K12savings","version":"1.0","type":"link"}