CA2109413C - Sports training device - Google Patents

Sports training device Download PDF

Info

Publication number
CA2109413C
CA2109413C CA002109413A CA2109413A CA2109413C CA 2109413 C CA2109413 C CA 2109413C CA 002109413 A CA002109413 A CA 002109413A CA 2109413 A CA2109413 A CA 2109413A CA 2109413 C CA2109413 C CA 2109413C
Authority
CA
Canada
Prior art keywords
jsr
lda
sta
sportsperson
movements
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CA002109413A
Other languages
French (fr)
Other versions
CA2109413A1 (en
Inventor
Ronald Gerry Dawson
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Publication of CA2109413A1 publication Critical patent/CA2109413A1/en
Application granted granted Critical
Publication of CA2109413C publication Critical patent/CA2109413C/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B69/00Training appliances or apparatus for special sports
    • A63B69/36Training appliances or apparatus for special sports for golf
    • A63B69/3623Training appliances or apparatus for special sports for golf for driving
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B71/00Games or sports accessories not covered in groups A63B1/00 - A63B69/00
    • A63B71/06Indicating or scoring devices for games or players, or for other sports activities
    • A63B71/0686Timers, rhythm indicators or pacing apparatus using electric or electronic means
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B24/00Electric or electronic controls for exercising apparatus of preceding groups; Controlling or monitoring of exercises, sportive games, training or athletic performances
    • A63B24/0003Analysing the course of a movement or motion sequences during an exercise or trainings sequence, e.g. swing for golf or tennis
    • A63B24/0006Computerised comparison for qualitative assessment of motion sequences or the course of a movement
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B24/00Electric or electronic controls for exercising apparatus of preceding groups; Controlling or monitoring of exercises, sportive games, training or athletic performances
    • A63B24/0003Analysing the course of a movement or motion sequences during an exercise or trainings sequence, e.g. swing for golf or tennis
    • A63B24/0006Computerised comparison for qualitative assessment of motion sequences or the course of a movement
    • A63B2024/0012Comparing movements or motion sequences with a registered reference
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B24/00Electric or electronic controls for exercising apparatus of preceding groups; Controlling or monitoring of exercises, sportive games, training or athletic performances
    • A63B24/0003Analysing the course of a movement or motion sequences during an exercise or trainings sequence, e.g. swing for golf or tennis
    • A63B24/0006Computerised comparison for qualitative assessment of motion sequences or the course of a movement
    • A63B2024/0012Comparing movements or motion sequences with a registered reference
    • A63B2024/0015Comparing movements or motion sequences with computerised simulations of movements or motion sequences, e.g. for generating an ideal template as reference to be achieved by the user
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B71/00Games or sports accessories not covered in groups A63B1/00 - A63B69/00
    • A63B71/06Indicating or scoring devices for games or players, or for other sports activities
    • A63B71/0619Displays, user interfaces and indicating devices, specially adapted for sport equipment, e.g. display mounted on treadmills
    • A63B71/0622Visual, audio or audio-visual systems for entertaining, instructing or motivating the user
    • A63B2071/0625Emitting sound, noise or music

Landscapes

  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Physical Education & Sports Medicine (AREA)
  • Rehabilitation Tools (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Golf Clubs (AREA)

Abstract

A sports training device provides synchronisation signals to induce and guide movements of a sportsperson engaged in a sporting activity. The device comprises a digital logic computer and a tone generator, the computer logic being programmed to ac-tivate the tone generator in accordance with stimulus parameters. Means are provided to input into the computer predetermined stimulus parameters based upon a behavioural analysis of models of relevant movement sequences of the sporting activity to cause the tone generator to generate a sequence of auditory pulses having predetermined characteristics. These characteristics such as intensity, duration, quality and the like relate to movements of different parts of the body and/or provide other informa-tion concerning the particular movement. The device also includes audio output means through which the generated sounds are relayed to the sportsperson as a preview and guide to the sporting activity.

Description

SPORTS TRAINING DEVICE
The invention relates to training a sportsperson for some sporting activity and, in particular, to regulating the movements of the sportsperson engaged in that activity. The invention has applicatic>n to all kinds of sports and to a wide range of sportspersons including a novice commencing to learn the rudiments of some sport as well as someone more proficient seeking to improve performance.
Although related to the particular activity, sports training has, generall~~ speaking, followed a miscellany of procedures varying from the casual to the systematic. The latter category has invo:Lved the employment of coaches, special training facilities a:nd an assortment of sophisticated equipment. Timing an activity has been commonplace. The invention concentrates on temporal intervals between specific movements and on temporal proportionality of complex movements.
US-A-4285041 discloses a pacing timer for a runner. The timer produces a repeating tone that is intended to coincide with every alternate stride the runner takes, thus providing a reference signal allowing the runner to pace his speed during a long distance race. The timer is programmable allowing it to take into account target times, a variety of stride lengths and various speeds at which the runner will run. By increasing or decreasing the length of time between subsequent tones, the runner can alter his stride time and hence increase or decrease his speed accordingly.
US-A-3808707 discloses a physical training system that produces an audible signal generated to assist an individual to obtain optimum performance during an activity such as golf.
The audible signal varies in frequency, intensity and duration in accordance with the rate of muscle activity and with the level of muscular exertion. Thus the user of the system preprograms an ideal signal for the activity to be performed and can then match his muscle activity to the signal. The matching of muscle activity with the audible signal should produce the optimum performance the user can achieve.
US-A-3492582 discloses a method and system for providing a pace rhythm for track runners. The system comprises of an audio oscillator that produces a repeating tone against which the runner can time his stride.
In accordance with the invention, a sports training device to deliver to a sportsperson engaged in a sporting activity predetermined synchronisation signals in the form of auditory pulses to induce and guide movements of the sportsperson engaged in that sporting activity comprising a digital logic computer and a tone generator, the computer logic being programmed to activate the tone generator in accordance with stimulus timing parameters, means to input into the computer predetermined stimulus timing parameters based upon a behavioural analysis of models of the relevant sporting activity to cause the computer to activate the tone generator to generate a sequence of auditory pulses and audio output means through which the generated sounds are relayed to the sportsperson engaged in the sporting activity as a guide to the sporting activity characterised in that said stimulus timing parameters are movement timing parameters having varying characteristics indicative of the onset, temporal duration and temporal proportionality of specific movements of different parts of the body of the sportsperson engaged in a sporting activity derived from a prior behavioural analysis of movement initiation, the temporal duration of movements, and the relative proportional timing of movements, and wherein said sequence of auditory pulses have predetermined varying characteristics of intensity frequency or tonal quality or the like in order to signal the onset, temporal duration and temporal proportionality of specific movements of different body parts to be performed by the sportsperson.
Broadly, in accordance with the invention, predetermined signals are used as timing synchronizers to induce the guide the execution of movements by a sportsperson engaged in a particular sporting act=wity. The signals may be produced by an electronic device which has been programmed to generate a sequence of auditory pulses having predetermined characteristics.
In the first plar_e, the predetermined signals are dependent upon the particular sporting activity. In addition, characteristics of the sequential pulses are derived from a prior analysis of the movements involved in an appropriate sporting behaviour. Th~? prior analysis may be based upon an optimum model of performance where the sportsperson is being trained to achieve an output for which there is an accepted standard. Alternatively, the prior- analysis may be based upon a model derived from a study of the sportsperson's own behaviour. For example, the derived model may be used repetitively by that particular sportsperson in order to achieve consistency in timing. In another example, a number of models may be analysed so that the sportsperson may experiment with different timing strategies. The model may be a human one or it may bE~ mechanical.
From the analysis <>f the appropriate sporting behaviour, stimulus parameters are derived. These parameters may include the onset of movement of a body part, the duration of movement and the relative timing of movements of different parts of the body. Other information such as speed or force of movements may be included. The stimulus parameters are used to vary characteristics of the auditory pulses such as intensity or duration or quality or the like to relate to movements of different parts of the body and/or to provide other information concerning the particular movement.
The stimulus parameters are fed into a programmable computer by such means as a keyboard. The auditory pulses are relayed to the sportsper;son by audio output means . Preferably, the audio output means include an individual earpiece for each -3a-sportsperson. The audit output means may include a radio link to a remote sportsperson. In either case, timing information may be relayed directly and instantaneously to a sportsperson.
Figure 1 is a block diagram illustrating a sports training device in accordance wii~h the invention; and Figure 2a and 2b combined show a circuit diagram illustrating one embodiment of a sports training device in accordance with WO 92/21106 PCTJAU92/001z~

the invention.
Detailed Description of the Embodiments To illustrate the invention, two applications thereof will be discussed. For convenience, these applications will be identified as "sports-synch" and "sports-pacer", respectively.
A single sports training device may be designed so as to be suitable for use in both applications. Alternatively, separate devices may be designed specifically for one or other application.
The sports-synch is intended primarily for what may be described as discrete activities such as hitting a golf ball or hitting a cricket ball. Such activities can be made more precise if the onset and duration of various body movements can be signalled precisely to the sportsperson. Incidentally, those two particularised activities illustrate the flexi-bility of the sports-synch to control self-contained, intern-ally triggeredractions as occur in golf as well as actions which have external timing requirements as in cricket.
The ideal golf swing involves synchronous movement of several parts of the body. A sequential signal pattern may be based on an analysis of the golf swing using a human or mechanical model. The synchrony may be signalled to the golfer by a sequence of different auditory tones which signal the onset of movement for different body parts. Preferably, the whole sequence commences with a brief synchronous tone burst at, for example, 2 per second. This tone burst acts as an onset ~WO 92/21106 - 2-10 ~ ~ ~ ~~ PCT/AU92/00237 signal and may be triggered at the golfer's discretion. The golfer will learn which tones are the trigger far movement of particular parts of the body and will then practise to put the sequence together with the timing indicated. Thus, the 5 golfer will learn to maintain consistency in timing.
The sports-synch also has application to cricket batting strokes. Efficient stroke-play in cricket involves a multi-plicity of decisions in a short space of time. Sports-synch will enable a batsman to practise the timing of specifically identified shots. The timing sequence of the shot could be based upon an ideal model or, alternatively, on an individual model as, for example, in the case of juniors whose body proportions do not allow them to approach the ideal.
An analysis of skilled ball hitting (e. g., Bootsma and Wier-ingen, 1988) indicates that the external trigger for ball hitting is consistently related to the distance the ball is from the eyes. For this reason, the onset of the timing signals generated by a sports-synch for cricket shots will preferably be based upon an analysis of a practised profess-Tonal playing against a conventional bowling machine. Thus, unlike the sports-synch for golf,, the device for cricket is externally triggered. However, like the golfing version, the sports-synch for cricket will generate tones identifying the movement of the certain parts of the body. A batsman will learn which tones relate to particular body parts. He will then practise the shot; initially without a ball and then, ideally, with a bowling machine. Each shot will be identified WO 92/21106 ~ 1 ~ ~~ ~ ~ ~ PCT/AU92/00?i~

by a different tonal sequence and, preferably, a different onset signal for the commencement of each shot. The advantage of using the bowling machine is that the batsman could ..
practise a certain shot over and over again provided that the bowling machine is set up to deliver a ball at constant length and velocity. In this event, the timing sequence would preferably be initiated remotely from the bowling machine by, for example, a radio link. If a human bowler were to be used, the timing sequence for the shot could be initiated remotely by a third party such as a coach. Thus the timing of eacr tone would be programmed in advance from a model such that the sequence for an activity may be triggered in full from a single input. The single input trigger could be initiated manually or by a remote signal from another device such as a bowling machine. The sports-synch could also be reprogrammed by the user in order to change various features of the total event to suit the individual.
The sports-synch may be used in other activities which culmi-nate in a precise movement which has a timing prerequisite such as high-jumping, bowling a cricket ball, putting, etc.
All of these activities involve a single sequence of events which should be tailor-made and then initiated singly.' On the other hand, the sports-pacer is intended for the timing of measured repetitive movements such as occurs ~in running and swimming. The essential purpose of this device is to deliver auditory signals which are to be synchronized wits the mode of propulsion (e. g., a pace in running or a swimming WO 92/21106 ~'~ ~ ~ 1~ ~4 .~~ 3 PCT/AU92/00237 stroke) such that the pacing feature is immediately convert-ible into a measure of velocity. Thus, a sports-pacer acts as a speedometer for the athlete. The accuracy of the speedo-meter function is dependent upon measurements of the partic-ular athlete performing over set distances so that paces or strokes per distance can be converted to pulses per unit time. Given this information, it is possible to programme a training regimen for an athlete or a full race without the athlete having constantly to check a time-piece.
Preferably, the device would be flexible enough to correct for changes in terrain, simply by the athlete or coach noting the change ~in distance travelled over changes in slope of running surface. Thus, a race like a marathon could be pro-grammed from start to finish. The athlete, in full knowledge of his speed throughout the race, would be able to preset his pace for the race in advance.
An athlete would also be able to test out different strategies for racing given that the pacer would enable the athlete to race at different velocities at different stages of the race, with a precise knowledge of what those velocities are.
An application of the device which differs slightly from the prior examples is to aid in synchronizing the run-up of a bowler in cricket. Fast bowlers in particular need a precise rhythm when they bowl. A sports-pacer would be able to provide a series of pulses to pace each step in the run-up WO 92/21106 ~ ~ Q ~ 41 ~ PC'T/AU92/002'~
_ g _ and the subsequent arm movements leading to the delivery of the ball.
A sports-pacer needs to be a more flexible device than a sports-synch. The device would have inbuilt programmes of performance based, for example, upon the measurement of world-class athletes in appropriate races which can be used as a model. The device could also be based upon individual programmes over set distances.
The sports training device illustrated in Fig.l is suitable for both the sports-synch and sports-pacer applications. The device comprises a programmable electronic system made up of three main components. The first is an input device with a keypad which is used to select programmes (if there is more than one programme) and input stimulus parameters. The second l5 is a computer and tone generator with an associated memory made with programmable microchips. The third is an audio amplifier and speaker, through which the sounds generated by the computer are~relayed to a sportsperson.
The device allows the user to select sounds covering a wide range of frequencies and intensities and arrange them in sequence. The sequence can then be played, on command from the keypad, through any of a number of speaker or earpiece outputs. The device may also contain a display which indicates to the user the precise details (frequency, duration, sequence, etc.) of the information currently programmed. The output characteristics of the device can WO 92/21106 v - 9 - Z ~ O, ~ ~ ~ 3 PCT/AU92/00237 cover the whole range of audible frequencies of sound, the tonal durations may range from milliseconds to seconds and the total duration of the auditory sequences can be as short as milliseconds or as long as hours. The device may include means whereby a number of different auditory sequences can be stored concurrently. Further, the device may incorporate more than one programme. In this event, the appropriate programme and auditory sequence may be selected through operation of the keypad. ' Preferably, the audio output means used to relay a sequence of auditory tones to a sportsperson comprises an earpiece which may be worn by the sportsperson. In the case where the same sequence of auditory tones is to be relayed to more than one sportsperson, individual earpieces may be supplied to each person. Where the sportsperson is remotely located as in a marathon, the audio output means should include a radio link.
To give greater portability, it is preferred that the training device be battery powered.
Figs. 2a and 2b depict a circuit diagram for a sports train-ing device according to one embodiment of the invention. With:
this circuit and the computer programme hereinafter detailed, the training device may be used either as a sports-synch or a sports-pacer. The major differences in function result from the way in which tonal sequences are selected by the programme and are stored in the hardware and triggered by the ~ 10 9 413 PCT/AU92/002zz-sportsperson. In the case of the sports-synch function, preparatory signals start off a sequence. These are followed by a series of tones, whose frequency and inter-pulse-intervals have been selected so as to guide a whole-body action involving the movement of many parts. In the case of the sports-pacer function, the range of tones used will be less extensive, since it is the repetitive feature of a part-icular movement which will be signalled; however, the output will be such as to cover the repetitive movement sequence for the total duration of a sporting activity, such as the running of a marathon, which takes over two hours.
The circuit shown in Figs. 2a and 2b represents a programmable tone sequence generator which is controlled by a Motorola (MC 68705C8) microcontroller UI. The controller UI
monitors the input keys of keyboard KI and performs all timing and tone selection functions for the device operation in either of its sports-synch or sports-pacer applications.
The tones and times are stored in the processor ROM and are accessed by the CPU to generate precisely controlled tones and accurate durations.
The circuit also includes a reset generator (MC34064) which monitors the power supply and holds controller UI in a reset condition during power failure or low battery voltage. Volt-age regulator (MC78L05) U3 regulates the battery voltage to 25give +5 volts for the digital circuit. A generator U4 generates -5 volts from the +5 supply for the microchip of tone generator (ML2035) U5 which takes serial data from WO 92/21106 ~ ~ 109 4 a 3 P~/AU92/00237 controller U1 via the SPI in hexadecimal format to produce a sine wave. A low power amplifier (LM386j.U6 takes sine wave from tone generator U5 and provides sufficient power to drive low impedance head phones or earpiece. The power is provided by a 9 volt battery B1.
For the operation of the training device in the manner described, a programme suitable for use with the circuit shown in Figs. 2a and 2b is as follows:-W~U 92/21106 ~ PCT/AU92/002s~
~1UJ~13 -;Programable tone sequence generator ;# EQUATES
; ~(- ###
;# I/0 Ports PA: EQU *00 ;Port A Data/address LO Bus PB: E61U*01 ;Port B address HI Bus PRC: E0U *02 ;Port C 0123 In, 4567 Out PD: EQU *03 ;Port D Inputs only ;# Data Direction Registers .DDRA: E8U *04 ;I/0 Port DDRB: EAU *05 ;Out Port DDRC: EQU *06 ;In/Out Port ;# Serial riphial Interface Pe Registers SPCR: EQU *OA ;Control Register SPSR: E0U *OB ;Status Register SPDR: EAU *OC ;I/0 Data Register ;# Serial Comms Interface Registers BRR: EAU *OD ;Baud Rate Register SCCRi: EAU *OE iGontrol Reg 1 SCCR2: E9U *OF ;Control Reg 2 SCSR: EQU *10 ;Status Reg SCDAT: EAU *ii ;I/0 Data Reg i# Timer Reg isters TCR: EAU X12 iTimer Control Reg TSR: E8U *13 ;Timer Status Reg ICRH: E6lU*14 iInput Capture Reg HI

ICRL: EAU *15 ;Input Capture Reg LO

TOCRH: EAU *16 ;Output Compare HI

TOCRL: EAU ~i7 ;Output Compare LO

TCRH: E8U *18 ;Timer Count HI

TCRL: EAU *19 ;Timer Count LO

TCARL: E8U *lA ;Timer alternate Count HI

TCARH: E8U *iB ;Timer alternate Count LO

;# Timer Reg isters in RAM

TEMPiL: EAU *50 . ;

TEMPiH: EAU *SI ;

TEMP2L: EAU *52 ;

TEMP2H: EAU *53 ;

MSEC: EQU *54 ;TISR 0.001 second counter-HSEC: EQU *55 ;TISR 0.1 second cnunter~

NEWMSECL: EAU *56 ;

NEWMSECH: EQU *57 ;

WO 92/21106 ~ ~ ~ ~ ~ ~ ~C I"/AU92100237 ;~E Ram Pointers RAMDATA: E9U *58 ;RAM data IN/OUT
RAMADDL: EQU *59 ;
RAMADDH: EAU *5A ;
RAMSTL : E6tU !5B ;
RAMSTH: E6lU *5C ;
RAMPNTL: EAU *SD ;Next RAM address RAMPNTH : E6lU *5E ;
TEMP: EAU *5F ;Temp store TEMPA: EAU *60 ;Temp store A

TEMPX: E6lU *61 ; Temp store X

TEMPL: E6tU *62 ;Temp store for aseon TEMPM: EAU *63 ;Temp store for ascon TONECNT: EAU *64 ;Tone counter FLAG: E8U *65 ;Flag register BEEPS: E6lU *66 ; No. of notes i n sequence TIMOUT: E9U *67 ;Temp store KEY: EAU *68 ;Key number DPLYPNT: EQU *69 LCD position pointer SCALE: EAU *6A ;Storeit SE6lCNT: E9U *6B ;Note sequence counter TICL EAU *6C ;TISR period counter to TICH EAU *6D iTISR period counter hi MSBY : E6lU *6E
s LSBY: E8U ~G6F
s NUMBER: E8U *70 ;

DATACNT: EAU *71 ;

DIGITS: EAU *72 ;Tone duration millisecs DIGIT4: E8U *73 ;Tone duration hundredths DIGIT3: E8U *74 ;Tone duration tenths DIGIT2: EAU *75 ;Tone duration seconds DIGIT1: EAU *76 ;Tone duration ten seconds MSDIGIT: E8U *77 ;Tone timer counters LSDIGIT: E6lU *78 ;

MULTEMP: E8U *7A

;

CONSTANTS
RADDL: E6tU *FC ; End of RAM Lo byte RADDH: E9U *7F ;End of RAM Hi byte _____________________________________________________ .ORG *1FF4 ~________________________ ________________________________ .DW INIT ' ;SPI

.DW INIT ;SCI

.DW TISR ;Timer .DW INIT ;IRQ

.DW INIT ;SWI

.DW INIT ;Reset WO 92/21106 PCT/AU92/00?z' -~4-_______________________ _________________________________ .ORG X1000 ___________..___________ _____.._____..__________.__.._..___.__ CLR RAMADDL ;

CLR RAMADDN ;

CLR X ;

ZC: JSR RRAM ;

STA ~80,X

INC RAMADDL ;

INC X ;

CPX b4 ;

BNE ZC ;

CVB: BRA CtiB ;

_______________________ _________________________________ .ORG X100 p______________________________________________.__________ INIT: SEI ;Disable MCU interupts RSP ;Reset stack LDA ~~FF ; pointer STA DDRA ;Set up I10 ports STA DDRB ;Makes PA & PB outputs CLR PA ;PA = 0 CLR PB ; PB = 0 CLR PRC ;PC = 0 LDA ~~FO ;Port C, Bits 45b7 outputs STA DDRC ;Bits X210 inputs ;________________________________________________________ 3~HE°Initi 1 ize control bus and MCU ram ________________________________________________________ BSET 7,PB ;CS/EO for battery ram HI

BCLR 4,PRC ;Address Latch Enable LO

BSET S,PRC ;Ram & LCD R/W HI

BCLR b,PRC ;LCD strobe line LO

BSET 7,PRC ;Sine strobe line LO

CLR FLAG ; F 1 aci=0 ________________________________________________________ ~E~E°~E~E~ I n i t i 1 i ze SP I & SC I
________________________________________________________ LDA ~~~0 ;Baud rate = 9b00/4M6iz STA BRR ; - 4500/2MHz CLR SCCR1 ;
LDA ~~OC ;Enable receiver STA SCCR2 ;
LDA ~~SO ;
STA SPCR ;

i~VO 92/21106 2 ~ o ~ ~ ~ 3 PCT/AU92/00237 . . .r ;
- 15 - ~ .' . .
~________________________________________________________ ; Init iliae RAM addresses & sequence counter ~_______________________________________________________..

LDA %7F ;

STA RAMADDH ;

LDA ~FF ;

STA RAMADDL ;Point to top of RAM ~7FFF

JSR RRAM ;Get contents STA RAMPNTH ;

DEC RAMADDL ;Next byte ~7FFE

JSR RRAM ;

STA RAMPNTL ;

DEC RAMADDL ;Next byte ~7FFD

JSR RRAM ;

STA SEQCNT ;Restore sequence number ;counter from ram.

__._.________________._______________________________ ; INITIALIZE THE LCD ; LCD ADDRESS AO=0 6c AO=1 ~_____________o_______________________________________ LCDINIT: JSR TIMEINIT ;Start clock, ims ticks JSR FCNSET ;Funttion set JSR FCNSET ;Function set JSR FCNSET ;Function set JSR BNKOFF ;Display on cursor off LDA~Ob ; Entry mode, Ii~IC address JSRWCTRL ;Write LCD eontrol reg JSRSTCLK ;Start clock LDX.01 ;Delay = imS

JSRDELAYM ;Wait imS

TOPA: LDA ~200 ;Setup 200 loops of.logo sign STA TIMOUT ;before beeping every ~ loops TOPS: JSR BEEPS ;Sound 3 beeps ~________________________________________________________ # FLASH « SYNCRp ~ SPORT>? MESSAGE #
; # Wait for Menu select keypress ____________________________________ LOGO: JSR DPYCLR ;Clear LCD Home cursor JSR SYNCRO ;Display SYNCRO - TECH

JSR STCLK ;Start Millisecond timer LDX 20 ;2 seconds on FLASH: BRCLR 7, PD,MSELC ;Check for keypress CPX HSEC ;Are they equal BNE FLASH ;No then check again CLR TCR ;Stop clock DPYMENU: JSR DPYCLR ~ ;Clear display and home cursor JSR MENU ;Display menu WO 92/21106 ~ ,, ~ ~~ ~ ~ '~ - 16 - PCT/AU92J(H12'~~
3SR STCLK ;Start Millisecond timer LDX 30 ;3 seconds on FLSH: BRCL R 7, PD,MSELC ;Check for keypress CPX HSEC ;Are they equal BNE FLSH ;No then check again CLR TCR ;Stop clock DEC TIMOUT ;Loop counter BNE LOGO ;Keep checking for a keypress LDA 0S ;Reset loop counter STA TIMOUT ;for 5 counts BRA TOPB ;Keep checking for a keypress ~________________________________________________________ ;~E Menue select routine ~E~E~E~E~E
~________________________________________________________ MSELC: CLR TCR ;Stop clock LDA PRC ;Read PORTC

AND *OF ;Mask off top 4 bits CMP *06 ;If key other than 6,7,E,F

BEA PLYONY ;selected warning beep sounded CMP *07 ;program reverts to logolmenu.

HE6t RSTMEM ;Key=*06, play notes no store.

CMP *OE ;Bit O,flag=0 BE6~ PLYSTR ;Key=*07, Reset memory to *0000 CMP *OF ;Key---*OE, Play and store notes.

BE6! PLYMEM ;Bit O,flag=1 ;Key=*OF, play notes in memory.

DPYMNU: JSR PEEP ;Setup beep f or 1 beep JSR KEYRL ;Wait till key released BRA DPYMENU ;Show menu message again ;Keep scorning keys ______________________________________________________ RSTMEM: JMP RSTRAM ;Reset memory to *0000 PLYMEM: JMP PLAYNUM ;Play what's in memory TNEND: JMP TONEND ;End tone sequence SETFLG: JMP SETC ;

CLRFLG JMP CLRC ;

_______________________ _______________________________ PLYONY: BSET O,FLAG ;Play be store flag = 1 JSR PLYNSTR ;Set for play only JSR BNKON. ;

BRA UP ;

____________________________,______ ___________ PLYSTR: BCLR O,FLAG ;Play & store flag = 0 LDA SEACNT ;If 1st sequence put end of CMP ~*30 ;sequnce marker in 1st ram loc BNE NOTFST ;Then 2nd loc is sequence number LDA ~*FF ;OFF is placed in ram 1st byte STA SCALE ;to signify that the~next byte JSR STOREIT ;is the sequence number NOTFST: INC SEACNT ;Add 1 to sequence number and JSR SE6tSAVE ;store it in RAM ~7FFD

z 10 9 4 ~ ~ PCT/AU92/00237 _ 1~ ~ ..
LDA SEOCNT ;Get the sequence number STA SCALE ;and store it JSR STOREIT ;in next fret RAM byte JSR BNKOFF ;

JSR DPYSEQ ;Display 'SEQ No: ' LDA SEGCNT ;Sequence number address JSR WLCD ;Display sequence number LDX 25 ;for 2.5 seconds JSR DELAYH ;

JSR BNKON ;

~_______________________ _________________________________ ;~E~F~FIE Tone selection program starts here ~E~E~E~E

______________.________ _____,_._______._________________ LDA ~03 ;Counter f or positioning data in STA DATACNT ;LCD. Initial value =X03 CLR DPLYPNT ;Clear rowb position counter-JSR NOTES ;Notes message UP: JSR KEYRL ;Wait till key released JSR NTKEY ;Get note from keys STA TEMP ;Save it CMP ~OE ;Set flag for upper tones BEG SETFLG ;

CMP ~06 ;Clear flag for lower tones BEG CLRFLG ;

CMP ~OF ;Exit collect notes routine BEG TNEND ;if key =#OF

____________________,_ _______________________________ TONES: LDX 72 ;Point to last line in table.

NXTKEY: CMF' KEYTBL,X ;Compare to 1st colum in table.

BEG FOUND ;Oot a match, go found DEC X ;No then point to DEC X ;next line in table.

DEC X ;

DEC x ;
~

DEC X ;

DEC X ;

BRA NXTKEY ;No match, then try again.
' ______ .____ __._..______________._______________________ FOUND: LDA KEYTBL+1,X ;Get note value 2nd column) JSR WLCD ;Display in next LCD position JSR TSTSHP ;test for a sharp, note in TEMP

BRSE T i,FLAG,HIGHC ;High or low note ____________ _______________ ____________________________ LDA KEYTBL+2,X ;Note value t3rd Ec 4th column) STA MSBY ;

LDA KEYTBL+3,X ;

ST A LSBY ;

BRA SCLE ;

PCT/AU92/Op2'~
________________________________________________________ HIGHC: LDA KEYTBL+4,X ;Note value t5th & 6th column) STA MSBY ;
LDA KEYTBL+5~X ;
STA LSBY ;
______________________________________________________ SCLE: BRSET O,FLAG,JPONY ;If flag set play only LDA MSBY ;
STA SCALE ;
JSR STOREIT ;Store tone frequency LDA LSBY ;
STA SCALE ;
JSR STOREIT ;Store tone frequency ________________________________________________________ ; The following code gets the period of the tone (3 bytes) displays and stores it ready for ascon ~________________________________________________________ JSR TSTKEY ;Get be test 1st key write to LCD
LDA TEMPA ;
STA DIGIT2 ;Save 1st digit ready for ascon LDA ~*2E ;Decimal point JSR WLCD ;Write to LCD
JSR TSTKEY ;Get & test 2nd key write to LCD
LDA TEMPA ;
STA DIGIT3 ;Save 2nd digit ready for ascon JSR TSTKEY ;Get & test 3rd key write to LCD
LDA TEMPA ;
STA DIGIT4 ;Save 3rd digit ready for ascon LDA ~*30 ;Put Zero on end of digits JSR WLCD ;in LCD
~_______________ _______ .___________________ _________ The following code takes the 5 BCD digits ', stored in DIGITi-5 and converts them to binary The result is stored in MSDIGIT ~C LSDIGIT.
Digits 1 ~C 5 are always zero.
____________________________.___________________________ CLR DIGITi. ;Digits 1 ~c 5 always aero CLR DIGITS ;e9. tone on =01.230 sets CLR MSDIGIT ;Clear upper byte , 1.DA DLGIT1 ;Get most significant digit, STA LSDIGIT ;Store in lower byte LDX ~~04 ;Set index for 4 digits NXTDIG: LDA DIGITS-i.X ;Get next digit JSR MULTEN ;
DEC X ;
BNE NXTDIG ;
. , .:, ~ 4<:
.I:'?:-,.
~' ) t)~, ~t: ,. , Y. L~ ~';a'~.., .w n " . ...: 1..,. r,...... : '\..~.4at .... r. . r',i:,~,....~

._ WO 92/21106 ~ ~ ~,.~;~ ~5~4 ~ ~ PCT/A1J92/00237 LDA MSDIGIT ;
STA SCALE ;
JSR STOREIT ;
LDA LSDIGIT ;
STA SCALE ;
JSR STOREIT ;
BRA LCDATA ;
JPONY: .JMP PONY ;Relitive pump to large MULTEN: STA MULTEMP ;

LDA MSDIGIT ;

STA TEMPM ;

LDA LSDIGIT ;

STA TEMPL ;

ASL LSDIGIT ;

ROL MSDIGIT ;

ASL LSDIGIT ;

ROL MSDIGIT ;

LDA TEMPL ;

ADC LSDIGIT ;

STA LSDIGIT ;

LDA TEMPM ;

ADC MSDIGIT ;

STA MSDIGIT ;

ASL LSDIGIT ;

ROL MSDIGIT ;

LDA MULTEMP ;

ADC LSDIGIT ;

STA LSDIGIT ;

CLR A ;

ADC MSDIGIT ;

STA MSDIGIT ;

RTS ;

_____________ _________________________________________ The follo wing code positions the notes and times in the LC D e9. (A 1.~i10B 2.220) X 2 lines _____________ _________________________________________ LCDATA: DEC DATACNT ;Point to next data group in LCD

LDA *03 ;If =03 then put 4 spaces in LCD

CMP DATACNT ;

BEA SPFOUR ;

DEC A ;If =02 then go to line in CMP DATACNT ;

BE6! SETROWB ;

DEC A ;

CMP DATACNT ;If =01 then put * spaces in LCD

BEA SPFOUR ;

JSR ROWA ;If not 3,2, or 1 then mustbe OG

LDA *04 ;Initialise data counter o *04 t STA DATACNT ;

FULTST : BRSET 2, FLAG, ; Ram f a 1 1 i f 2, f 1 RFUL a9 i s set - PONY: JSR TONE ;Play note no store 3MP UP ;Next note ______________________________________________________ RFUL: JMP DPYMNI! ;Return to the menu WO 92/211(16 , - 2 0 - PCTlAU92/00?
~________________.b_____________________________________ TONEND: BRSET ;Return to menu if tone only O,FLAG,TEND

LDA SFF ;Put %FF in next free byte to STA SCALE ;

JSR STOREIT ;indicate end of a tone sequence TEND: JMP DPYMNU ;Return to the menu ~_______ ____________________ ___________________________ SETC: BSET ;Set high tones flag i,FLAG

JMP UP ;Return to key checking routine CLRC: BCLR ;Clear high tones flag i,FLAG

JMP UP ;Return to key checking routine ~_______ ____________________ ___________________________ SETROWB: JSR ROWS ;Set lcd to 2nd line BRA FULTST ;Return to main routine _____________________________________________________ SPFOUR: LDX S04 ;Output 4 spaces to LCD

MORES: LDA S20 ;

JSR WLCD ;

DEC X ;

BNE MORES ;

BRA FULTST ;Return to main routine p______________________________________________________ TSTKEY: JSR KEYRL ;Wait for key release JSR NTKEY ;

CMP lcOC ; Key > C then nci good BHI ERROR ;

CMP i~08 ;Key < 8 then more tests needed BLO TEST

HRA OK ;8 < key < C then key is ok TEST: CMP f05 ;

HLO OK ;If key < 5 then key is ok ERROR: JSR PEEP ;Heep if key is wrong BRA TSTKEY ;Then test next key OK: LDX 27 ,Key ok then search table NXTLIN: CMP TIMTHL,X ;for a match BE6t AOK ;Found one DEC X~ ;

DEC X ;

DEC X ;

BRA NXTLIN ;No then keep looking AOK: LDA TIMTHL+2,X ;Ascii numbers for LCD

JSR WLCD ;

LDA TIMTBL+i,X ;Hex numbers f or timer STA TEMPA ;Save time.

RTS ;

_____ ____________________ __________________________ TSTSHP: LDA TEMP ;Get the key value CMP ~t00 ;Check for a sharp key HE61 SETSHP ;

CMP S03 ;

BE6t SETSHP ;

CMP S05 ;

BE6~ SETSHP ;

CMP ~09 ;

BE6t SETSHP ;

CMP SOC ;

~~o~~~~

BEQ SETSHP ;
BCLR 3, FLAG ;No sharps BRA NOSHP ;
SETSHP: BSET 3, FLAG ;Sharp note LDA *DF ;Places a symbol after JSR WLCD ; D, F, G, A ~C C i n LCD

BRCLR ;If set then play ~C store O,FLAG,RETS

INC DPLYPNT ;Point to next vac LCD
sition NOSHP: BRCLR ;If set then play & stoPe O,FLAG,RTNS

INC DPLYPNT ;Point to next vac LCD position LDA 20 ;20 positions in 2nd line CMP DPLYPNT ;At the end yet BHI RETNS ;No then get next note CLR DPLYPNT ;Clear rowb position counter JSR ROWB ;Yes then 2nd row of LCD

RETNS: RTS ;Return RTNS: LDA *20 ;Output two spaces to LCD

JSR WLCD ;

BETS: LDA *20 ;Output one space to LCD

JSR WLCD ;

RTS ;Return ~E~E~E~E~E~E~~~~1E1E~E1E1HE1E1E~E~E~E~IE~IHE~HE~IE~IE~~IEIE~E~E~E~E~E
;~E Play note sequence ~E~F~E~1E~E~~E~~1E1~E~1E1E1E~E~~lElE~ElEIE~
PLAYNUM: JSR PLAYMESG ;Play it message I- UPIT: JSR KEYRL ;Wait till key released JSR NTKEY ;Get sequence number from keys CMP *OS ;Compare to *05 8LS , QOOD ; Branch i f 1 ess than 6 CMP ~06 ;06,07 not valid keys BEQ NOGOOD ;

CMP f*al HEA NOGOOD

CMP ~OA ;OB,OC,OD,OE,OF

BLS GOOD ;are not valid keys NOGOOD: JSR PEEP ;Warning tone BRA UPIT ;Keep looking for a valid key r GOOD: LDX 16 ;Point to last line in table.

SE9UM: CMP SE6tT8L,X ;Compare to lst col in table.

8E9 FND ;Got a match ~ 9o found DEC X No then point to DEC X ;next line in table.

BRA SEQUM ;No match, then try again.

FND: LDA SES;TBL+1,X ;Get sequence Num t2nd column?

STA TEMP ;Store it for a moment JSR WLCD ;Display in next LCD positiotu CLR RAMADDL ;Start at *0000 CLR RAMADDH ;

JSR RRAM :Read the 1st location WZ192/21106 PGT/AU92/1102'"~
21(1J4~~ - 22 -CMP ~*AA ;If memory has *AA in 1st BE0 MEMCLR ;location then memory is clear FINDSEO: CMP *FF ;

BE0 FOUNDIT ;Play the sequence LDA RAMADDH i CMP #7G ;End of usable RAM yet?

BED PANIC iThen end search FNDSEO: BSR NXTBYTE ;

BRA FINDSEO iKeep looking NXTBYTE: INC RAMADDL ;Next byte BNE RAMR ;*FF bytes done yet INC RAMADDH ;Yes new block then RAMR: JSR RRAM ;No, read the address RTS ;

FOUNDIT: BSR NXTBYTE ;

CMP TEMP ;

HNE FNDSEO ;

JSR SHOWIT ;Display 'FOUND SEQUENCE No.' LDA RAMDATA ;Get the sequence number JSR WLCD ;Display the number ;__ ______________ _____ ______________________ _ __ Data foranat in bytes long. The 1st !c 2nd ram is 4 bytes contain the f ~equency. The 3rd 6e 4th byte tone has the period in ples of 10 milliseconds multi _.__ ._________.______ _____________________________ BSET 6, FLAG ;Set tone timer flag NXTONE: 8SR NXTBYTE ;Get byte from RAM

CMP *FF ;Is it the end of sequence?

8E8 SAUEND ;Yes then end sequence STA M$BY ;No then 1st byte of tone HSR NXTBYTE ;

STA LSBY ;2nd byte of tone BSR NXTBYTE ;

STA MSDIGIT ;Tone duration HI byte INC MSDIOIT ;

BSR NXTBYTE ;

STA LSDIGIT ;Tone duration l.0 byte INC LSDIGIT ;

BCLR 7, FLAG ;Clear time up flag JSR TONE ;Play tone JSR STCLK ;Start timer TONON: BRCLR 7, :Wait till finished FLAG,TONON

CLR TCR ;Stop timer BRA NXTONE ;Next note in sequence i___________________________ _____________________________ MEMCLR: JSR CLRMEM ;Display ' MEMORY EMPTf ' BRA SOUEND ;

PANIC: JSR FAULT ;Display ' 32K BYTES SEARCHED
' ~Cl~r3~TITLlT~ ~~,~~f~'d"' ~10~r ~.~
_ WO 92/21106 PCT/AU92/00237 _ 23 _ , ,. . , , SQUEND: CLR MSBY ;
CLR LSBY ;
JSR TONE ;Inhibit tone generator BCLR 6, FLAG ;Set for normal timer counters LDX ~10 ;Wait 1.0 sec before sounding JSR DELAYH ;3 beeps and returning to menu.
JMP TOPA ;Show menu message again iFinished playing sequenee.
____________.___________________________________________ i~IHE Oet Key program starts here ;______ _________________________________________________ NTKEY: BRSET ~,PD,NTKEY ;Wait for key press LDA PRC iGet key AND ~*OF ;Mask off top bits RTS ;Return, *00-*OF in ACC
GETKEY: DRSET 7, PD,GETKEY ;Wait for key press LDA PRC ;Get key AND *OF iMask off top bits ADD *30 ;Convert hex to ASCII

JSR WLCD ;Display notefn LCD

JSR KEYRL ;Wait for key release RTS ;Return ;~E TONE GENERATION SUBROUTINES
i PEEP: LDX fiB ;Point to 1st tone in table LDA 20 iNo of tones to play ti) STA BEEPS ; tvalue of XtNo. of tones) BRA .BEEP ;

BEEP: LDX fit iPoint to 1st tone in table LDA 18 iNo of tones to play t3) STA BEEPS ; tValue of X+No. of tones) BEEP: LDA TONETBL, X ; MSBY of tone f requency from Get STA~ MSBY ;table and Save in MSBY .

