Group 5 Shaun Caraway EE Matt Evens EE Jan Nevarez CpE Motivation and Value of Project Goals Professional grade audio quality Low noise high resolution etc Able to process a guitar signal in realtime with less than 3 ID: 760678
Download Presentation The PPT/PDF document "Digital Guitar Effects" is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.
Slide1
Digital Guitar Effects
Group 5
Shaun Caraway, EE
Matt Evens, EE
Jan Nevarez, CpE
Slide2Motivation and Value of Project
Slide3Goals
Professional grade audio quality (Low noise, high resolution, etc.)
Able to process a guitar signal in real-time with less than 3
ms
of latency
Simple user interface
Include common effects used by guitarist. Reverb, distortion, etc.
Slide4Specifications
Less
than
3 ms of
latency
16 bit 44.1kHz
Maximum input 2
Vpp
Line
level
output of 1.228
Vrms
Headphone
output
impedance
less
than
50
Ω
Slide5Over all System Design
ATMEL ATSAM3X8E
WM8731
CODEC
LM1085 3.3V
JTAG INTERFACE
MSP430G2553
ATMEGA328P
LM1085 3.3V
LM1085 5V
JTAG INTERFACE
CONTROLS
DISPLAY
I2C (TW)
I2C (TW)
GPIO
I2C (TW)
SPI
SPI
Audio Processing Subsystem
User Interface Subsystem
Slide6Algorithms
Slide7Algorithms
DelayUsed to create an “echo” type of sound.y(n) = x(n) + [x(n – D) + G*y(n – D)]
S
S
x
(n)
y(n)
1
1
Z^-n
Slide8Algorithms
Reverb
Simulates sound being played in a large room or hallway.
Most intense algorithm. Pushed the limits of the ATMEL SAM 3X8E
Uses parallel combination of Comb filters in series with all pass filters.
Slide9Algorithms
Reverb
All Pass Filter
y(n) = -
gx
(n) + x(n – D) +
gy
(n – D)
Comb Filter
y(n) = x(n – D) +
gy
(n –
D
)
Low Pass Comb Filter
y(n) = x(n – D) – g2x(n – D – 1) + g2y(n – 1) + g1y(n – D)
Where g = g2/(1-g1), with g < 1.0
Slide10Algorithms
Reverb
Pre-Delay
LPF1
APF1
APF2
Comb 1
Comb 2
LPFComb 3
LPFComb 4
APF3
LPF2
S
x(n)
y(n)
Slide11Algorithms
ChorusMeant to simulate multiple instruments playing together.Generally used to “thicken” the sound.y(n) = a1x(n) + Gx(n – D(n))
Slide12Algorithms
CompressorMeant to control the dynamics of incoming signaly(n) = x(n) + [x(n – D) + G*y(n – D)]
Slide13Algorithms
DistortionUsed to purposefully distort the incoming guitar signal. Known as a static wave shapper.y(n) = arctan(x(n))
Slide14Hardware
Slide15User Interface Subsystem Microprocessors
MSP430G2553IPW28Program Memory16KBSpeed16MHzIO24I2CSerial Communication interface Compatible with TWOperating Voltage3.3V
ATmega328P AVRProgram Memory32 KbytesSpeed20MHzIO23TWSerial Communication interface Compatible with I2CSPISerial Communication Operating Voltage5V
Slide16User Interface Subsystem Schematic
Slide17User Interface
Subsystem Schematic
V
User Interface Subsystem PCB
Slide19User Interface Subsystem PCB
MSP430-JTAG connection
I2C Terminal Block
MSP430G2553
ATMEGA328P
Controls Terminal Block
LCD module Terminal Block
Push Button
Voltage Regulators
Slide20Audio Processing Subsystem
SAM3X8E Cortex-M3Program Memory512 KbytesSpeed84MHzI/O Lines1032xTWSerial Communication interface Compatible with I2CSPISerial Communication CPU CoreARMOperating Voltages3.3 and 1.95 V
Slide21Audio Processing Subsystem Schematic
Slide22Audio Processing Subsystem Schematic
Slide23Audio Processing Subsystem Schematic
Hz
Audio Processing Subsystem PCB
Slide25Audio Processing Subsystem PCB
ATMSAM3X8E JTAG-Interface/ Configuration
ATMSAM3X8E Microcontroller
WM8731 Audio CODEC
I2C/TW Terminal Block
Audio Input
Line Output
Headphone Output
Voltage Regulator
Slide26Power Requierments
0.49137
0.1489
0.68637
0.195
0.039
Slide27Power Requierments
LM1085 LDO
regulator seriesV in Max27 voltsV out3.3, 5 voltsDrop Out Voltage1.3 voltsI out Max3 amps
Enercell
AC Adapter
CAT-NO 273-333
Input
100-240V AC 50/60Hz 0.5Amps
Output
7.5V DC
2 Amps
Slide28Original DSP Subsystem
Slide29Original User Interface Subsystem PCB
Slide30Software
Slide31Software Overview
User InterfaceAllow for controlDisplay Menu OptionsSignal Interrupts
Audio Processing SoftwareModel AmplifierModel EffectsAllow for various parameter changes
I2C Bus
Slide32User Interface Subsystem
Written in C language
MSP430 used
Energia
IDE
ATmega328 used Arduino IDE
Push
buttons
generate interrupts
Generates binary coded commands
MSP430 Transmits to the screen controlled by the ATmega328 and the Audio Processing Subsystem over the I2C bus
Slide33User Interface Subsystem
Codes for the Audio Processing
Codes for the Screen Subsystem
Slide34User Interface Subsystem
void
initSetup ()void I2CTransmite()void navigate()void pushButton()void menuSetup()int main()
Main
void
SPIConfig()void sendData()int main()
I2C
void
init()void interrupt()int main()
Buttons
void
initSetup ()void downButton()void upButton()void forwardButton()void backButton()void whatToDo()int main()
Menu
void
initSetup ()void changeDisplay()void onRecieve() int main()
LCD Controller
Slide35Audio Processing Subsystem
Writing in C via Atmel studios
Model Amplifiers/Effects
Communicates to the Codec through the SPI peripheral
Programs the Codec through the I2C bus
Receives controller codes through I2C bus
Slide36Audio Processing Subsystem
void
initSetup ()void I2CReceive ()void modelAmplifier()void modelEffects()void SPItransmit()void SPIreceive()int main()
Main
void
SPIConfig()void tranSmiteData()void receiveData()int main()
SPI
void
I2CSPConfig
() void
receiveData()void transmitData()int main()
I2C
void
initSetup
()
void
changeGain
()
v
oid changeBass()void changeMid()void changeVolume()int main()
Amplifier
void
initSetup()void changeGain()Void changeInterval() int main()
Effects
Slide37Administrative
Slide38Distribution of Responsibilities
Slide39Project Challenges
Digital Signal Processing
Doing multiple double and
int
multiplication and division
Preventing noise on the distortion effect
Learning the PCB CAD software
Hardware
Debuging
Challenges
Slide40Project Challenges - User Interface
POWER TRACE
GROUN PIN
VIA TO GROUND
Slide41Project Challenges - Audio Processing
JTAG Configuration – According to data sheetSignalStateFWUPHINRSTBHIJTAGSELHITSTLO
JTAG Configuration – WorkingSignalStateFWUPHINRSTBHIJTAGSELLOTSTLO
JTAGSEL
TST
Slide42Project Challenges - Audio Processing
DATA
CLOCK
CUT TRACES
Slide43Budget
Slide44Questions?
Slide45Copy this slide
Lorem
ipsum
dolor sit
amet
,
consectetuer
adipiscing
elit
.
Vivamus
et magna.
Fusce
sed
sem
sed
magna
suscipit
egestas
.
Lorem
ipsum
dolor sit
amet
,
consectetuer
adipiscing
elit
.
Vivamus
et magna.
Fusce
sed
sem
sed
magna
suscipit
egestas
.
Lorem
ipsum
dolor sit
amet
,
consectetuer
adipiscing
elit
.
Vivamus
et magna.
Fusce
sed
sem
sed
magna
suscipit
egestas
.
Slide46Current Progress
Slide47Milestones