Aaron Worob
Create a program using the Blackfin BF533 that allows the user to “move” the source of input sound.
PF9: Move Left Direction PF10: Return to Center PF11: Move Right Direction Lights indicate which of the 6 speakers are “on.” 1:Front Left 2:Front Right 3:Front Center 4:Back Center 5:Back Left 6:Back Right
TWI vs TDM TDM is used as TWI does not allow all 3 output channels to be used. SW9 pins 5 and 6 MUST be switched off to allow TDM mode
9 Total “Zones” Switch/Case statements used Zone #Active Speaker ChannelsZone Name 0Back Right, Back Center;Back Right 1Front Right, Back Right;Pure Right 2Front Center, Front Right;Front Right 3Front Right, Front Center, Front Left;Front 4 Front Left, Front Center, Front Right; Back Left, Back Center, Back Right;Center 5Front Left, Front Center;Front Left 6Front Left, Back Left;Pure Left 7Back Left, Back Center;Back Left 8Back Left, Back Center, Back Right;Back SpeakerChannel Front LeftiChannel0Left Front RightiChannel0Right Front CenteriChannel1Left Back CenteriChannel1Right Back LeftiChannel2Left Back RightiChannel2Right
Light Address Table FLFRFBBLBRFlash Address x x x x x3F x x x x38
Modified TDM Talkthrough Example Initialize Init_Flash ▪ Added *pFlashA_PortB_Dir = 0x3f; to initialize the Flash Memory for the lights Init_Interrupts ▪ Modified SIC values to allow buttons and sound ▪ Added register handler for Button Flags Init_Flags ▪ Added entire function to initialize flags for buttons
ISR Added variables for Channel 2 Left and Right Out. Added Interrupt Handler for FlagA ▪ Created algorithm to handle button presses ▪ Included switch/case for lights in FlagA interrupt handler Main Added Init_Flags(); Added variables for counter, and Channel 2 Left and Right out
Process_Data Created Switch/Case algorithm to change zones when buttons are pressed Added Prototype Functions and Variables to header “Talkthrough.h”
Thank you for your time and consideration.