INC X ~ ;Point to LSBY

LDA TONETBL,X ;Get LSBY of tone frequency from STA LSBY ;table and Save in MSBY

JSR TONE ;Play the tone STX TEMPX ;Save X

JSR STCLK iStart the timer LDX 02 ;for a 300 mS period LOOP: CPX HSEC ;

BNE LOOP ;Time up? no check again CLR TCR ;Stop the timer LDX TEMPX ;Yes then restore X

INC X ;Point to next tone CPX BEEPS ; Check i f moi~e tones BNE BEEP ;No more tones?

SUBSTITUTE St~EET~I

WO 92/21106 ~ ~ ~ ~ ~ ~ ~ . PCT/AU92/OOZ'~

CLR MSBY ;Clear tone stores CLR LSBY ;Then stop the tones BRA SENDT ;
~_______________________________________________________ ; TONE Swaps the order of the bytes SENDT Sends the tones to tone generator ~_______________________________________________________ TONE: LDA MSBY iSave MSBY

STA TEMPA ;

LDA LSBY ;Oet the LSBY

STA NUMBER ;

JSR SWAP ;Mirror bits LDA TEMP ;

STA MSBY ;Save mirrored bits in MSBY

LDA TEMPA ;

STA NUMBER ;Retrive the MSBY

