![Page 1: Morse Code Group David Fong James Ky Anthony Wasano Jay Yu](https://reader036.vdocuments.net/reader036/viewer/2022081603/56649d4c5503460f94a29ab1/html5/thumbnails/1.jpg)
Morse Code Group
David FongJames KyAnthony WasanoJay Yu
http://morsecodegroup.blogspot.com
![Page 2: Morse Code Group David Fong James Ky Anthony Wasano Jay Yu](https://reader036.vdocuments.net/reader036/viewer/2022081603/56649d4c5503460f94a29ab1/html5/thumbnails/2.jpg)
Makia Malo Reminder
World Renowned Storyteller/Writer Hansen’s disease (formally known
as Leprosy) Blind No feelings from his hands (cannot
read Braille) Sent to Kalaupapa at the age of 12 Enrolled at UH at 37, graduated
with bachelor’s degree in Hawaiian Studies and certificate in teaching
![Page 3: Morse Code Group David Fong James Ky Anthony Wasano Jay Yu](https://reader036.vdocuments.net/reader036/viewer/2022081603/56649d4c5503460f94a29ab1/html5/thumbnails/3.jpg)
His Current Input System
All That To Type “IT D…..”
![Page 4: Morse Code Group David Fong James Ky Anthony Wasano Jay Yu](https://reader036.vdocuments.net/reader036/viewer/2022081603/56649d4c5503460f94a29ab1/html5/thumbnails/4.jpg)
Overview
We are making a USB input device that uses Morse code
Cheap Small Simple Easy to repair and duplicate
![Page 5: Morse Code Group David Fong James Ky Anthony Wasano Jay Yu](https://reader036.vdocuments.net/reader036/viewer/2022081603/56649d4c5503460f94a29ab1/html5/thumbnails/5.jpg)
Block Diagram
![Page 6: Morse Code Group David Fong James Ky Anthony Wasano Jay Yu](https://reader036.vdocuments.net/reader036/viewer/2022081603/56649d4c5503460f94a29ab1/html5/thumbnails/6.jpg)
Arm Controller
Includes Philips LPC2103 Microcontroller with 32kb Internal Flash Program Memory
Operating Speed up to 58.9824MHz
Programming in C (Keil uVision)
![Page 7: Morse Code Group David Fong James Ky Anthony Wasano Jay Yu](https://reader036.vdocuments.net/reader036/viewer/2022081603/56649d4c5503460f94a29ab1/html5/thumbnails/7.jpg)
Straight Key
![Page 8: Morse Code Group David Fong James Ky Anthony Wasano Jay Yu](https://reader036.vdocuments.net/reader036/viewer/2022081603/56649d4c5503460f94a29ab1/html5/thumbnails/8.jpg)
Morse Code Module
Morse Code Data Structure Morse Entry Morse Code Reading Morse Code Table
![Page 9: Morse Code Group David Fong James Ky Anthony Wasano Jay Yu](https://reader036.vdocuments.net/reader036/viewer/2022081603/56649d4c5503460f94a29ab1/html5/thumbnails/9.jpg)
Morse Code Data Structuretypedef enum DitDah {DIT, DAH, EMPTY} DitDah;
#define MAXSIZE 7
typedef struct MorseCode{
DitDah elements[MAXSIZE];int size;
} Morse;
•Morse Code Structure has it’s own enumerated type which can be DIT, DAH, or EMPTY
•Size keeps track of the number of elements in the Current Morse Structure
•Other functions support this structure and modify it
![Page 10: Morse Code Group David Fong James Ky Anthony Wasano Jay Yu](https://reader036.vdocuments.net/reader036/viewer/2022081603/56649d4c5503460f94a29ab1/html5/thumbnails/10.jpg)
Morse Structure FunctionMorse clear_morse(Morse key);
Morse add_morse_dit(Morse key);
Morse add_morse_dah(Morse key);
Morse fill_rest_empty(Morse key);
• clear_morse initializes the structure array so all EMPTY, this is normally called when a new Morse sequence is started
• add_morse_dit adds a DIT to the array and increments size
• add_morse_dah adds a DAH to the array and increments size
• fill_rest_empty is called on when input of current Morse sequence is stopped and fills the rest of the array to empty
![Page 11: Morse Code Group David Fong James Ky Anthony Wasano Jay Yu](https://reader036.vdocuments.net/reader036/viewer/2022081603/56649d4c5503460f94a29ab1/html5/thumbnails/11.jpg)
Morse Code Readingint compare_morse(Morse key);
void init_key_output_table(USBOutput KeyTable[MAXKEY]);
USBOutput find_usb_output(int keynumber,USBOutput KeyTable[MAXKEY]);
•Init_key_output_table initializes the USB output table array
•Not sure what output are so far, the table is Integers for now
•compare_morse iterates through the Morse Code Table array and returns a number that corresponds to it
•find_usb_output returns the output needed from Table
![Page 12: Morse Code Group David Fong James Ky Anthony Wasano Jay Yu](https://reader036.vdocuments.net/reader036/viewer/2022081603/56649d4c5503460f94a29ab1/html5/thumbnails/12.jpg)
Morse Code Tableconst static DitDah MorseTable[MAXKEY][MAXSIZE] =
{{DIT,DAH,EMPTY,EMPTY,EMPTY,EMPTY,EMPTY}, /* A */{DAH,DIT,DIT,DIT,EMPTY,EMPTY,EMPTY}, /* B */{DAH,DIT,DAH,DIT,EMPTY,EMPTY,EMPTY}, /* C */{DAH,DIT,DIT,EMPTY,EMPTY,EMPTY,EMPTY}, /* D */{DIT,EMPTY,EMPTY,EMPTY,EMPTY,EMPTY,EMPTY}, /* E */{DIT,DIT,DAH,DIT,EMPTY,EMPTY,EMPTY}, /* F */{DAH,DAH,DIT,EMPTY,EMPTY,EMPTY,EMPTY}, /* G */{DIT,DIT,DIT,DIT,EMPTY,EMPTY,EMPTY}, /* H */{DIT,DIT,EMPTY,EMPTY,EMPTY,EMPTY,EMPTY}, /* I */{DIT,DAH,DAH,DAH,EMPTY,EMPTY,EMPTY}, /* J */{DAH,DIT,DAH,EMPTY,EMPTY,EMPTY,EMPTY}, /* K */{DIT,DAH,DIT,DIT,EMPTY,EMPTY,EMPTY}, /* L */{DAH,DAH,EMPTY,EMPTY,EMPTY,EMPTY,EMPTY}, /* M */{DAH,DIT,EMPTY,EMPTY,EMPTY,EMPTY,EMPTY}, /* N */
![Page 13: Morse Code Group David Fong James Ky Anthony Wasano Jay Yu](https://reader036.vdocuments.net/reader036/viewer/2022081603/56649d4c5503460f94a29ab1/html5/thumbnails/13.jpg)
Potential Problems
Adaptation algorithm Robustness/reliability (testing) Physical implementation
![Page 14: Morse Code Group David Fong James Ky Anthony Wasano Jay Yu](https://reader036.vdocuments.net/reader036/viewer/2022081603/56649d4c5503460f94a29ab1/html5/thumbnails/14.jpg)
Gantt Chart09
-01-
06
09-1
5-06
09-2
9-06
10-1
3-06
10-2
7-06
11-1
0-06
11-2
4-06
12-0
8-06
Meeting with Makia
Ordering parts
Programming 3 buttons
Programming 2 buttons
Programming 1 buttons
Overall programming controller
Programming USB controller
Making the final product
Completed Remaining
![Page 15: Morse Code Group David Fong James Ky Anthony Wasano Jay Yu](https://reader036.vdocuments.net/reader036/viewer/2022081603/56649d4c5503460f94a29ab1/html5/thumbnails/15.jpg)
Thank you, any questions?