diff options
Diffstat (limited to 'keyboards/hhkb/config.h')
| -rw-r--r-- | keyboards/hhkb/config.h | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/keyboards/hhkb/config.h b/keyboards/hhkb/config.h index 3f0528b4b..af7ecc5e2 100644 --- a/keyboards/hhkb/config.h +++ b/keyboards/hhkb/config.h | |||
| @@ -54,6 +54,47 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. | |||
| 54 | keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ | 54 | keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ |
| 55 | ) | 55 | ) |
| 56 | 56 | ||
| 57 | #ifdef HHKB_RN42_ENABLE | ||
| 58 | // rn42 support -- acquired from the tmk repo. This is almost certainly not | ||
| 59 | // integrated with qmk in the correct way. | ||
| 60 | |||
| 61 | #define SUART_OUT_PORT PORTD | ||
| 62 | #define SUART_OUT_BIT 0 | ||
| 63 | #define SUART_IN_PIN PIND | ||
| 64 | #define SUART_IN_BIT 1 | ||
| 65 | |||
| 66 | #ifdef __AVR_ATmega32U4__ | ||
| 67 | /* iom32u4.h has no definition of UCSR1D. copy from iom32u2.h */ | ||
| 68 | #define UCSR1D _SFR_MEM8(0xCB) | ||
| 69 | #define RTSEN 0 | ||
| 70 | #define CTSEN 1 | ||
| 71 | |||
| 72 | #define SERIAL_UART_BAUD 115200 | ||
| 73 | #define SERIAL_UART_DATA UDR1 | ||
| 74 | #define SERIAL_UART_UBRR ((F_CPU/(16.0*SERIAL_UART_BAUD)-1+0.5)) | ||
| 75 | #define SERIAL_UART_RXD_VECT USART1_RX_vect | ||
| 76 | #define SERIAL_UART_TXD_READY (UCSR1A&(1<<UDRE1)) | ||
| 77 | #define SERIAL_UART_INIT() do { \ | ||
| 78 | UBRR1L = (uint8_t) SERIAL_UART_UBRR; /* baud rate */ \ | ||
| 79 | UBRR1H = ((uint16_t)SERIAL_UART_UBRR>>8); /* baud rate */ \ | ||
| 80 | UCSR1B |= (1<<RXCIE1) | (1<<RXEN1); /* RX interrupt, RX: enable */ \ | ||
| 81 | UCSR1B |= (0<<TXCIE1) | (1<<TXEN1); /* TX interrupt, TX: enable */ \ | ||
| 82 | UCSR1C |= (0<<UPM11) | (0<<UPM10); /* parity: none(00), even(01), odd(11) */ \ | ||
| 83 | UCSR1D |= (0<<RTSEN) | (0<<CTSEN); /* RTS, CTS(no flow control by hardware) */ \ | ||
| 84 | DDRD |= (1<<5); PORTD &= ~(1<<5); /* RTS for flow control by firmware */ \ | ||
| 85 | sei(); \ | ||
| 86 | } while(0) | ||
| 87 | #define SERIAL_UART_RTS_LO() do { PORTD &= ~(1<<5); } while (0) | ||
| 88 | #define SERIAL_UART_RTS_HI() do { PORTD |= (1<<5); } while (0) | ||
| 89 | #else | ||
| 90 | #error "USART configuration is needed." | ||
| 91 | #endif | ||
| 92 | |||
| 93 | /* power control of key switch board */ | ||
| 94 | #define HHKB_POWER_SAVING | ||
| 95 | |||
| 96 | #endif | ||
| 97 | |||
| 57 | /* | 98 | /* |
| 58 | * Feature disable options | 99 | * Feature disable options |
| 59 | * These options are also useful to firmware size reduction. | 100 | * These options are also useful to firmware size reduction. |
