From 3cf179be61a10860b2b66aecf2ec5ca6f0e30605 Mon Sep 17 00:00:00 2001 From: Jack Humbert Date: Thu, 10 Jan 2019 11:22:57 -0500 Subject: Adds Proton C Conversion (#4661) * adds proton c base * fixes custom matrix include * adds readme.md * initial proton coversion, no pin mapping * start of mcu selection * add pin mapping and sweet16 test * add at90 to list * disable backlight, fix d7 * update flag names * doc updates * proton c update for mcu selection --- docs/_sidebar.md | 100 -------------------------------------------- docs/_summary.md | 2 + docs/index.html | 2 +- docs/proton_c_conversion.md | 21 ++++++++++ docs/zh/_sidebar.md | 99 ------------------------------------------- docs/zh/_summary.md | 99 +++++++++++++++++++++++++++++++++++++++++++ 6 files changed, 123 insertions(+), 200 deletions(-) delete mode 100644 docs/_sidebar.md create mode 100644 docs/proton_c_conversion.md delete mode 100644 docs/zh/_sidebar.md create mode 100644 docs/zh/_summary.md (limited to 'docs') diff --git a/docs/_sidebar.md b/docs/_sidebar.md deleted file mode 100644 index b209c5e0b8..0000000000 --- a/docs/_sidebar.md +++ /dev/null @@ -1,100 +0,0 @@ -* [Complete Newbs Guide](newbs.md) - * [Getting Started](newbs_getting_started.md) - * [Building Your First Firmware](newbs_building_firmware.md) - * [Flashing Firmware](newbs_flashing.md) - * [Testing and Debugging](newbs_testing_debugging.md) - * [Best Practices](newbs_best_practices.md) - * [Learning Resources](newbs_learn_more_resources.md) - -* [QMK Basics](README.md) - * [QMK Introduction](getting_started_introduction.md) - * [Contributing to QMK](contributing.md) - * [How to Use Github](getting_started_github.md) - * [Getting Help](getting_started_getting_help.md) - -* [FAQ](faq.md) - * [General FAQ](faq_general.md) - * [Build/Compile QMK](faq_build.md) - * [Debugging/Troubleshooting QMK](faq_debug.md) - * [Keymap](faq_keymap.md) - -* Detailed Guides - * [Install Build Tools](getting_started_build_tools.md) - * [Vagrant Guide](getting_started_vagrant.md) - * [Build/Compile Instructions](getting_started_make_guide.md) - * [Flashing Firmware](flashing.md) - * [Customizing Functionality](custom_quantum_functions.md) - * [Keymap Overview](keymap.md) - -* [Hardware](hardware.md) - * [AVR Processors](hardware_avr.md) - * [Drivers](hardware_drivers.md) - -* Reference - * [Keyboard Guidelines](hardware_keyboard_guidelines.md) - * [Config Options](config_options.md) - * [Keycodes](keycodes.md) - * [Documentation Best Practices](documentation_best_practices.md) - * [Documentation Templates](documentation_templates.md) - * [Glossary](reference_glossary.md) - * [Unit Testing](unit_testing.md) - * [Useful Functions](ref_functions.md) - * [Configurator Support](reference_configurator_support.md) - -* [Features](features.md) - * [Basic Keycodes](keycodes_basic.md) - * [US ANSI Shifted Keys](keycodes_us_ansi_shifted.md) - * [Quantum Keycodes](quantum_keycodes.md) - * [Advanced Keycodes](feature_advanced_keycodes.md) - * [Audio](feature_audio.md) - * [Auto Shift](feature_auto_shift.md) - * [Backlight](feature_backlight.md) - * [Bluetooth](feature_bluetooth.md) - * [Bootmagic](feature_bootmagic.md) - * [Combos](feature_combo) - * [Command](feature_command.md) - * [Dynamic Macros](feature_dynamic_macros.md) - * [Encoders](feature_encoders.md) - * [Grave Escape](feature_grave_esc.md) - * [Key Lock](feature_key_lock.md) - * [Layouts](feature_layouts.md) - * [Leader Key](feature_leader_key.md) - * [Macros](feature_macros.md) - * [Mouse Keys](feature_mouse_keys.md) - * [One Shot Keys](feature_advanced_keycodes.md#one-shot-keys) - * [Pointing Device](feature_pointing_device.md) - * [PS/2 Mouse](feature_ps2_mouse.md) - * [RGB Lighting](feature_rgblight.md) - * [RGB Matrix](feature_rgb_matrix.md) - * [Space Cadet Shift](feature_space_cadet_shift.md) - * [Space Cadet Shift Enter](feature_space_cadet_shift_enter.md) - * [Stenography](feature_stenography.md) - * [Swap Hands](feature_swap_hands.md) - * [Tap Dance](feature_tap_dance.md) - * [Terminal](feature_terminal.md) - * [Thermal Printer](feature_thermal_printer.md) - * [Unicode](feature_unicode.md) - * [Userspace](feature_userspace.md) - -* For Makers and Modders - * [Hand Wiring Guide](hand_wire.md) - * [ISP Flashing Guide](isp_flashing_guide.md) - * [ARM Debugging Guide](arm_debugging.md) - * [I2C Driver](i2c_driver.md) - -* For a Deeper Understanding - * [How Keyboards Work](how_keyboards_work.md) - * [Understanding QMK](understanding_qmk.md) - -* Other Topics - * [Using Eclipse with QMK](eclipse.md) - * [Support](support.md) - -* QMK Internals (In Progress) - * [Defines](internals_defines.md) - * [Input Callback Reg](internals_input_callback_reg.md) - * [Midi Device](internals_midi_device.md) - * [Midi Device Setup Process](internals_midi_device_setup_process.md) - * [Midi Util](internals_midi_util.md) - * [Send Functions](internals_send_functions.md) - * [Sysex Tools](internals_sysex_tools.md) diff --git a/docs/_summary.md b/docs/_summary.md index b209c5e0b8..c467a7231a 100644 --- a/docs/_summary.md +++ b/docs/_summary.md @@ -81,6 +81,8 @@ * [ISP Flashing Guide](isp_flashing_guide.md) * [ARM Debugging Guide](arm_debugging.md) * [I2C Driver](i2c_driver.md) + * [GPIO Controls](internals_gpio_control.md) + * [Proton C Conversion](proton_c_conversion.md) * For a Deeper Understanding * [How Keyboards Work](how_keyboards_work.md) diff --git a/docs/index.html b/docs/index.html index f5aa92b531..d6fdbdbcc1 100644 --- a/docs/index.html +++ b/docs/index.html @@ -17,7 +17,7 @@ name: 'QMK Firmware', nameLink: 'https://qmk.fm/', repo: 'qmk/qmk_firmware', - loadSidebar: true, + loadSidebar: '_summary.md', auto2top: true, formatUpdated: '{YYYY}/{MM}/{DD} {HH}:{mm}', search: { diff --git a/docs/proton_c_conversion.md b/docs/proton_c_conversion.md new file mode 100644 index 0000000000..be7d50a9f4 --- /dev/null +++ b/docs/proton_c_conversion.md @@ -0,0 +1,21 @@ +# Converting a board to use the Proton C + +If a board currently supported in QMK uses a Pro Micro (or compatible board) and you want to use the Proton C, you can generate the firmware by appending `CONVERT_TO_PROTON_C=yes` (or `CTPC=yes`) to your make argument, like this: + + make 40percentclub/mf68:default CTPC=yes + +You can add the same argument to your keymap's `rules.mk`, which will accomplish the same thing. + +This exposes the `CONVERT_TO_PROTON_C` flag that you can use in your code with `#ifdef`s, like this: + + #ifdef CONVERT_TO_PROTON_C + // Proton C code + #else + // Pro Micro code + #endif + +Before being able to compile, you may get some errors about `PORTB/DDRB`, etc not being defined, so you'll need to convert the keyboard's code to use the [GPIO Controls](internals_gpio_control.md) that will work for both ARM and AVR. This shouldn't affect the AVR builds at all. + +The Proton C only has one on-board LED (C13), and by default, the TXLED (D5) is mapped to it. If you want the RXLED (B0) mapped to it instead, add this like to your `config.h`: + + #define CONVERT_TO_PROTON_C_RXLED diff --git a/docs/zh/_sidebar.md b/docs/zh/_sidebar.md deleted file mode 100644 index c167612929..0000000000 --- a/docs/zh/_sidebar.md +++ /dev/null @@ -1,99 +0,0 @@ -* [完全指南菜鳥](zh/newbs.md) - * [入門](zh/newbs_getting_started.md) - * [構建第一個固件](zh/newbs_building_firmware.md) - * [刷新固件](zh/newbs_flashing.md) - * [測試和調試](zh/newbs_testing_debugging.md) - * [最佳實踐](zh/newbs_best_practices.md) - * [學習資源](zh/newbs_learn_more_resources.md) - -* [QMK基礎](zh/README.md) - * [QMK簡介](zh/getting_started_introduction.md) - * [特約QMK](zh/contributing.md) - * [如何使用Github上](zh/getting_started_github.md) - * [獲得幫助](zh/getting_started_getting_help.md) - -* [常問問題](zh/faq.md) - * [常問問題](zh/faq_general.md) - * [構建/編譯QMK](zh/faq_build.md) - * [調試/故障排除QMK](zh/faq_debug.md) - * [鍵盤佈局](zh/faq_keymap.md) - -* 詳細指南 - * [安裝編譯工具](zh/getting_started_build_tools.md) - * [流浪漢指南](zh/getting_started_vagrant.md) - * [構建/編譯器指令](zh/getting_started_make_guide.md) - * [刷新固件](zh/flashing.md) - * [定制功能](zh/custom_quantum_functions.md) - * [鍵盤映射概述](zh/keymap.md) - -* [硬件](zh/hardware.md) - * [AVR處理器](zh/hardware_avr.md) - * [司機](zh/hardware_drivers.md) - -* 參考 - * [Keyboard Guidelines](zh/hardware_keyboard_guidelines.md) - * [Config Options](zh/config_options.md) - * [Keycodes](zh/keycodes.md) - * [Documentation Best Practices](zh/documentation_best_practices.md) - * [Documentation Templates](zh/documentation_templates.md) - * [Glossary](zh/reference_glossary.md) - * [Unit Testing](zh/unit_testing.md) - * [Useful Functions](zh/ref_functions.md) - * [Configurator Support](zh/reference_configurator_support.md) - -* [特點](zh/features.md) - * [Basic Keycodes](zh/keycodes_basic.md) - * [Quantum Keycodes](zh/quantum_keycodes.md) - * [Advanced Keycodes](zh/feature_advanced_keycodes.md) - * [Audio](zh/feature_audio.md) - * [Auto Shift](zh/feature_auto_shift.md) - * [Backlight](zh/feature_backlight.md) - * [Bluetooth](zh/feature_bluetooth.md) - * [Bootmagic](zh/feature_bootmagic.md) - * [Combos](zh/feature_combo) - * [Command](zh/feature_command.md) - * [Dynamic Macros](zh/feature_dynamic_macros.md) - * [Encoders](zh/feature_encoders.md) - * [Grave Escape](zh/feature_grave_esc.md) - * [Key Lock](zh/feature_key_lock.md) - * [Layouts](zh/feature_layouts.md) - * [Leader Key](zh/feature_leader_key.md) - * [Macros](zh/feature_macros.md) - * [Mouse Keys](zh/feature_mouse_keys.md) - * [One Shot Keys](zh/feature_advanced_keycodes.md#one-shot-keys) - * [Pointing Device](zh/feature_pointing_device.md) - * [PS/2 Mouse](zh/feature_ps2_mouse.md) - * [RGB Lighting](zh/feature_rgblight.md) - * [RGB Matrix](zh/feature_rgb_matrix.md) - * [Space Cadet Shift](zh/feature_space_cadet_shift.md) - * [Space Cadet Shift Enter](zh/feature_space_cadet_shift_enter.md) - * [Stenography](zh/feature_stenography.md) - * [Swap Hands](zh/feature_swap_hands.md) - * [Tap Dance](zh/feature_tap_dance.md) - * [Terminal](zh/feature_terminal.md) - * [Thermal Printer](zh/feature_thermal_printer.md) - * [Unicode](zh/feature_unicode.md) - * [Userspace](zh/feature_userspace.md) - * [US ANSI Shifted Keys](zh/keycodes_us_ansi_shifted.md) - -* 對於製造商和遊戲模組 - * [Hand Wiring Guide](zh/hand_wire.md) - * [ISP Flashing Guide](zh/isp_flashing_guide.md) - * [ARM Debugging Guide](zh/arm_debugging.md) - * [I2C Driver](zh/i2c_driver.md) - -* 為了更深入的了解 - * [How Keyboards Work](zh/how_keyboards_work.md) - * [Understanding QMK](zh/understanding_qmk.md) - -* 其它主題 - * [Using Eclipse with QMK](zh/eclipse.md) - -* QMK內部(進行中) - * [Defines](zh/internals_defines.md) - * [Input Callback Reg](zh/internals_input_callback_reg.md) - * [Midi Device](zh/internals_midi_device.md) - * [Midi Device Setup Process](zh/internals_midi_device_setup_process.md) - * [Midi Util](zh/internals_midi_util.md) - * [Send Functions](zh/internals_send_functions.md) - * [Sysex Tools](zh/internals_sysex_tools.md) diff --git a/docs/zh/_summary.md b/docs/zh/_summary.md new file mode 100644 index 0000000000..c167612929 --- /dev/null +++ b/docs/zh/_summary.md @@ -0,0 +1,99 @@ +* [完全指南菜鳥](zh/newbs.md) + * [入門](zh/newbs_getting_started.md) + * [構建第一個固件](zh/newbs_building_firmware.md) + * [刷新固件](zh/newbs_flashing.md) + * [測試和調試](zh/newbs_testing_debugging.md) + * [最佳實踐](zh/newbs_best_practices.md) + * [學習資源](zh/newbs_learn_more_resources.md) + +* [QMK基礎](zh/README.md) + * [QMK簡介](zh/getting_started_introduction.md) + * [特約QMK](zh/contributing.md) + * [如何使用Github上](zh/getting_started_github.md) + * [獲得幫助](zh/getting_started_getting_help.md) + +* [常問問題](zh/faq.md) + * [常問問題](zh/faq_general.md) + * [構建/編譯QMK](zh/faq_build.md) + * [調試/故障排除QMK](zh/faq_debug.md) + * [鍵盤佈局](zh/faq_keymap.md) + +* 詳細指南 + * [安裝編譯工具](zh/getting_started_build_tools.md) + * [流浪漢指南](zh/getting_started_vagrant.md) + * [構建/編譯器指令](zh/getting_started_make_guide.md) + * [刷新固件](zh/flashing.md) + * [定制功能](zh/custom_quantum_functions.md) + * [鍵盤映射概述](zh/keymap.md) + +* [硬件](zh/hardware.md) + * [AVR處理器](zh/hardware_avr.md) + * [司機](zh/hardware_drivers.md) + +* 參考 + * [Keyboard Guidelines](zh/hardware_keyboard_guidelines.md) + * [Config Options](zh/config_options.md) + * [Keycodes](zh/keycodes.md) + * [Documentation Best Practices](zh/documentation_best_practices.md) + * [Documentation Templates](zh/documentation_templates.md) + * [Glossary](zh/reference_glossary.md) + * [Unit Testing](zh/unit_testing.md) + * [Useful Functions](zh/ref_functions.md) + * [Configurator Support](zh/reference_configurator_support.md) + +* [特點](zh/features.md) + * [Basic Keycodes](zh/keycodes_basic.md) + * [Quantum Keycodes](zh/quantum_keycodes.md) + * [Advanced Keycodes](zh/feature_advanced_keycodes.md) + * [Audio](zh/feature_audio.md) + * [Auto Shift](zh/feature_auto_shift.md) + * [Backlight](zh/feature_backlight.md) + * [Bluetooth](zh/feature_bluetooth.md) + * [Bootmagic](zh/feature_bootmagic.md) + * [Combos](zh/feature_combo) + * [Command](zh/feature_command.md) + * [Dynamic Macros](zh/feature_dynamic_macros.md) + * [Encoders](zh/feature_encoders.md) + * [Grave Escape](zh/feature_grave_esc.md) + * [Key Lock](zh/feature_key_lock.md) + * [Layouts](zh/feature_layouts.md) + * [Leader Key](zh/feature_leader_key.md) + * [Macros](zh/feature_macros.md) + * [Mouse Keys](zh/feature_mouse_keys.md) + * [One Shot Keys](zh/feature_advanced_keycodes.md#one-shot-keys) + * [Pointing Device](zh/feature_pointing_device.md) + * [PS/2 Mouse](zh/feature_ps2_mouse.md) + * [RGB Lighting](zh/feature_rgblight.md) + * [RGB Matrix](zh/feature_rgb_matrix.md) + * [Space Cadet Shift](zh/feature_space_cadet_shift.md) + * [Space Cadet Shift Enter](zh/feature_space_cadet_shift_enter.md) + * [Stenography](zh/feature_stenography.md) + * [Swap Hands](zh/feature_swap_hands.md) + * [Tap Dance](zh/feature_tap_dance.md) + * [Terminal](zh/feature_terminal.md) + * [Thermal Printer](zh/feature_thermal_printer.md) + * [Unicode](zh/feature_unicode.md) + * [Userspace](zh/feature_userspace.md) + * [US ANSI Shifted Keys](zh/keycodes_us_ansi_shifted.md) + +* 對於製造商和遊戲模組 + * [Hand Wiring Guide](zh/hand_wire.md) + * [ISP Flashing Guide](zh/isp_flashing_guide.md) + * [ARM Debugging Guide](zh/arm_debugging.md) + * [I2C Driver](zh/i2c_driver.md) + +* 為了更深入的了解 + * [How Keyboards Work](zh/how_keyboards_work.md) + * [Understanding QMK](zh/understanding_qmk.md) + +* 其它主題 + * [Using Eclipse with QMK](zh/eclipse.md) + +* QMK內部(進行中) + * [Defines](zh/internals_defines.md) + * [Input Callback Reg](zh/internals_input_callback_reg.md) + * [Midi Device](zh/internals_midi_device.md) + * [Midi Device Setup Process](zh/internals_midi_device_setup_process.md) + * [Midi Util](zh/internals_midi_util.md) + * [Send Functions](zh/internals_send_functions.md) + * [Sysex Tools](zh/internals_sysex_tools.md) -- cgit v1.2.3