proton_c_conversion.md 5.5 KB

キーボードを Proton C を使うように変更

Proton C は Pro Micro の差し替え可能品であるため、簡単に使用することができます。 このページでは、キーボードを変換するための便利な自動化されたプロセスと、Pro Micro では利用できない Proton C の機能を利用したい場合の手動プロセスについて説明しています。

自動で変換

QMK で現在サポートされているキーボードが Pro Micro(または互換ボード)を使用しており、Proton C を使用したい場合は、以下のように make 引数に CONVERT_TO_PROTON_C=yes (または CTPC=yes) を追加することでファームウェアを生成することができます。

make 40percentclub/mf68:default CTPC=yes

同じ引数をキーマップの rules.mk に追加しても同じことができます。

これは、次のように、#ifdef を使用してコード内で使用できる CONVERT_TO_PROTON_C フラグを公開します。

#ifdef CONVERT_TO_PROTON_C
    // Proton C code
#else
    // Pro Micro code
#endif

PORTB/DDRB などが定義されていないというエラーが発生した場合は、ARM と AVR の両方で機能する GPIO 制御 を使用するようにキーボードのコードを変換する必要があります。これは AVR ビルドにまったく影響を与えません。

Proton C には1つのオンボード LED(C13)しかなく、デフォルトでは TXLED(D5) がそれにマップされています。代わりに RXLED(B0) をそれにマッピングしたい場合は、config.h に次のように追加してください。

#define CONVERT_TO_PROTON_C_RXLED

機能の変換

下記は ARM ボードに実装されているものに基づいたデフォルトです。

機能 説明
オーディオ 有効
RGB ライト 無効
バックライト ARM が自動コンフィギュレーションを提供できるようになるまで、タスク駆動 PWMが強制されます
USB ホスト (例えば USB-USB コンバータ) 未サポート (USB ホストコードは AVR 固有のもので、現在 ARM ではサポートされていません。
分割キーボード 部分的 - 有効にする機能に大きく依存します

手動で変換

CTPC = yes を指定せずに Proton C をネイティブで使用するには、rules.mkMCU行を変更する必要があります:

MCU = STM32F303
BOARD = QMK_PROTON_C

次の変数が存在する場合は削除します。

  • BOOTLOADER
  • EXTRA_FLAGS

最後に、config.hのすべてのピン割り当てを STM32 上の同等のものに変換します。

| Pro Micro 左側| Proton C 左側 | | Proton C 右側 | Pro Micro 右側 | |--------------|--------------|-|--------------|---------------| | D3 | A9 | | 5v | RAW (5v) | | D2 | A10 | | GND | GND | | GND | GND | | FLASH | RESET | | GND | GND | | 3.3v | Vcc 1 | | D1 | B7 | | A2 | F4 | | D0 | B6 | | A1 | F5 | | D4 | B5 | | A0 | F6 | | C6 | B4 | | B8 | F7 | | D7 | B3 | | B13 | B1 | | E6 | B2 | | B14 | B3 | | B4 | B1 | | B15 | B2 | | B5 | B0 | | B9 | B6 | | B0 (RX LED) | C13 2 | | C13 2 | D5 (TX LED) |

また、Proton C の拡張部分にあるいくつかの新しいピンを利用することもできます。

| 左側 | | 右側 | |------|-|-------| | A43 | | B10 | | A54 | | B11 | | A6 | | B12 | | A7 | | A145 (SWCLK) | | A8 | | A135 (SWDIO) | | A15 | | RESET6 |

注釈:

  1. Pro Micro の Vcc は 3.3V または 5V にすることができます。
  2. Proton C のオンボード LED は、Pro Micro のように2つはありません、1つだけです。Pro Micro には、RX LED(D5) と TX LED(B0)があります。
  3. A4 ピンは、スピーカーと共有されています。
  4. A5 ピンは、スピーカーと共有されています。
  5. A13A14 ピンはハードウェアデバッグ (SWD) に使用されます。GPIO にも使えますが、最後に使ってください。
  6. RESET を 3.3V とショート(プルアップ)して MCU をリブートします。これは Pro Micro のようにブートローダモードにはならず、MCU をリセットするだけです。