; DEFINE.INC ; 20000108 Straight Key Monotor toneを ; PORTA,BIT3 から PORTB,BIT4に変更 ; 20000730 Changed SCALE from 2 to 4 to align ; PTT-delay with Yaesu FT100S ;******************************************************************* ; SPEEDの定義 ;******************************************************************** DIGIT0 EQU 12 ;INPUT=0 40 DIGIT1 EQU 13 ;INPUT=1 37 DIGIT2 EQU 14 ;INPUT=2 34 DIGIT3 EQU 16 ;INPUT=3 30 DIGIT4 EQU 18 ;INPUT=4 27 DIGIT5 EQU 20 ;INPUT=5 24 DIGIT6 EQU 22 ;INPUT=6 22 DIGIT7 EQU 24 ;INPUT=7 20 DIGIT8 EQU 27 ;INPUT=8 18 DIGIT9 EQU 30 ;INPUT=9 16 DIGIT10 EQU 35 ;INPUT=10 14 DIGIT11 EQU 40 ;INPUT=11 12 DIGIT12 EQU 50 ;INPUT=12 10 DIGIT13 EQU 60 ;INPUT=13 8 DIGIT14 EQU 80 ;INPUT=14 6WD/MIN DIGIT15 EQU 160 ;INPUT=15 3WD/MIN ;******************************************************************* ; 定数の定義 ;******************************************************************** ; ;PORTA, PORTA_BUF BIT 定義 DELAY_PTT EQU 4 ;DELAY PTT出力 Low Active KEY_OUT EQU 2 ;PORTA_BUF,KEY_OUT Key 出力 High=Mark PWR_LED EQU 1 ;Power LED Low=PWR ON DELAY_TONE EQU 0 ;Delay tone 800Hz 出力 ; ;PORTBの BIT 定義 KEY_IN EQU 7 ;ストレートキーインプット DASH_IN EQU 6 ;パドル長点入力 DOT_IN EQU 5 ;パドル短点入力 SIDE_TONE EQU 4 ;SIDE TONE 800Hz出力 ; ;BIT4 は未使用 ; ;BIT3-0はスピードのバイナリー入力 ;MEMORYREG BIT 定義 DASHMEMORY EQU 6 ;MEMORYREG,DASHMEMORY DOTMEMORY EQU 5 ;MEMORYREG,DOTMEMORY MARK_AUTO EQU 2 ;MEMORYREG,MARK_AUTO TIMER EQU 256-49 ;Timer 初期値(256-10=246) はTMRにセットまでのサイクル ;0.4(uS)x32(プリスケーラ)x49(Timer初期値)=627.2USec(797Hz) INT_COUNT EQU 40 ;タイマーインタラプトのカウント数 ;25mSx40=1Sec SCALE EQU 4 ;Shift clock Scale Value PTTVAL1 EQU 16 ;1/1600*16=10mSec PTTVAL2 EQU 75 ;10mSec単位の指定 DLYMARKBIT EQU 0 ;INT_FLAG BIT0=DLYMARKBIT SLEEPFLAG EQU 1 ;INT_FLAG BIT1=SLEEP Timer Expired EK_CLK_CTR_ZERO EQU 2 ;INT_FLAG,EK_CLK_CTR_ZERO TIMEINT EQU 7 ;INT_FLAG BIT7=Time Int Flag SLEEPVAL16 EQU 16 ;1/16 SLEEPVAL100 EQU 100 ;1/100, 1/1600=1Sec SLEEPVAL60 EQU 60 ;1/60, Minute SLEEPVALMIN EQU 5 ;SLEEPまでの時間(分)指定 DOT_COUNT EQU 4 ;DOT TIME DASH_COUNT EQU 12 ;DASH TIME MEMORY_DOT_CLR EQU 0 ;MEMORY CLEAR TIME+1 MEMORY_DASH_CLR EQU 3 ;MEMORY CLEAR TIME+1 ST_IDLE EQU 0 ;IDLE STATE DOT_ACT EQU 1 ;Dot Active SP_AFT_DOT EQU 2 ;Space after DOT DASH_ACT EQU 3 ;DASH Active SP_AFT_DASH EQU 4 ;Space after Dash SPEED_SW_PART EQU 0Fh ;SPEED設定スイッチはRB3-RB0 ;******************************************************************** ; Registerのマッピング 0Ch(12)-04Fh(79)の68個 ;******************************************************************** STATEREG EQU 12 ;memory 12(0Ch) ; ;0:Idle ; ;1:Dot Active ; ;2:Space Active after Dot ; ;3:Dash Active ; ;4:Space Active After Dash MEMORYREG EQU 13 ;短点、長点 メモリー ; ;BIT0:短点 ; ;BIT4:長点 EK_CLK_CTR EQU 14 ;ELEKEY CLOCK COUNTER (4 countで1DOT) ELEKEY_DEV EQU 15 ;ELEKEY CLOCK DEVIDER SAVE_W EQU 16 ;save W value while Interrupt INT_FLAG EQU 20 ;メモリ 20(014h) SCALER EQU 21 ;Shifter Clock Scaling (21) PTTDLY1 EQU 22 ;PTT delay Counter1(LSB) (22) PTTDLY2 EQU 23 ;PTT delay Counter2(MSB) (23) SLEEPDEV1 EQU 24 ;First Divider SLEEPDEV2 EQU 25 ;2nd Divider SLEEPDEVSEC EQU 26 ;Sec Counter SLEEPDEVMIN EQU 27 ;Min Counter PORTA_BUF EQU 28 ;PORTA用BUFFER ELEKEY_CLOCK EQU 29 ;DOT TIME/4分のカウント数(1600Hz) RAM0 EQU 32 ;メモリ 020H RAM1 EQU 33 ;メモリ 021H RAM2 EQU 34 ;メモリ 022H RAM3 EQU 35 ;メモリ 023h RAM4 EQU 36 ;メモリ 024h RAM5 EQU 37 ;メモリ 025h RAM6 EQU 38 ;メモリ 026h RAM7 EQU 39 ;メモリ 027h RAM8 EQU 40 ;メモリ 028H RAM9 EQU 41 ;メモリ 029H RAM10 EQU 42 ;メモリ 02AH RAM11 EQU 43 ;メモリ 02Bh RAM12 EQU 44 ;メモリ 02Ch RAM13 EQU 45 ;メモリ 02Dh RAM14 EQU 46 ;メモリ 02Eh RAM15 EQU 47 ;メモリ 02Fh RAM16 EQU 48 ;メモリ 030H RAM17 EQU 49 ;メモリ 031H RAM18 EQU 50 ;メモリ 032H RAM19 EQU 51 ;メモリ 033h RAM20 EQU 52 ;メモリ 034h RAM21 EQU 53 ;メモリ 035h RAM22 EQU 54 ;メモリ 036h RAM23 EQU 55 ;メモリ 037h RAM24 EQU 56 ;メモリ 038H RAM25 EQU 57 ;メモリ 039H RAM26 EQU 58 ;メモリ 03AH RAM27 EQU 59 ;メモリ 03Bh RAM28 EQU 60 ;メモリ 03Ch RAM29 EQU 61 ;メモリ 03Dh RAM30 EQU 62 ;メモリ 03Eh RAM31 EQU 63 ;メモリ 03Fh