15
Morse Code Group David Fong James Ky Anthony Wasano Jay Yu http:// morsecodegroup.blogspot.com

Morse Code Group David Fong James Ky Anthony Wasano Jay Yu

  • View
    213

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Morse Code Group David Fong James Ky Anthony Wasano Jay Yu

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

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

His Current Input System

All That To Type “IT D…..”

Page 4: Morse Code Group David Fong James Ky Anthony Wasano Jay Yu

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

Block Diagram

Page 6: Morse Code Group David Fong James Ky Anthony Wasano Jay Yu

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

Straight Key

Page 8: Morse Code Group David Fong James Ky Anthony Wasano Jay Yu

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

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

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

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

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

Potential Problems

Adaptation algorithm Robustness/reliability (testing) Physical implementation

Page 14: Morse Code Group David Fong James Ky Anthony Wasano Jay Yu

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

Thank you, any questions?