JSR SWAP ;Mirror bits LDA TEMP ;

STA LSBY ;Save mirrored bits in LSBY

___ ______ ___________________________________________ SENDT: LDA MSBY ;Load LSE to the SPI data STA SPDR ;register and initiate transfer HERE: BRCLR ;Wait till finished 7,SPSR,HERE

LDA LSBY ;Load MSB to the SPI data STA SPDR ;register and initiate transfer ERE: BRCLR 7,SPSR,ERE ;Wait till finished BSET 7,PRC ;Strobe in data BCLR ?,PRC ;

RTS ;

__ ________________ ___ ______________________________ ; This routine takes the binary value in NUMBER and i produces the mirror immage of the bits. The result of 3 this bit manipulation is left in TEMP.

_ __ _____ ________________._______________________ SWAP: LDA f*08 ;Loop counter LOOP1: ROR NUMBER iRotate bit into carry bit ROL TEMP ;Rotate carry into next bit DEC A ';8 bits yet BNE LOOP1 ;

RTS ;

~E~IHHHE~IE
i ~' ~E
;~E BATTERY RAM SUBROUTINES
RAM address range *0000 - *7FFF
;~E RAM address *7FFE ~c *7FFF contains pointer to 1st ~E
;~E vacant RAM address.
;~F RAMDATA contains the data to be writen to and read ~E
;~E from the RAM. The 1st free location holds *AA
4 ~lE
SUBSTITUTE SHEET

