lab 1 code

Dependencies:   CMSIS-DSP_for_STM32F746G BSP_DISCO_F746NG

Committer:
justenmg
Date:
Tue Jan 28 22:23:00 2020 +0000
Revision:
34:5bf89ab5e247
Parent:
31:5a0235b66851
Initial commit

Who changed what in which revision?

UserRevisionLine numberNew contents of line
bmazzeo 23:d938f87dd1ee 1 /**
bmazzeo 23:d938f87dd1ee 2 ******************************************************************************
bmazzeo 23:d938f87dd1ee 3 * @file signal_processing.c
bmazzeo 23:d938f87dd1ee 4 * @author Brian Mazzeo
bmazzeo 23:d938f87dd1ee 5 * @date 2020
bmazzeo 23:d938f87dd1ee 6 * @brief This file provides a set of code for signal processing in 487.
bmazzeo 23:d938f87dd1ee 7 * Parts are taken from example code from STMIcroelectronics
bmazzeo 23:d938f87dd1ee 8 ******************************************************************************
bmazzeo 23:d938f87dd1ee 9 * @attention
bmazzeo 23:d938f87dd1ee 10 * This code was specifically developed for BYU ECEn 487 course
bmazzeo 23:d938f87dd1ee 11 * Introduction to Digital Signal Processing.
bmazzeo 23:d938f87dd1ee 12 *
bmazzeo 23:d938f87dd1ee 13 *
bmazzeo 23:d938f87dd1ee 14 ******************************************************************************
bmazzeo 23:d938f87dd1ee 15 */
bmazzeo 23:d938f87dd1ee 16
bmazzeo 23:d938f87dd1ee 17 #include "mbed.h"
bmazzeo 23:d938f87dd1ee 18 #include "stm32746g_discovery_lcd.h"
bmazzeo 24:9ac1187f9012 19 #include "arm_math.h"
bmazzeo 24:9ac1187f9012 20
bmazzeo 24:9ac1187f9012 21
bmazzeo 25:5412779376a7 22 /**
bmazzeo 25:5412779376a7 23 * @brief Initialize filter structures to be used in loops later
bmazzeo 25:5412779376a7 24 * @retval None
bmazzeo 25:5412779376a7 25 */
bmazzeo 25:5412779376a7 26 void initalize_signal_processing(void) {
bmazzeo 25:5412779376a7 27 }
bmazzeo 23:d938f87dd1ee 28
bmazzeo 23:d938f87dd1ee 29 /**
bmazzeo 23:d938f87dd1ee 30 * @brief Process audio channel signals
bmazzeo 23:d938f87dd1ee 31 * @param L_channel: Pointer to Left channel data (float)
bmazzeo 23:d938f87dd1ee 32 * @param R_channel: Pointer to Right channel data (float)
bmazzeo 23:d938f87dd1ee 33 * @param Signal_Length: length of data to process
bmazzeo 23:d938f87dd1ee 34 * @retval None
bmazzeo 23:d938f87dd1ee 35 */
bmazzeo 23:d938f87dd1ee 36 void process_audio_channel_signals(float* L_channel, float* R_channel, uint16_t Signal_Length)
bmazzeo 23:d938f87dd1ee 37 {
justenmg 34:5bf89ab5e247 38 float scale = 100;
justenmg 34:5bf89ab5e247 39 for(uint16_t ii = 0; ii < Signal_Length; ii++)
justenmg 34:5bf89ab5e247 40 {
justenmg 34:5bf89ab5e247 41 *L_channel = *L_channel/scale;
justenmg 34:5bf89ab5e247 42 L_channel++;
justenmg 34:5bf89ab5e247 43 }
justenmg 34:5bf89ab5e247 44
bmazzeo 23:d938f87dd1ee 45 }