
























Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
The guitar chord learning system (gcls) is an educational tool designed to teach individuals basic guitar chord positioning techniques. The system retrieves user input from a computer terminal program, downloads the chord sequence information into the microcontroller unit, and displays the chord positions on an embedded led fretboard output. The user can learn any desired song by obtaining chord progression sequences from the internet, making it an effective tool for independent learning.
Typology: Study Guides, Projects, Research
1 / 32
This page cannot be seen from the preview
Don't miss anything!

























INTRODUCTION
The ability to utilize a six stringed instrument as a medium to express soul, energy, and internal emotions has given individuals the desire to learn how to play the guitar. This instrument, however, is generally difficult to learn and difficult to teach. Beginners often become discouraged and lose interest after battling the frustration of learning basic guitar chord positions. I propose to develop a system that will eliminate this displeasure. The Guitar Chord Learning System (GCLS) will be an educational tool designed to teach individuals basic guitar chord positioning techniques. This system will not only eliminate the hassle of using chord positioning look-up tables, but it will also give the user an opportunity to acquire guitar playing skills while supplementing, or even replacing, traditional one-on-one guitar lessons. Chord progression patterns from a song would be typed into a user interface on a PC and downloaded into the GCLS. The GCLS would then output the proper finger positions utilizing a matrix of LEDs embedded into the fretboard. A foot switch would change the chord position output with respect to the downloaded chord progression. This system will give the user the ability to learn any desired song by obtaining chord progression sequences from the internet. Because the GCLS can be used as a form of independent learning, the user will be able to grasp and improve guitar chord skills at his or her pace.
Guitar withLED Display
Guitar Chord Learning System
Foot Pedal -Switches Chord Display
On/OffSwitch
LCD Display -Displays Current Chord Position -Displays Channel and Chord Sequence
Connected toDesktop Computer
LED Fretboard Display -First 4 frets
Channels 1 - Verse 2 - Chorus3 - Bridge
1 st^ Fret 2 nd^ Fret
3 rd^ Fret 4 th^ Fret
6 5 4 Strings (^321) Embedded LED
Figure 2 displays the preliminary product sketch of the GCLS. As shown in this diagram, the GCLS unit will involve three I/O peripheral systems: the foot pedal, LED fretboard display, and desktop computer connection. The microcontroller unit governing this embedded system will be enclosed in a chassis containing the LCD display and power switch.
Figure 2: GCLS Product Sketch The Embedded LED diagram, illustrated in Figure 2, depicts the fretboard configuration. The LED array contains a 4 x 6 matrix embedded into the guitar fretboard, which is connected to the GCLS chassis. Each individual LED represents the string and fret position on the guitar fretboard respectively. The embedded LED fretboard will be further examined later in this document.
Width = 6”
Height = 5”
Length = 8” Width = 4”
Height = 3”
Length = 6”
Figure 3a displays the product sketch of the GCLS chassis unit with its maximum dimensions. This metal chassis will serve as a durable enclosure to protect all of the components housed: the microcontroller unit and external circuitry. The power switch, LED fretboard connection, foot pedal connection, power supply, and the serial port connection are located on the chassis.
(a) GCLS Chassis (b) Foot Pedal Unit Figure 3: Maximum Dimensions of Product The foot pedal unit is represented in Figure 3b with its maximum dimensions. This unit consists of the foot pedal and the three channel buttons as previously described in Figure 2. The foot pedal unit will be further explained in the User Interface Description.
The detailed functional block diagram displays the resources that will be utilized in the GCLS. As represented, the 9S12 will receive data input from the computer terminal via the Serial Communications Interface (SCI), and the foot pedal input signals will be sent to Port T. Port A and Port K will control the LCD screen, and the Serial Peripheral Interface (SPI) will control the embedded LED fretboard output. Asynchronous serial communication between the 9S12 and the PC will be established through the SCI. The guitar chord sequence information will be transmitted to the SCI through the RS232 serial port connection from the PC. The I/O pin connections in the SCI include the RX Data In (RXD) and the TX Data Out (TXD) as displayed in Figure 4. The foot pedal, which controls the LED fretboard display and channel selection, is essentially a unit made up of switches. Therefore, the high or low signals set by the user will be detected by Port T, as shown in the detailed functional block diagram. Because the foot pedal is an input peripheral unit in the GCLS, the Data Direction Register of Port T will be configured appropriately. A 2-line by 20-character LCD module will be implemented to display GCLS output information. The LCD module will receive information from 8 pins connected to Port A and 3 pins connected to Port K, as depicted in Figure 4. The display information will be further examined in the User Interface description.
The embedded LED fretboard will be controlled by the 9S12 through the SPI. An LED Driver specifically designed for activating LEDs individually within an array will be utilized, such as the MAX7221 Serially Interfaced LED Display Driver produced by Maxim. The LED Driver will be connected to the following output SPI connections: the select signal (/SS), clock (SCK), and MOSI. Surface-mount LEDs will be implemented for space efficiency management. The other resources in the 9S12 utilized, as represented in the block diagram, include the /Reset, XTAL, and BDM in. Because the 9S12 contains an on-chip power-on detector circuit, the reset circuitry connected to /Reset will only consist of a pull-up resistor tied to the 5 volt source. The 9S12 will be clocked by a 16 MHz crystal through the XTAL, and the BDM in will be connected to the Noral BDM connector to load the final program into the 256K byte Flash EEPROM. The microcontroller and external circuitry of the GCLS will be powered by a wall transformer power supply. The wall transformer power supply will require a steady 5 volt DC output, 120 volt AC input, and a 1.0 A maximum output current.
FRET_DISPLAY Sends data to the LED driver, thus controlling the LED fretboard output display. This module utilizes user input information stored and translated by the CHORD_TABLE module. LCD_DISPLAY Governs the LED fretboard output information displayed on the LCD module. This information includes the current chord position, channel selected, and chord progression sequence data. PEDAL_DETECT Detects the user input information from the foot pedal unit. The selected channel and next chord state will be detected in this module. BASICIO Written by Professor Morton, the BASICIO module will be responsible for translating user input from the INTERFACE module and the terminal program output display.
The user interface of the GCLS can be organized into two categories: the user input interaction and the output display system. The input system includes the terminal program which communicates with the GCLS and the foot pedal unit which governs the chord position change. The output display system includes the LCD display attached to the GCLS unit and the LED fretboard display. As previously described, the terminal program allows the user to input guitar chord sequence information into three channel locations. Figure 5 displays the start up menu display of the user interface terminal program. The menu prompts the user to either select a channel to view for editing or exit.
Guitar Chord Learning System Select Channel to View Chord Sequence 1)2) ChannelChannel (^12) 3)4) ChannelClear All (^3) **Channels
Figure 5: Program Terminal - Menu
Edit? <Y / N > : Y Enter Chord Progression Sequence: █
Figure 7: Program Terminal – Edit Channel Chord sequence input is entered into the user interface until a carriage return is detected. Each chord is separated by “white space” in the sequence information, as shown in Figure 8. For this example, the chord patterns for the verse of a song will be entered into Channel 1: Am, C, and G.
Edit? <Y / N > : Y Enter Chord Progression Sequence: Am C G Channel 1 – Chord Sequence Stored: Am C G Edit? <Y / N >: █
Figure 8: Program Terminal – Channel Input As displayed in Figure 8, the updated channel information is displayed after the sequence input is entered. The user is then given the option to edit the channel once again. This process continues, until the user is satisfied with all channel input conditions.
CHORD: Am CH: 1 SEQ: C G
Present Chord
Chord Progression Sequence
Channel Selected
CHORD: G CH: 1 SEQ: Select Channel
The foot pedal unit consists of four different switches as discussed in the Hardware Description. The single step pedal allows the user to advance through each chord position in the progression sequence. This information is displayed on the LCD screen and LED fretboard. Separate chord progression sequences are stored into three separate channels and can be accessed by selecting the appropriate channel switch.
Figure 9: LCD display Figure 9 depicts the LCD display. The LCD display enables the user to obtain information regarding the current chord position, channel selected, and next chords in the chord progression sequence stored in the selected channel. Figure 10 illustrates how the user is prompted to select the next channel at the end of the chord progression. Figure 11 displays an example of the overall user interface system.
Figure 10: LCD display – End of Sequence
DEVELOPMENT PLAN
The project development tasks required for the GCLS can be organized into hardware and software development tasks. The hardware development tasks include: a task for constructing the embedded LED fretboard, a task for interfacing the fretboard with the LED driver and 9S12, and a task for constructing the foot pedal unit, chassis and PCB layout. The software development tasks include: a task for establishing a computer terminal user interface, a task for initializing output communication with the 9S12, which involves controlling the LCD module and LED driver, and a task for developing the digital guitar chord look-up table.
All hardware and software development tasks will be performed in Western Washington University’s Electronics Engineering Technology laboratory facilities in the Engineering Technology Department building. These facilities have all of the equipment necessary for development of the GCLS prototype.
The equipment necessary for the hardware development includes the mixed-signal oscilloscope, power supply, and digital multimeter. An LED array test circuit will be constructed utilizing this equipment before the full development of the LED fretboard prototype, which will be discussed in the Prototype Description. Simple switching circuitry will also be constructed to replicate the foot pedal input prior to prototype development. The software development tools required include the Noral debugging pod, PC, CodeWrite software, and C compiler. All software, as discussed in the Software Description, will be written in C and assembly language. I will be enrolled in Western Washington University’s Embedded Systems course during Winter Quarter to learn how to write code for the 9S12 using the C language.
The prototype will resemble the GCLS image represented earlier in Figure
The foot pedal input device is a unit made up of switches. To avoid manufacturing such a unit from scratch, a sewing machine pedal will be implemented in the prototype foot pedal construction with added channel selection buttons. The GCLS prototype will be displayed during the Senior Project Demonstration Day at the end of Spring Quarter. During the senior project demonstration, a chord look-up chart will be provided for the audience to observe. This chart is illustrated in the Appendix of this document. A list of guitar chord websites and songs will also be compiled to demonstrate how the internet can be used as an inexpensive tool to acquire chord sequence input for the GCLS.