WO 92/21106 - 25 210 ~ ~ 13 PCT/AU92/00237 SETADDR: LDA *FF ;Port A

STA DDRA i0utputs LDA RAMADDL ;Lo address STA PA ;

JSR ALE ;Latched LDA RAMADDH ;Hi address ORA *80 ;Make sure P87 always set STA PB ;

RTS ;

_____________ ___________________________________________ WRAM: JSR SETADDR ;Set up address for the data LDA RAMDATA ;Fetch data STA PA ;Output to data bus BCLR S,PRC ;R/W = 0 BCLR 7,PB ;CS/EO=0 BSET 7,P8 ;CS/EO=i BSET S,PRC ;R/W = 1 RTS ;Return ________________________________________________________ RRAM: JSR SETADDR ;Read cycle No 3 CLR DDRA ;Make PORTA input BCLR 7, P8 ;OE=0 enable output LDA PA ;Read RAM data STA RAMDATA ;Save data BSET 7,P8 ;OE=i RTS ;Return s i~E Routine to in battery backed raan store data i ~E At the end rout i ne addresses *7FFF 6c E
of th i s :ub i~ :contain the the next free byte in ram.
address of ~ The data in is *AA.
his'byte STOREIT: LDA *7F

STA RAMADDH ;

LDA fF~ ;*7FFF = Address of ram pointer STA RAMADDL ;Hi byte JSR RRAM ; Get ,the contents of *7FFF for STA RAMPNTH -;RAM pointer Hi byte.

