6 #ifndef GLOBALS_H_INCLUDED
7 #define GLOBALS_H_INCLUDED
9 #define F_CPU 16000000UL
11 #define SINEWAVELENGTH 64
12 #define F_CPUPRESIN (F_CPU/(PRESCALER*SINEWAVELENGTH))
13 #define USART_BAUDRATE 9600
14 #define UBRR_VALUE (((F_CPU/(USART_BAUDRATE*16UL)))-1)
24 #include <avr/pgmspace.h>
26 #include <avr/interrupt.h>
27 #include <avr/eeprom.h>
28 #include <util/delay.h>
29 #include <util/atomic.h>
31 #define cbi(sfr, bit) (_SFR_BYTE(sfr) &= ~_BV(bit))
32 #define sbi(sfr, bit) (_SFR_BYTE(sfr) |= _BV(bit))
36 #include "oled/font.h"
39 #define EEMEM __attribute__ ((section (".eeprom")))
43 #define NOINIT __attribute__ ((section (".noinit")))
46 #define CALL " DL7BJ "
47 #define PRG " BJ-Keyer "
61 #define SINGLE_PADDLE 4
63 #define PADDLE_NORMAL 0
64 #define PADDLE_REVERSE 1
66 #define SENDING_NOTHING 0
70 #define SENDING_STRAIGHT 4
71 #define SENDING_AUTOMATIC 5
76 #define LEFT_PADDLE PD2
77 #define RIGHT_PADDLE PD3
78 #define STRAIGHT_KEY PD4
96 #define NO_KEY_PRESSED 0
97 #define KEY_PRESSED_DEBOUNCE 1
106 #define M_ULTIMATIC 7
112 #define M_MEMBUTTONMODE 13
113 #define M_RISETIME 14
114 #define M_DEBOUNCE 15
117 #define CLEARLINE " "
183 uint8_t LastPINDState;
199 volatile uint8_t icnt;
200 volatile uint8_t ocr2a;
volatile uint8_t StateRiseTimeCounter
Zähler für Anstieg des Mithörtons.
Definition: globals.h:214
uint16_t MenuCtrlTimer
Wartezeit bis zur Betriebsanzeige nach Config.
Definition: globals.h:217
volatile uint8_t StateButtonPressed
Merker für Speichertaste betätigt.
Definition: globals.h:212
volatile uint8_t TimerStraightKeyPressed
Timer Variable für Entprellung.
Definition: globals.h:207
volatile uint8_t TimerPaddleDitKeyPressed
Timer Variable für Entprellung.
Definition: globals.h:209
volatile uint8_t EncoderTimer
10ms Timer for Encoder
Definition: globals.h:186
uint8_t WpM
Aktuelle Zeichengeschwindigkeit.
Definition: globals.h:193
volatile int8_t EncoderPosSubConfig
Encoderposition für Submenues.
Definition: globals.h:190
volatile int8_t EncoderPosConfig
Encoderposition für Einstellungen.
Definition: globals.h:189
volatile uint16_t DitMillis
Dauer eines Dits.
Definition: globals.h:202
volatile uint8_t StateStraightKeyPressed
Merker für StraightKey betätigt.
Definition: globals.h:206
volatile int8_t EncoderPos
Encoderposition für WpM/BpM.
Definition: globals.h:188
volatile int8_t EncoderCounter
Vor/Rück Zähler.
Definition: globals.h:187
volatile uint16_t t_delayms
Timer 0 max. 65535ms, all purpose timer variable.
Definition: globals.h:218
#define MSGSIZE
60 Zeichen für jeden Textspeicher
Definition: globals.h:169
volatile uint8_t TimerPaddleDahKeyPressed
Timer Variable für Entprellung.
Definition: globals.h:211
volatile uint16_t SpcMillis
Dauer einer Pause zwischen den Zeichen.
Definition: globals.h:204
volatile uint16_t t_elementlength
Timer 0 max. 65535ms, element length of dit or dah.
Definition: globals.h:219
volatile uint8_t StatePaddleDahKeyPressed
Merker für Paddle betätigt.
Definition: globals.h:210
volatile uint8_t TimerButtonPressed
Timer Variable für Entprellung.
Definition: globals.h:213
volatile uint8_t StatePaddleDitKeyPressed
Merker für Paddle betätigt.
Definition: globals.h:208
uint8_t KeyerMode
Merker für Iambic A, Iambic B oder Ultimatic.
Definition: globals.h:195
volatile uint8_t StateRiseTime
Timer für Anstieg des Mithörtons.
Definition: globals.h:215
volatile uint16_t StoreEEpromTimer
Zählvariable für auto. Speicherung EEprom.
Definition: globals.h:191
volatile uint8_t lastButton
Wert der letzten Buttonabfrage.
Definition: globals.h:201
volatile uint16_t DahMillis
Dauer eines Dahs.
Definition: globals.h:203
uint8_t PaddleMode
Merker für Links / Rechts vertauscht.
Definition: globals.h:194
Definition: globals.h:151
uint8_t Trx2
TRX 2 eingeschaltet.
Definition: globals.h:153
uint8_t Memory
Punkt/Strich Speicher.
Definition: globals.h:160
uint8_t RiseTimeCounter
Anzahl Sinusschwingungen für den Anstieg.
Definition: globals.h:165
uint8_t RiseTime
Anstiegszeit Sinuston.
Definition: globals.h:164
uint8_t WpMBpM
WpM oder BpM Anzeige.
Definition: globals.h:156
uint8_t Trx1
TRX 1 eingeschaltet.
Definition: globals.h:152
uint8_t SidetoneEnabled
Mithörton eingeschaltet.
Definition: globals.h:155
uint8_t Reverse
linkes/rechtes Paddle vertauschen
Definition: globals.h:157
uint16_t SidetoneFreq
Frequenz des Mithörtons.
Definition: globals.h:162
uint8_t Ratio
Punkt/Strich Verhältnis 1:3.
Definition: globals.h:158
uint8_t DebounceTime
Entprellzeit für Straight Key Eingang.
Definition: globals.h:166
uint8_t Weight
Punkt/Strich Gewichtung.
Definition: globals.h:159
uint8_t WpM
WpM.
Definition: globals.h:163
uint8_t MemButtonMode
Button 5 als Umschalter TRX oder Speichertaste.
Definition: globals.h:161
uint8_t KeyerMode
Iambic A, Iambic B oder Ultimatic.
Definition: globals.h:154
Definition: globals.h:172
char Msg1[60]
Textspeicher 1.
Definition: globals.h:173
char Msg3[60]
Textspeicher 3.
Definition: globals.h:175
char Msg5[60]
Textspeicher 5.
Definition: globals.h:177
char Msg4[60]
Textspeicher 4.
Definition: globals.h:176
char Msg2[60]
Textspeicher 2.
Definition: globals.h:174
Definition: globals.h:121
uint8_t WriteWpMEEprom
nicht gespeicherte Geschwindigkeit
Definition: globals.h:123
uint8_t WriteEEprom
nicht gespeicherte EEprom Werte
Definition: globals.h:124
uint8_t LastSymbolWasDit
letztes Symbol war ein Punkt
Definition: globals.h:130
uint8_t DitPressed
Dit Hebel betätigt.
Definition: globals.h:131
uint8_t WpMChanged
Geschwindigkeit geändert.
Definition: globals.h:122
uint8_t SidetoneOff
Mithörton an oder aus.
Definition: globals.h:126
uint8_t DahPressed
Dah Hebel betätigt.
Definition: globals.h:132
uint8_t Automatic
Speicher wird gesendet.
Definition: globals.h:129
uint8_t SidetoneEnabled
Mithörton ein- oder ausgeschaltet.
Definition: globals.h:127
uint8_t SendStatus
Status, ob Symbol gesendet wird.
Definition: globals.h:128
uint8_t WriteMsgEEprom
nicht gespeicherte Textnachrichten
Definition: globals.h:125