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;
 
  192 uint16_t StoreEEpromTimer;
 
  200 volatile uint8_t icnt;
 
  201 volatile uint8_t ocr2a;
 
volatile uint8_t StateRiseTimeCounter
Zähler für Anstieg des Mithörtons.
Definition: globals.h:215
 
uint16_t MenuCtrlTimer
Diverse Zähler für Timer 0.
Definition: globals.h:218
 
volatile uint8_t StateButtonPressed
Merker für Speichertaste betätigt.
Definition: globals.h:213
 
volatile uint8_t TimerStraightKeyPressed
Timer Variable für Entprellung.
Definition: globals.h:208
 
volatile uint8_t TimerPaddleDitKeyPressed
Timer Variable für Entprellung.
Definition: globals.h:210
 
volatile uint8_t EncoderTimer
10ms Timer for Encoder
Definition: globals.h:186
 
uint8_t WpM
Aktuelle Zeichengeschwindigkeit.
Definition: globals.h:194
 
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:203
 
volatile uint8_t StateStraightKeyPressed
Merker für StraightKey betätigt.
Definition: globals.h:207
 
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:219
 
#define MSGSIZE
60 Zeichen für jeden Textspeicher
Definition: globals.h:169
 
volatile uint8_t TimerPaddleDahKeyPressed
Timer Variable für Entprellung.
Definition: globals.h:212
 
volatile uint16_t SpcMillis
Dauer einer Pause zwischen den Zeichen.
Definition: globals.h:205
 
volatile uint16_t t_elementlength
Timer 0 max. 65535ms, element length of dit or dah.
Definition: globals.h:220
 
volatile uint8_t StatePaddleDahKeyPressed
Merker für Paddle betätigt.
Definition: globals.h:211
 
volatile uint8_t TimerButtonPressed
Timer Variable für Entprellung.
Definition: globals.h:214
 
volatile uint8_t StatePaddleDitKeyPressed
Merker für Paddle betätigt.
Definition: globals.h:209
 
uint8_t KeyerMode
Merker für Iambic A, Iambic B oder Ultimatic.
Definition: globals.h:196
 
volatile uint8_t StateRiseTime
Definition: globals.h:216
 
volatile uint8_t lastButton
Wert der letzten Buttonabfrage.
Definition: globals.h:202
 
volatile uint16_t DahMillis
Dauer eines Dahs.
Definition: globals.h:204
 
uint8_t PaddleMode
Merker für Links / Rechts vertauscht.
Definition: globals.h:195
 
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 Msg3[MSGSIZE]
Textspeicher 3.
Definition: globals.h:175
 
char Msg5[MSGSIZE]
Textspeicher 5.
Definition: globals.h:177
 
char Msg1[MSGSIZE]
Textspeicher 1.
Definition: globals.h:173
 
char Msg2[MSGSIZE]
Textspeicher 2.
Definition: globals.h:174
 
char Msg4[MSGSIZE]
Textspeicher 4.
Definition: globals.h:176
 
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