DEC RAMADDL ;x7FFE = Lo byte JrR RRAM ;Read RAM address *7FFE for STA RAMPNTL ;RAM pointer Lo byte.

RAMPNT H6~L now contain the address of next free ram byte ;This address into RAMADDR H !k L
has to be put STA RAMADDL ;Put Lo byte in RAMADDL
LDA RAMPNTH ;
STA RAMADDH ;Put Hi byte in RAMADDH
SURSTOTUTE SHEEP "

WO 92/21106 PCT/AU92/00?'' LDA SCALE ;Get tone frequency STA RAMDATA ;Put it where WRAM can get it JSR WRAM ;Store it in RAM
;~E1E The following code increments ram address counter ~E
SHE and stores i t back to *7FFF ~C *7FFE, next free byte ~E
INC RAMPNTL ;Point to next ram address HNE AWAY ;~ 00 yet? No, then away INC RAMPNTH ;Yes, then point to next block 8MI RAMFULL ;The battery ram is full AWAY: i_DA *7F ;Set RAM address to *7FFF

STA RAMADDH ;

LDA *FF ;

STA RAMADDL ;

LDA RAMPNTH ;Get next RAM address Hi byte STA RAMDATA ;Put it where WRAM can get it . JSR WRAM ;Store it in RAM (*7FFF) DEC RAMADDL ;Set RAM addres to *7FFE

FDA RAMPNTL ;Get next RAM'address Lo byte STA RAMDATA ;Put it where WRAM can get it JSR WRAM ;Store it in RAM (*7FFE) RTS ;Return _ __ ________________ _._____________________ _ RAMFULL JSR RAMFUL ;

J&R 8EEP3 ; 3, beeps LDX *15 ;

JSR DEL.AYM ;1.3 SEC delay JSR -BEEP i3 beeps HSET 2, FLAG ;Set RAM fall flag RTS ;

i ;~E The following writes *FF then *00 thsn *35 code ;iF then *AA in turn all 32K bytes of RAM.
to i~ The slque nce'counter is reset to zero (*7FFD).
~E

~ *AA i s *n w~ i'tento the fst byte of RAM. ~E
th RSTRAM: JSR TESTMSGA ;RAM message CLR RAMADDH ;Point to bottom of RAM

CLR RAMADDI. ;
BLOCK: JSR TESTING ;Test RAM
INC RAMADDL iNext byte HNE BLOCK ;*00 yeti No then do some more.
INC RAMADDH ;Yes then next block BPL BLOCK ;*7FFF bytes done yet JSR TESTMSGB ;Finished message LDX ~20 ;
JSR DELAYH ;Display for 2 secs SUBSTITUTE Sl~

WO 92/21106 ~ ~ Q ~ 4 ~ ~ 1'CTJAU92/00237 _ 27 -LDA ~7F ;

STA RAMADDH

LDA ~FF ;Point to top of battery STA RAMADDL ;RAM

CLR RAMDATA ;

JSR WRAM ;Put ;~00 into ~?FFF

DEC RAMADDL ;

JSR WRAM ;Put X00 into ~7FFE

DEC RAMADDL ;

LDA ~30 ;

STA SEACNT ;Initialise sequence counter STA RAMDATA ;and ~7FFD to 0 JSR WRAM ;

CLR RAMADDH ;Set RAM address counters to CLR RAMADDL ;Zero CLR RAMPNTH ;

CLR RAMPNTL ;

JMP TOPA ;Sound 3 beeps return to menus.

~_______________________________________________.._______ TESTING: LDA ~FF ;

STA RAMDATA ;

JSR WRAM ;Write OFF to RAM

CLR RAMDATA ;Destroy contents of RAMDATA

JSR RRAM ;Read RAM

LDA ~FF ;

CMP RAMDATA ;Does it =OFF

BE6! A ;Yes then keep going Z=1 JMP FAULTY ;No then fault Z=0 A: CLR RAMDATA ;

JSR WRAM ;Write X00 to RAM

LDA *FF ;

STA RAMDATA ;Destroy contents of RAMDATA

JSR RRAM ;Read RAM

CLR A ;

CMP RAMDATA ;Does it =~00 8E6t.8 ;Yes then keep going Z=1 JMP FAULTY ;No then fault Z=0 B: LDA ~55 ;

STA RAMDATA ;

JSR WRAM ;Write ~~S to RAM

CLR RAMDATA ;Destroy contents of RAMDATA

JSR RRAM ;Read RAM

LDA ~55 ;Does it =X55 CMP RAMDATA ;Yes then keep going Z=1 BE6~ C ;No then f cult 2=0 JMP FAULT1~' ;

C : LDA 11AA ;

STA RAMDATA ;

JSR WRAM ;Write AAA to RAM

CLR .RAMDATA ;Destroy contents of RAMDATA

JSR RRAM ;Read RAM

WO 92/21106 PCT/AU92/002'~
~1~9413 LDA *AA ;

CMP RAMDATA ;Does it =*AA

BE6! D ;Yes then keep going Z=1 JMP FAULTY ;No then fault Z=0 D: RTS ;Last test leaves RAM

;location = *AA

FAULTY: JSR WRNMSG ;Sound warning beep RTS ; , _____________ ___________________________________________ SEHSAVE: LDA *7F ;Sequence number address STA RAMADDH ;in RAM= *7FFD

LDA *FD ;

STA RAMADDL ;

LDA SEACNT ;Get sequence count STA RAMDATA ;Put it where WRAM can get it JSR WRAM ;Write to RAM t*7FFF) RTS ;Return ___________ __________________________________________ SE6tGET: LDA *7F ;Sequence number address STA RAMADDH ;in RAM= *7FFD

LDA *FD ;

STA RAMADDL ;

JSR RRAM ;Get number in RAM

STA SEOCNT ;Put it in counter RTS ;Return ~E ~F

;~lE LI GIUID CRYSTAL DISPLAY SUBROUTINES
~E

;~E LCDIR Sets address AO=0 RS=0 ;~E LCDDR Sets address AO=i RS=i ~E

;~E WCTRL Writes to control register R/W=0 ~E

;1E RCTRL Reads control register R/W=i ~E

;~E WLCD Wri-tes to data register R/W=0 ;~E PORTC Bit6 Provides strobe pulse for LCD ~E

;1E LCBUSY DB?=i Then LCD Husy. Returns when D87=0 ~E

;~E NOTE: All LCD subroutines should leave control ~F

;~E lines in original state. ~E

~HHE~HE~HHHE~E~E~E~ HHEiE~~IHHHHE~IHHE~1E~E~lE

ROWA: LDA *80 ;Set cursor to 1st row BRA WCTRL ;

ROWS: LDA *CO ;Set cursor to 2nd row WCTRL: JSR LCDIR ;Set LCD IR address AO=O/RS=0 STA PA ;Write control word to LCD

BCLR S,PRC ;R/W = 0 BSET 6,PRC ;E = 1 Strobe E line on LCD

BCLR 6,PRC ;E = 0 HSET S,PRC ;R/W = I

RTS ;Return ____ ________________ _______________________________ RCTRL: JSR LCDIR ;Set LCD IR address tRS =G) CLR PA ' ;

STA DDRA ;PORTA=input BSET 6,PRC ;Strobe E line on LCD (R!W=i) WO 92/21106 2 ~ ~ ~ ~ ~ 3 pt':.'r'/AU92/00237 _ 29 _ LDA PA ;Read BCLR 6,PRC ;E = 0 RTS ;Returns with LCD data in ACC
____________________________________________________ WLCD: JSR LCDDR ;Set LCD IR address tRS =1?
STA PA ;Write data word to LCD
BCLR S,PRC ;R/W = 0 BSET 6,PRC ;Strobe E line on LCD

BCLR 6,PRC ;E = 0 BSET S,PRC ;R/W = 1 RTS ;Return ~__________________ LCDIR: JSR SAVE ;Save A&X

LDA ~FF ;LCD Instruction Register STA DDRA ;Set Port A output CLR PA ;PORTA = 00 RS=0 JSR ALE ;Latch address to LO Bus JSR RESTORE ; Restore ABcX

RTS ;Return _____________________ LCDDR: JSR SAVE ;Save A&X

LDA *FF ;LCD Data Register STA DDRA ;Set port A output LDA *01 ;

STA PA ;PORTA = 01 RS=1 JSR ALE ;Latch address to LO Bus JSR RESTORE ;Restore A&X

RTS ;Return _________________ DPYCLR: LDA *Oi ;Clear display.

JSR WCTRL ;Write LCD Control Reg.

LDX 10 ;

JSR DELAYM ;Wait till done.

HOME: LDA *02 ;Return cursor to home position JSR WCTRL ;Write LCD Control Reg.

LDX i0 ;

JSR DELAYM ;Wait till done.

RTS ;Return.

_____ LCBSY: JSR RCTRL ;Read instruction register BRSET 7, PA,LCBSY ;TEST DB7=1 FOR BUSY

RTS ;Return ___________ _____________ ____________________________ FCNSET: LDA *38 ;Function set JSR WCTRL ;Write LCD Control REG

LDX i0 ;Delay = lOmS

JSR DELAYM ;Wait lOmS

RTS

WO 92/21106 ,, PC:T/AU92/002z~
z~~~ ~~~

~_________ _____________________________________________ BNKON: LDA ~OD ;Display on/off control JSR WCTRL ;Display on cursor off JSR DELAYM ;Wait 1mS

RTS ;

__________ __________________________________________ BNKOFF: LDA ~OC ;Display on/off control JSR WCTRL ;Display on cursor off JSR DELAYM ;Wait 1mS

RTS ;

t ##~E#~lE lE ~lE ###~lE ~E~IE~E~3E ###
;# MISCELANEOUS SUBROUTINES
;# ADDRESS LATCH ENABLE, i# SAVE A&X, RESTORE A&X, #
;# KEYRL, DELAY #
###~E ###
ALE: BSET 4,PRC ;ALE = 1 BCLR 4,PRC ;ALE = 0 RTS ;Return __________________________________ _______________ SAVE: STA TEMPA ;Save A

STX TEMPX ;Save X

RTS ;Return ~___________ ______ __________________________________ RESTORE: LDA TEMPA ;Restore A

LDX TEMPX ;Restore X

RTS ;Return ~_______ ____________ __________________________ ________ ;DELAYM Uses and MSEC to e a varrible length delay X giv in 0.001 s.
SEC
increment ;

;DELAY Uses a-varrible length delay X and HSEC
to give ; in 0.1 SEC increments.

- _ ___ _____________ __________________________ _ DELAYM: JSR TIMEINIT ;Start clock LOOP2: CPX MSEC ;Compare X with LOW counter BNE LOOP2 ;Loop till equal BRA RTN ;Stop clock and return __ ___ ___________________ _______ _________________ _ DELAYH: JSR STCLK ;Start clock LOOP3: CPX HSEC ;Compare X with HIGH counter BNE LOOP3 ;Loop till equal RTN: CLR TCR ;Stop clock RTS ;Return ~_______ _____________________ ________________________ KEYRL: BRCLR 7, PD,KEYRL ;Wait till key released RTa . ;Return 2~ 09~~.3 WO 92!21106 . ~ PCT/AU92/00237 .. , ~E1HF~E~IE~E~1E~3E~EIE~IE~E~IE~IEiEV-~E~1E~E~E~IE~IE~~HE~IE~E~E~IE~IE~IE~IE~IE~~~E~E~E~IE~~IE~IE~E~IE~IEVE~IE~E
LCD Messages ; ~IEIEaE-IEVE~E~E~E~IE~E~E~IE~E~IE~EIE~~E~(-~E~E~IE~E~IE~IE~IE~IE~IE~E~E1NE~E-IE~E~~~IHE~E
SYNCRO: CLR X ;X=0 REPTA: LDA SYNC,X ;Get character JSR WLCD ;Display it INC X ;

CPX 20 ;20 chrs yet BCS REPTA ;No keep going JSR ROWS ;2nd line CLR X ;X=0 RPTA: LDA MENUE,X ;Get character JSR WLCD ;Display it INC X ;

CPX 20 ;20 chrs yet .BCS RPTA ;No keep going RTS ;Return ___________ _____________ _____________________________ MENU: CLR X ;X=0 REPTB: LDA SELECTi,X ;Get character JSR WLCD ;Display it INC X ;

CPX 20 ;20 chrs yet BCS REPTB ;No keep going JSR ROWS ;2nd line CLR X ;X=0 RPTB: LDA SELECT2,X ;Get character JSR WLCD ;Display it INC X ;

CPX 20 ;20 chrs yet BCS RPTB ;No keep going RTS ;Return ___ _______________.__ _____________________________ NOTES: JSR DPYCLR ;Clear LCD

CLR X ;X=0 REPTC: LDA NOTE,X ;Get character JSR WLCD~ ;Display it INC X ;

CPX i2 ;12 chrs yet BCS REPTC ;No keep going RTS ;Return. LCD cusor left at next ____ __________________ _____________________________ ;position.

PLAYMESG: JSR DPYCLR ;Clear LCD

CLR X ;X=0 REPTD: LDA PLYMSG,X ;Get character JS R WLCD ;Display it INC X ;

CPX 15 ;15 chrs yet BCS REPTD ;No keep going RTS ;Return. LCD cusor left at next WO 92/21106 , .
- 32 - PCT/AU92/002?' _______________________________________________________ ;position.

CLRMEM: JSR ROWH iClear LCD

CLR X ;X0 REPTE: LDA CLRMSG,X ;Oet character JSR WLCD ;Display it INC X i CPX 20 i20 chrs yet BCS REPTE iNo keep going RTS ;Return.

~__________________________ _____________________________ 2EROMSG: CLR X iX=0 REPTF: LDA 2ERO,X ;Oet character JSR WLCD ;Display it INC X i CPX 20 i20 chrs yet BCS REPTF ;No keep going JSR ROWB i2nd line CLR X iX~O

RPTG: LDA RESET,X ;Oet character JSR WLCD ;Display it INC X ;

CPX 20 ;20 chrs yet HCS RPTO iNo keep going RTS iReturn ~____________________ ._________________________________ FINIS: JSR DPYCLR iClear LCD

CLR X ;X=0 REPTH: LDA FIN,X ;Oet character JSR WLCD iDisplay it INC X i CPX 20 ;20 chrs yet BCS REPTH iNo keep going RTS ~ ~ ;Return. LCD cusor left at next ;position.

_____________________._________._______________________ FAULT: JSR ROWS ;Clear LCD ' CLR X iX=0 REPTI: LDA FALTY,X iGet character JSR WLCD iDisplay it I X ;
NC

CPX 20 i20 chrs yet BCS REPTI iNo keep going RTS iReturn.

._____________ __________________________________________ SHOWIT: JSR ROWS i ~CLRX ;X~O

REPTJ: LDA FNDIT,X ;Oet character JSR WLCD ;Display it INC X

CPX 18 ;18 chrs yet BCS REPTJ iNo keep going RTS ;Return. LCD cusor left at next ;position.

SUBSTITUTE ShtEET

W ~ ~ ~ ~ ~ ~ ~

..--..

~________ ____________________________________ PLYNSTR: JSR DPYCLR ;Clear LCD' CLR X ;X=0 REPTK: LDA ONLYPLY,X ;Get character JSR WLCD ;Display it INC X ;

CPX 20 ;20 chrs yet HCS REPTK ;No keep going JSR ROWH i2nd line of display RTS ;Return.

_____ _______________________________________________ TESTMSGA: JSR DPYCLR ;Clear LCD

CLR X ;X0 REPTU: LDA MESGA,X ;Get character W JSR LCD ;Display it INC X ;

CPX 20 ;20 chrs yet BCS REPTU ;No keep going RTS ;Return. LCD cusor left at next ;position.

._____________________________________________ ~ __________ s TESTMSOB: JSR ROWS ;2nd line of display CLR X ;X=0 REPTV: LDA MESOH,X ;Oet character JSR WLCD ;Display it INC X ;

CP7t 20 f 20 chrs yet 8CS REPTV ;No keep going RTS ;Return. LCD cusor left at next s iposition.

____________ _ . __________ __________ ___. _.____.______ DPYbEA: JSR DPYCLR ;Clear LCD

CLR X ;X0 REPTW: LDA SEBDPY,X ;Oet character JSR WLCD iDi:play it INC X ;

CPX 8 ;B chrs yet HCS REPTW ;No keep going RTS ;Return. LCD cusor left at next ;position.

..________ ___.___.___.__________:________:__________:

RAMFUL: CLR X ;X=0 REPTX: LDA RAMF,X ;Oet character JSR WLCD ;Display it INC X l CPX 20 ;20 chrs yet BCS REPTX ;No keep going JSR ROWH ;2nd line CLR X iXsO

RPTX: LDA RAMFL,X iOet character , JSR WLCD iDisplay it INC X s CPX 20 ;20 chrs yet BCS RPTX ;No keep going RTS ;Return SUBSTITUTE SN~ETv . ,..~.-. ~ ,>:.
. _ -; ~. ...::~..- .:.....: . :..:... . ~:- ~ :r:. ,..,.,. .x..,..:_1,.. . _ . . .,.~.,. . . .. :; ;:: .._ ..~;~- .. . ..

PCT/AU92/002."
~10'~4~3 ________________________________________ WRNMSG: CLR X
RPTZ: LDA WRNMESG,X ;Get character JSR WLCD ;Display it INC X ;
CPX ~20 ;20 chrs yet BCS RPTZ ;No keep going RTS ;Return 1E 'T i mer Subrout 1 nes TIMEINIT: LDA *FO ;Initialise TISR to give a imS

STA TICL itime delay LDA *01 ;Hex *OiF4-4 =*OiFO

STA TICH ;Dec 0500-4 =0496 ;e9, 500 x 2uS=ims LDA TCRH ;This code gets the STA TEMPiH ;contents of free LDA TCRL ;running counter STA TEMPiL ;stores it in a tempory CLC ;location, adds contents of LDA TICL ;TICL Ec TICH to it, then stores ADC TEMPIL ;it back into the Output STA TEMP2L ;Compare Register LDA TICH ;

ADC TEMPiH

STA TOCRH ;

LDA TEMP2L ;

STA TOCRL ;

STGLK: CLR MSEC i2ero milliseconds CLR HSEC ;Zero hunthseconds LDA *40 ;Enable Hit 6 for interupt STA TCR ;

LDA TSR ;Clear Flags LDA TOCRL ~ ;

CLI ;Clear processor interupt RTS ;Return Timer Interupt Service Routine ~E
~EiE
p TISR: SEI ;

LDA TCRH ;Interupt Service Routine STA TEMPiH ;Gets the current value of LDA TCRL ;timer counter, adds TICL & H to STA TEMPiL ;it and stores it back into CLC ;timer output Compare Reg LDA TICL ;

ADC TEMPiL ;If clock = 2uS

STA TEMP2L ;period of interupt LDA TICH ;= 2uS ~E 500 ADC TEMPIH ;= imS

. WO 92/21106 ~ 1 ~ 9 4 ~ 3 PCT/AU92/00237 1.Y

STA TOCRti LDA TEMP2L i STA TOCRL i BRSET 6, FLAG,TOTM ;Set f or tone timer INC MSEC ;MSEC counter +1 LDA 100 i CMP MSEC. 1100 imS counts yet BNE RETURN ;No then return CLR MSEC ;Yes then zero counter INC HSEC ;lOOmS counter BRA RETURN f TOTM: DEC LSDIGIT ;Tone timer, counts down in imj HNE RETURN ;decrements to zero then sets DEC MSDIGIT ;tone end flaS.

BNE RETURN s BSET 7, FLAG ;Tone period finished RETURN: HRCLR ;
O,TCR,OLVL

BCLR O,TCR s BRA RETRN i OLVL: BSET O,TCR ;

RETRN: LDA TSR iTimer Fla9s Cleared LDA TOCRL i CLI ~ i RTI ;Return From Interupt .;E LCD MESSAGES
SYNC: ' .BYTE ' ttSYNCRO - SPORT
' MENUE: .BYTE 'MENU: SELECT NUMBER.' SEL:ECTl: .BYTE '1:PLAY/SAVE 2: REPLAY' SELECT2: .BYTE''3:PLAY ONLY 4:MEMRST' ONLYPLY: .BYTE 'PLAY ONLY NO STORE
' NOTE: .BYTE 'NOTE/TIME: ' PLYMSG: .BYTE 'PLAY SE6lUENCE: ' CLRMSG: .BYTE ' MEMORY EMPTY ' ZERO: .BYTE ' 32K BYTES MEMORY

RESET: .BYTE ' RESET ' FIN: :BYTE ' RAM CLEARED ' FALTY: .BYTE ' 32K BYTES CHECKED
' FNDIT: .BYTE 'Found sequence No ' MESGA: .BYTE 'TESTING 32K BYTE RAM' ME$O8: .BYTE 'Finished testing RAM' SE6tDPY . BYTE' SEA No: ' :

RAMF: .8YTE ' < WARNING ? ' RAMFL: .BYTE 't RAM IS FULL >' WRNMESO: . BYTE' < RAM FAULTY ? ' SUBSTITUTE SHEET

WO 92/21106 ~ ~ (~ ~ ~ ~ - 3 6 - PCT/AU92/002'~' ~E#~E°ll~ ###~E##~E##~E#~E- ~lE~ ##
i # TABLES ~c CONSTANTS #
##°lE ~E°~E#~E
KEYTBL: FCB *00,'D',*OC,*27,*18,*E4 FCB *01,'E',*OC,*E0,*19,*G0 FCB *02,'F',*OD,*A4,*iB,*48 FCB *03,'F',*OE,*74,*iC,*E8 FCB *04,'G',*0F,*SG,*lE,*AO
FCB *05,'G',*10,*39,*20,*72 FCB *08,'A',*ii,*30,*22,*60 FCB *09,'A',*11,*dE,*22,*DC
FCB *OA,'B',*13,*4A,*26,*94 FCB *OB,'C',*14,*70,*28,*EO
FCB *OC,'C',*15,*A8,*2B,*50 FCB *OD,'D',*16,*F2,*2D,*E4 FCB *07,'R',*00,*00,*00,*00 SEATBL: FCB *00,'1' FCB *01,'2' FCB *02,'3' FCB *03,'4' FCB *04,'S' FCB *O5,'6' FCB *08,'7' FCB *09,'8' FCB *OA,'9' TIMTBL: FCB *00,*01,'1' FCB *01,*02,'2' FCB *02,*03,'3' FCB *03,*04,'4' FCB *04,*05,'S' FCB *08,*Od,'6' FCB *09,*07,'7' FCB *OA,*08,'8' FCB *OB,*09,'9' FCB *OC,*00,'0' TONETBL: FCB *OC,*27 ;311.1 Hz FCB *OD,*A4 ;349.2 Hz FCB *OF,*50 ;392.0 Hz FCB *ii,*30 ;440.0 Hz FCB *13,*4A ;493.8 Hz FCB *15,*A8 ;554.4 Hz FCB *i8,*4E ;622.2 Hz FCB *i8,*48 ;1B4.8 Hz FCB *iE,*AO ;784.0 Hz FCB *22,*60 ;880.0 Hz END
_ . : : . :, ;.; _ ;: -..~; ,. ~,.~ ~., :;v , ;.. ; . ~ ~, . . ., ... - :.

The software and hardware, as described, are subject to modification as may be necessary to adapt the training device to a variety of other athletic functions which have not been described specifically in this application. Other changes and modifications will be apparent to persons skilled in the art and may be made without departing from the broad concepts of the invention as herein described and claimed.

Claims (7)

1. A sports training device to deliver to a sportsperson engaged in a sporting activity predetermined synchronisation signals in the form of auditory pulses to induce and guide movements of the sportsperson engaged in that sporting activity comprising a digital logic computer and a tone generator, the computer logic being programmed to activate the tone generator in accordance with stimulus timing parameters, means to input into the computer predetermined stimulus timing parameters based upon a behavioural analysis of models of the relevant sporting activity to cause the computer to activate the tone generator to generate a sequence of auditory pulses and audio output means through which the generated sounds are relayed to the sportsperson engaged in the sporting activity as a guide to the sporting activity characterised in that said stimulus timing parameters are movement timing parameters having varying characteristics indicative of the onset, temporal duration and temporal proportionality of specific movements of different parts of the body of the sportsperson engaged in a sporting activity derived from a prior behavioural analysis of movement initiation, the temporal duration of movements, and the relative proportional timing of movements, and wherein said sequence of auditory pulses have predetermined varying characteristics of intensity frequency or tonal quality or the like in order to signal the onset, temporal duration and temporal proportionality of specific movements of different body parts to be performed by the sportsperson.
2. A device as claimed in claim 1, wherein the predetermined characteristics also signal additional information concerning the movements to be performed.
3. A device as claimed in claim 1, wherein said audio means includes an earpiece to be worn by the sportsperson.
4. A device as claimed in claim 1, wherein the audio output means includes a radio link.
5. A device as claimed in claim 1, wherein the means to input stimulus parameters includes a keyboard.
6. A device as claimed in claim 1, including means whereby a number of different auditory sequences may be stored concurrently.
7. A device as claimed in claim 1, wherein means are included to store a plurality of programmes.
CA002109413A 1991-05-22 1992-05-22 Sports training device Expired - Fee Related CA2109413C (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
AUPK627691 1991-05-22
AUPK6276 1991-05-22
PCT/AU1992/000237 WO1992021106A1 (en) 1991-05-22 1992-05-22 Sports training device

Publications (2)

Publication Number Publication Date
CA2109413A1 CA2109413A1 (en) 1992-11-23
CA2109413C true CA2109413C (en) 2002-07-02

Family

ID=3775419

Family Applications (1)

Application Number Title Priority Date Filing Date
CA002109413A Expired - Fee Related CA2109413C (en) 1991-05-22 1992-05-22 Sports training device

Country Status (7)

Country Link
EP (1) EP0587622B1 (en)
JP (1) JP3308529B2 (en)
KR (1) KR100218640B1 (en)
AU (1) AU650755B2 (en)
CA (1) CA2109413C (en)
DE (1) DE69218597T2 (en)
WO (1) WO1992021106A1 (en)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1995011730A1 (en) * 1993-10-27 1995-05-04 Gerhard Roth Process and device for sensory motion control
GB2316198B (en) * 1995-05-16 1999-11-10 Patrick Gerard Miley Programmable audible pacing device
GB9509849D0 (en) * 1995-05-16 1995-07-12 Miley Patrick G Programmeable sports pacing device
FI111215B (en) * 1995-05-31 2003-06-30 Polar Electro Oy Method and system for measuring pulse utilizing telemetric data transmission
AT3169U1 (en) 1999-04-21 1999-11-25 Wagner Herrmann GOLF TRAINING DEVICE AND GOLF TRAINING SYSTEM
AU2004255366B2 (en) * 2003-07-14 2009-06-25 Fusion Sport International Pty Ltd Sports training and testing methods, apparatus and system
JP4770313B2 (en) * 2005-07-27 2011-09-14 ソニー株式会社 Audio signal generator
US10478698B2 (en) 2012-04-10 2019-11-19 Apexk Inc. Interactive cognitive-multisensory interface apparatus and methods for assessing, profiling, training, and/or improving performance of athletes and other populations
US9248358B2 (en) 2012-04-10 2016-02-02 Apexk Inc. Interactive cognitive-multisensory interface apparatus and methods for assessing, profiling, training, and improving performance of athletes and other populations
CA2867304A1 (en) 2012-08-22 2016-04-09 Apexk Inc. Concussion rehabilitation device and method
CN111768758B (en) * 2020-07-24 2023-04-07 四川大学华西医院 Self-service basic life support assessment system based on video interpretation technology

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3492582A (en) * 1967-03-21 1970-01-27 Richard D Heywood Method and apparatus for teaching track runners proper pacing rhythm
US3808707A (en) * 1972-04-03 1974-05-07 C Fink Physical training system
US4285041A (en) * 1979-06-22 1981-08-18 Smith Kent G Digital pacing timer
FR2470404A1 (en) * 1979-11-26 1981-05-29 Allain Robert Timing circuit for pistol shooting - includes oscillator and divider chain producing pips at timed intervals
DE3445654A1 (en) * 1984-12-14 1986-06-19 Volker 6702 Bad Dürkheim Reinfrank Timer for training purposes
FR2622994B1 (en) * 1987-11-06 1990-03-23 Barjon Franck TIMING PROCESS WITH FIXED OR VARIABLE REST TIMES AND DEVICE FOR IMPLEMENTING THE SAME
AU1380792A (en) * 1991-03-26 1992-10-01 Peter Claringbull An apparatus for a physical exercise game

Also Published As

Publication number Publication date
WO1992021106A1 (en) 1992-11-26
EP0587622A4 (en) 1994-03-24
JPH06507556A (en) 1994-09-01
DE69218597T2 (en) 1997-11-13
KR100218640B1 (en) 1999-09-01
DE69218597D1 (en) 1997-04-30
CA2109413A1 (en) 1992-11-23
AU650755B2 (en) 1994-06-30
JP3308529B2 (en) 2002-07-29
EP0587622A1 (en) 1994-03-23
EP0587622B1 (en) 1997-03-26
AU1769992A (en) 1992-12-30

Similar Documents

Publication Publication Date Title
CA2109413C (en) Sports training device
US4834375A (en) Start system batting unit and method
US6345197B1 (en) Age-based heart rate target zone method and apparatus
US9414784B1 (en) Movement assessment apparatus and a method for providing biofeedback using the same
US5921890A (en) Programmable audible pacing device
US5871406A (en) Golf swing timing process
JP5128135B2 (en) Voice interval training device
US8608621B2 (en) Audio pacing device
US5733201A (en) Golf training glove
JP5095554B2 (en) Sports electronic training system and its application
US20150106025A1 (en) Method and System for Determining and Communicating a Performance Measure Using a Performance Measurement System
US20040171956A1 (en) Heart rate monitor using color to convey information
JPS6297572A (en) Sports technique and reaction training apparatus
US20170229041A1 (en) Coordinated physical and sensory training
WO1998028053A1 (en) Interactive motion training device and method
JP2009050699A (en) Sports electronic training system with electronic gaming function, and applications thereof
CN207941171U (en) Body fitness testing system
AT3169U1 (en) GOLF TRAINING DEVICE AND GOLF TRAINING SYSTEM
US5558519A (en) Method for instruction of golf and the like
US5642334A (en) Pacing device for taking an examination
KR102429683B1 (en) Exercise analysis system and method using dual wearable device
GB2065338A (en) Improvements in and relating to a metronome device
EP0253920B1 (en) Sports technique and reaction training system
US20040100366A1 (en) Tactile rhythm generator
Van Hooff Performance assessment and feedback of fitness exercises using smartphone sensors

Legal Events

Date Code Title Description
EEER Examination request
MKLA Lapsed