Meine persönliche Erwartung war, dass ich die Farbe der vorderen Dreipunkt-LED durch Ändern der Einstellungen ändern könnte. Aber anscheinend ist es anders.
Ich dachte, es wäre klar, wenn ich C-Sprache lese, aber ich benutze C-Sprache seit mehr als 10 Jahren für meine Arbeit, aber ich gab auf, weil ich nicht in der Lage war, C-Sprache zu lesen. Es gibt nichts Dummes zu erleben. Sie können sehen, wie wichtig Wissen ist. Was waren die letzten 10 Jahre ... Kein Genie wird Wert darauf legen, Erfahrungen zu sammeln. Bonkura priorisiert jedoch unweigerlich die Erfahrung gegenüber dem Studium.
aus diesem Grund···.
Es gibt eine Prämisse, die ich beim Kauf der Tastatur nicht zum Leuchten bringen wollte ... Ich habe es jedoch mit LED-Beleuchtung bestellt, da es nicht möglich wäre, dieselbe Tastatur zusätzlich zu kaufen, wenn ich eine gekauft hätte. (Wo hast du über die Front-LED gesprochen)
Offizieller ErgoDoxEZ-Twitter-Account: @ErgoDoxEZ
Unten das Hauptthema ...
Unten noch Vorspiel ...
ErgoDoxEZ Probieren Sie den neuen Konfigurator aus Vielleicht ist es die offizielle Seite, also kann ich es tun. Es können jedoch nur 5 Farben eingestellt werden, und vor allem, obwohl links und rechts 30 LEDs vorhanden sind, können die Farben nicht einzeln eingestellt werden. Obwohl es offiziell ist ... Der größte Nachteil ist, dass die LED aufleuchtet, wenn Sie die Einstelltaste drücken.
Massdrop-Konfigurator Dies ist eine Art von GUI-Operation, die keine LED-Beleuchtung zulässt
Tastaturlayout-Editor Ich habe Hilfe, aber ich weiß nicht, wie ich es verwenden soll. Ich bin mir jedoch sicher, dass dies möglich ist, da eine Beschreibung der LED vorliegt. Ich kann es nicht auf Englisch verstehen, aber ich habe ein Kommentarvideo gefunden. Einführung in das Erstellen benutzerdefinierter mechanischer Tastaturkappen-Sets, Gehäuse und Leiterplatten
Infinity ErgoDox Ich werde das ErgoDoxEZ nicht verraten, aber es schien, als könnte es umgeleitet werden, also werde ich es vorerst vorstellen ... Schließlich weiß ich nicht, wie ich das mit der LED einstellen soll. Vielleicht funktioniert es nicht mit QMK (es scheint anders zu funktionieren als ErgoDox).
Zur Selbstzufriedenheit ist niemand anderes beteiligt und greift nicht ein. Daher kann der GUI-Betrieb nur einige Dinge tun, und einige Dinge können nicht einmal bis zu einem gewissen Grad ausgeführt werden. Ich bin zu diesem Schluss gekommen.
Daher wird möglicherweise nicht veröffentlicht, wie die LED-Beleuchtung geändert werden kann (ich weiß es einfach nicht). Aber leider bin ich verrückt und kann es nicht ändern, ohne jemandem zu sagen, wie es geht. "Sag mir Kure Kure"
Fügen Sie es schließlich in das Hauptthema ein. Die LED [Rot Grün Blau] leuchtet auf.
Zunächst möchte ich starkes Licht unterdrücken.
Die hier vorgestellte Methode besteht lediglich darin, die Lichtintensität zu ändern.
Klone Git-Verzeichnis \ github_repository20180604 \ qmk_firmware \ keyboards \ ergodox_ez
ergodox_ez.c
Es gibt eine Funktion namens "ergodox_blink_all_leds". Es gibt einen Funktionsaufruf namens "ergodox_led_all_set", der die Lichtintensität der drei vorderen LEDs steuert, und der Wert "LED_BRIGHTNESS_DEFAULT" wird dort als Argument übergeben. Dies zeigt an, dass es mit starkem Licht aufleuchtet (möglicherweise nicht stark, da es sich um eine Standardintensität handelt). Wenn Sie es daher als "LED_BRIGHTNESS_LO" als schwaches Licht umschreiben, kann das Licht unterdrückt werden. Geben Sie für starkes Licht "LED_BRIGHTNESS_HI" an.
Die Oberseite ist starkes Licht und die Unterseite ist schwach, aber es ist unwahrscheinlich, dass es vergleichbar ist, da es keine Aufnahmetechnologie gibt.
Die folgende Funktion wird verwendet, um die Lichtintensität zu bestimmen.
ergodox_ez.h
inline void ergodox_right_led_1_set(uint8_t n) { OCR1A = n; }
inline void ergodox_right_led_2_set(uint8_t n) { OCR1B = n; }
inline void ergodox_right_led_3_set(uint8_t n) { OCR1C = n; }
inline void ergodox_right_led_set(uint8_t led, uint8_t n) {
(led == 1) ? (OCR1A = n) :
(led == 2) ? (OCR1B = n) :
(OCR1C = n);
}
inline void ergodox_led_all_set(uint8_t n)
{
ergodox_right_led_1_set(n);
ergodox_right_led_2_set(n);
ergodox_right_led_3_set(n);
}
Bisher habe ich "ergodox_led_all_set" verwendet, aber wenn Sie es einzeln zum Leuchten bringen möchten, können Sie "ergodox_right_led_ [1-3] _set" verwenden. Das folgende Bild ist das Ergebnis der Einstellung von LED1 (rot) auf 1 und der Übergabe von 0 an die LEDs2 und 3.
Grün (LED2) und Blau (LED3) haben Null überschritten, also dachte ich, sie wären nicht beleuchtet, aber sie leuchten. Es ist komisch. Kann mir bitte jemand sagen, warum es leuchtet? (Da es keine Aufnahmetechnologie gibt, scheint es stark zu leuchten, aber es ist ziemlich schwach)
Da die Stärke schwer zu verstehen ist, habe ich sie wie folgt geändert. (Der im Kommentar "← this" geschriebene Wert ist das Bild unten)
ergodox_ez.c
void ergodox_blink_all_leds(void)
{
ergodox_led_all_off();
// ergodox_led_all_set(LED_BRIGHTNESS_DEFAULT); //Original 20180828
// ergodox_led_all_set(LED_BRIGHTNESS_LO); //Unterdrücke das Licht.
ergodox_right_led_1_set(1); //Rot ← das.
ergodox_right_led_2_set(0); //Grün ← das.
ergodox_right_led_3_set(LED_BRIGHTNESS_HI); //Blau ← das.
ergodox_right_led_1_on();
_delay_ms(50);
ergodox_right_led_2_on();
_delay_ms(50);
ergodox_right_led_3_on();
_delay_ms(50);
#ifdef LEFT_LEDS
・
・
・
}
Da Rot auf 1 gesetzt ist, ist es verständlich, dass es schwach leuchtet. Warum leuchtet Licht, wenn Grün auf 0 gesetzt ist? In beiden Fällen ist die blaue Farbe zu stark und schwer zu erkennen. Können Sie sehen, dass das Licht auch auf den Tastenkappen reflektiert wird, da Blau maximiert ist?
Um die vordere LED zum Leuchten zu bringen, stellte ich fest, dass sie aufgrund von "ergodox_right_led_1_on" oben leuchtete. Als ich den Inhalt überprüfte, stellte ich fest, dass er von den folgenden zwei Zeilen gesteuert wurde (ich habe gerade ohne Erlaubnis einen Zeilenumbruch gemacht, und es ist tatsächlich eine Zeile).
ergodox_ez.h
inline void ergodox_right_led_1_on(void)
{
//rot
DDRB |= (1<<5);
PORTB |= (1<<5);
}
inline void ergodox_right_led_2_on(void) { DDRB |= (1<<6); PORTB |= (1<<6); } //Grün
inline void ergodox_right_led_3_on(void) { DDRB |= (1<<7); PORTB |= (1<<7); } //Blau
Sie können sehen, dass wir versuchen, die Bits zu steuern, indem wir die Zahl 1 um fünf nach links (1 << 5) verschieben. Der Punkt ist 0x20 (0b00100000), richtig?
Wenn Sie von meiner Freundin Right Hand sprechen, die eine AV-Beilage hat, könnten Sie sich AVR eines Mikrocomputers vorstellen, aber einige Leute verstehen es möglicherweise nicht.
Ich bin einer von denen.
Es scheint einen Mikrocomputer namens PIC zu geben, aber ist es in Ordnung zu glauben, dass der ErgoDox EZ einen AVR-Mikrocomputer verwendet?
Ich habe 0b00000001
eingestellt, ohne es zu wissen, aber es scheint überhaupt nicht.
ergodox_ez.h
inline void ergodox_right_led_1_on(void)
{
//rot
DDRB |= (0b00000001);
PORTB |= (0b00000001);
}
Der Punkt ist, dass es nur drei LEDs gibt. Ist es also in Ordnung, sie in der Reihenfolge vom linken Bit zu verwenden? Sind die 5 Bits ganz rechts frei? In diesem Teil dachte ich, dass es eine Kombination ist, die Farben wie Gelb und Lila ändern kann, aber können Sie nicht so etwas Fortgeschrittenes tun? Ist die Farbe festgelegt?
Ist der folgende Aufwand nutzlos?
keymap.c
// Runs whenever there is a layer state change.
uint32_t layer_state_set_user(uint32_t state) {
・
・
・
uint8_t layer = biton32(state);
switch (layer) {
case 0:
・
・
・
case 1:
// ergodox_right_led_1_on();
DDRB |= (1<<5);
PORTB |= (1<<5);
// DDRB |= (0b00100000);rot
// PORTB |= (0b00100000);rot
// DDRB |= (0b01000000);Grün
// PORTB |= (0b01000000);Grün
// DDRB |= (0b10000000);Blau
// PORTB |= (0b10000000);Blau
// DDRB |= (0b00110000);rot
// PORTB |= (0b00110000);rot
// DDRB |= (0b01010000);Kompilierungsfehler
// PORTB |= (0b01010000);Kompilierungsfehler
// DDRB |= (0b10010000);Blau
// PORTB |= (0b10010000);Blau
// DDRB |= (0b10100000);rot und Blau
// PORTB |= (0b10100000);rot und Blau
// DDRB |= (0b11000000);Grün blau
// PORTB |= (0b11000000);Grün blau
// DDRB |= (0b01100000);Rot grün
// PORTB |= (0b01100000);Rot grün
// DDRB |= (0b11100000);Rot grün blau
// PORTB |= (0b11100000);Rot grün blau
// DDRB |= (0b00000001);Die LED im Vordergrund wird nicht angezeigt.
// PORTB |= (0b00000001);Die LED im Vordergrund wird nicht angezeigt.
// DDRB |= (0b00000010);Die LED im Vordergrund wird nicht angezeigt.
// PORTB |= (0b00000010);Die LED im Vordergrund wird nicht angezeigt.
// DDRB |= (0b00000100);Die LED im Vordergrund wird nicht angezeigt.
// PORTB |= (0b00000100);Die LED im Vordergrund wird nicht angezeigt.
// DDRB |= (0b00001000);Die LED im Vordergrund wird nicht angezeigt.
// PORTB |= (0b00001000);Die LED im Vordergrund wird nicht angezeigt.
・
・
・
#ifdef RGBLIGHT_ENABLE
・
・
・
Port Register und [IO Port C Language Macro usw.](http: // startelc. com / AVR / Avr_100macroMemo.html "Starten der elektronischen Schaltung") Ich habe die Funktionen von "DDRB" und "PORTB" überprüft, konnte sie aber nicht verstehen. Je nach Art der LED kann sie einfarbig oder mehrfarbig sein. Ich frage mich, ob es nicht funktioniert, wenn für diese beiden Arten von Funktionen für die Lichtemission nicht der gleiche Wert eingestellt ist. Ich verstehe den fehlerhaften Teil immer noch nicht ...
Ich möchte nur eine Tastatur verwenden, verstehe aber nicht, warum dies so viel Zeit und Mühe kostet. Sie können sehen, wie gut die kommerziellen Produkte sind.
Wenn die Farbe nicht geändert werden kann und fest ist, gibt es nicht 6 verschiedene Anzeigen. Unter der Annahme, dass Schicht 0 kein Licht emittiert, gibt es 7 Arten von Lichtemission von Schicht 1 zu Schicht 7? Ich wollte Kombinationen und Sequenzen an der Junior High School lernen, aber ich kann nicht von dem Gebrauch machen, was ich in der Schule gelernt habe ... Es ist schwer zu erkennen, wie verlassen Menschen lebten und ohne zu studieren lebten. ErgoDoxEZ hat eine Funktion, die Sie auf die Süße des Lebens aufmerksam macht ... Solange der vorhandene Quellcode 7 Typen hat, folgen wir ihm leider. Nach Schicht 8 gibt es kein Licht. Es ist eine Schande, aber wenn Sie möchten, dass es Licht aussendet, müssen Sie es selbst hinzufügen. Nach "Fall 7:" sollte es "Standard:" sein. Während dieser Zeit können Sie beliebig viele Nummern zuweisen, z. B. 8 und 9, und die drei LED-Typen können Licht aussenden, wie Sie möchten. Es scheint verwirrend zu sein, weil sich die Lichtemission mit anderen Schichten überlappt, aber vorerst denke ich, dass beurteilt werden kann, dass die Schicht nicht 0 ist.
Ich verbringe viel Zeit und Mühe mit LED-Beleuchtung und kaufe teure Tastaturen ohne Einkommen für die Jobsuche. Ich war in Schwierigkeiten, weil der Pionier es nicht zum Leuchten gebracht hat, aber ich bin dankbar, dass es nur einen Freiwilligen gibt, der offengelegt hat, wie man es zum Leuchten bringt.
ErgoDox-Einführung Ändern Sie die Farbe der hinteren LED, wenn die Ebene gewechselt wird Basierend auf dem Quellcode möchte ich meine ErgoDox EZ auch hell leuchten lassen. Es war.
Zunächst wollte ich die Farbe der Front-LED ändern, da es für Schicht 1 unangenehm war, rot zu leuchten. Deshalb wollte ich sie wie eine Ampel in blau, gelb und rot ändern. Ich wollte Rot nicht als erstes verwenden, weil ich denke, dass es ein Gefahrensignal ist. Und ich wollte, dass die hintere LED Licht entsprechend der Farbe der vorderen LED emittiert. Es gibt kein Problem mit Abstoßung (?), Aber ich würde es gerne anpassen, wenn es möglich ist. Apropos, Rückseite? zurück? Ist es richtig?
Nehmen wir an, Sie verstehen, dass Sie ein LED-Lichtemissionsprogramm der Schicht 1 in den obigen ["Fall 1:" in keymap.c] einbetten möchten (#Frage von hier).
keymap.c
case 0:
・
・
・
#ifdef RGBLIGHT_ENABLE
rgblight_disable();
#endif
break;
case 1:
・
・
・
#ifdef RGBLIGHT_ENABLE
rgblight_enable(); //Wirksamkeit
rgblight_setrgb(0xff,0x00,0x00); //← Dies.
#endif
break;
Wenn Sie dem Argument der Funktion "rgblight_setrgb" eine Farbeinstellung geben, ändert sich die hintere LED mit Sicherheit. Es gibt jedoch zwei Probleme.
Diese beiden Typen sind unterschiedlich, daher werde ich versuchen, den zweiten zuerst zu lösen.
Bei der Rückkehr von der emittierenden Schicht x zur 0-Schicht wollte ich 0 ausschalten. Ich denke nicht, dass es möglich ist, die Lichtemission mit farblos (nicht weiß) zu unterdrücken (weil ich denke, dass es erregt ist). Daher habe ich es deaktiviert ("deaktivieren"), aber als es aktiviert wurde ("aktivieren"), gab es zum Zeitpunkt des Umschaltens eine Lichtemission und alle Farben (Standardfarbe?) Leuchten für einen Moment auf. Ich hatte keine andere Wahl, als es aktiviert zu halten (oder sofort Kompromisse einzugehen).
keymap.c
// Runs just one time when the keyboard initializes.
void matrix_init_user(void) {
rgblight_enable(); //Gültig ← dies.
#ifdef RGBLIGHT_COLOR_LAYER_0
#endif
};
Der Aktivierungsprozess wurde zur vorhandenen Funktion hinzugefügt. Löschen Sie die bereits hinzugefügte Verarbeitung.
keymap.c
uint32_t layer_state_set_user(uint32_t state) {
・
・
・
// rgblight_disable();
・
・
・
// ergodox_right_led_1_on();← LED-Lichtemission auf der Vorderseite
・
・
・
// rgblight_enable();
・
・
・
Ich bin mir nicht sicher, ob dies der richtige Weg ist. Bitte lassen Sie es mich wissen. Der Zweck ist nicht zu erregen, wenn es kein Licht aussendet. Vorerst habe ich die zusätzliche Lichtemission des einen Kissens unterdrückt.
Bei Verwendung der Funktion rgblight_setrgb
ändern alle LEDs ihre Farbe und geben ohne Fragen Licht ab.
Wieder gibt es neue Probleme, aber es ist mir egal (blendend).
Wenn Sie Licht einzeln emittieren möchten, können Sie es lösen, indem Sie eins nach dem anderen angeben, sodass kein großer Aufwand erforderlich ist.
Verwenden Sie einfach die Funktion rgblight_setrgb_at
und geben Sie die obige Farbspezifikation sowie den Ort an, an dem Sie Licht emittieren möchten.
Es ist zu beachten, dass die Sequenz ab dem 0. beginnt, da es sich um eine C-Sprache handelt.
Wenn Sie ein Array mit dem Namen "tmp [5]" haben, geben Sie "tmp [0]" an, um den Wert am Anfang festzulegen.
Das maximale 5. ist "tmp [4]".
Da diesmal 15 LEDs auf einer Seite vorhanden sind, ist bei einer Anordnung von "LED [15]" das Ende "LED [0]" und das gegenüberliegende Ende "LED [14]".
Vorerst wurde vermieden, dass alle 30 LEDs mit einem bestimmten Farbtyp gefüllt waren.
Jedenfalls wollte ich das vorerst machen. Zuallererst aus dem Ergebnis ...
Die Vorderseite des Fotos ist der linke Teil und die Rückseite ist der rechte Teil. Auf der linken Seite ist das rechte Ende im invertierten Zustand "LED [0]". Auf der rechten Seite ist das linke Ende im invertierten Zustand "LED [0]". Der Punkt ist, dass beide Seiten beim Platzieren zu "LED [0]" werden und der Wert steigt, wenn er hineingeht.
Linke Hand (LED [0] [1] [2] ~ [12] [13] [14]) Rechte Hand (LED [14] [13] [12] ~ [2] [1] [0])
Oben sage ich "vorerst", weil andere Probleme nicht gelöst wurden.
Ich kann die Lichtmenge nicht reduzieren ⇒ [Gelöst durch Verwendung von HSV anstelle von RGB](https://qiita.com/chesscommands/items/5cbd92e61b96ffaa0991#%E5%85%89%E9%87%8F%E8%AA% BF% E6% 95% B4 "So stellen Sie die Helligkeit der LED-Beleuchtung von ErgoDox EZ ein") Bei der vorderen LED war die Lichtintensität wie zu Beginn geschwächt, aber ich weiß nicht, wie ich es auf der Rückseite machen soll.
Links und rechts können nicht getrennt werden. Obwohl es sich um einen separaten linken und rechten Typ handelt, ist es nicht möglich, nur die rechte Seite oder nur die linke Seite zu beleuchten.
Ich bin mir sicher, dass es einen Weg gibt, dies zu tun, aber er wird nur gelöst, wenn Sie über schlechte Programmierkenntnisse verfügen und vorhandene Programme verfolgen können. Es gab keinen Kommentar im Internet. Ist es natürlich, das zu können?
Das Programm im obigen Bild ist unten platziert (hoffentlich hilfreich).
keymap.c
case 1:
・
・
・
#ifdef RGBLIGHT_ENABLE
rgblight_setrgb_red_at(0);
rgblight_setrgb_at( 255, 0, 255,1);
rgblight_sethsv_turquoise_at( 2 );
rgblight_setrgb_at( 255, 255, 0, 3);
rgblight_setrgb_at( 255, 0, 255, 4);
rgblight_setrgb_at( 0, 255, 255,5);
rgblight_setrgb_at( 255, 255, 255,6);
rgblight_setrgb_at(0x00,0x00,0xff,7);
rgblight_setrgb_at(0x00,0x00,0x00,8);
rgblight_setrgb_at(0x00,0x0f,0x00,9);
rgblight_setrgb_at(0x00,0x00,0x00,10);
rgblight_setrgb_at(0x00,0x00,0x00,11);
rgblight_setrgb_at(0x00,0x00,0x00,12);
rgblight_setrgb_at(0x00,0x00,0x00,13);
rgblight_setrgb_yellow_at(14);
#endif
・
・
・
Der Aufwand an Farbspezifikationen, an den jeder denken wird.
"0x00, 0x00, 0x00"
Es ist also einfacher, einen Fehler zu machen, als die Farbe einzeln zu ändern.
Daher erscheint es zweckmäßig, die vorbereiteten Farben zu verwenden.
(Selbst wenn Sie eine empfindliche Farbe angeben, können Sie sie nicht mit bloßem Auge identifizieren ...)
Klonverzeichnis \ github_repository20180604 \ qmk_firmware \ quantum
rgblight_list.h
/* SET RGB List */
#define rgblight_setrgb_white() rgblight_setrgb (0xFF, 0xFF, 0xFF)
#define rgblight_setrgb_red() rgblight_setrgb (0xFF, 0x00, 0x00)
#define rgblight_setrgb_coral() rgblight_setrgb (0xFF, 0x7C, 0x4D)
#define rgblight_setrgb_orange() rgblight_setrgb (0xFF, 0x80, 0x00)
#define rgblight_setrgb_goldenrod() rgblight_setrgb (0xD9, 0xA5, 0x21)
#define rgblight_setrgb_gold() rgblight_setrgb (0xFF, 0xD9, 0x00)
#define rgblight_setrgb_yellow() rgblight_setrgb (0xFF, 0xFF, 0x00)
#define rgblight_setrgb_chartreuse() rgblight_setrgb (0x80, 0xFF, 0x00)
#define rgblight_setrgb_green() rgblight_setrgb (0x00, 0xFF, 0x00)
#define rgblight_setrgb_springgreen() rgblight_setrgb (0x00, 0xFF, 0x80)
#define rgblight_setrgb_turquoise() rgblight_setrgb (0x47, 0x6E, 0x6A)
#define rgblight_setrgb_teal() rgblight_setrgb (0x00, 0x80, 0x80)
#define rgblight_setrgb_cyan() rgblight_setrgb (0x00, 0xFF, 0xFF)
#define rgblight_setrgb_azure() rgblight_setrgb (0x99, 0xf5, 0xFF)
#define rgblight_setrgb_blue() rgblight_setrgb (0x00, 0x00, 0xFF)
#define rgblight_setrgb_purple() rgblight_setrgb (0x7A, 0x00, 0xFF)
#define rgblight_setrgb_magenta() rgblight_setrgb (0xFF, 0x00, 0xFF)
#define rgblight_setrgb_pink() rgblight_setrgb (0xFF, 0x80, 0xBF)
/* SET RGB List */
#define rgblight_setrgb_white_at(at) rgblight_setrgb_at (0xFF, 0xFF, 0xFF, at)
#define rgblight_setrgb_red_at(at) rgblight_setrgb_at (0xFF, 0x00, 0x00, at)
#define rgblight_setrgb_coral_at(at) rgblight_setrgb_at (0xFF, 0x7C, 0x4D, at)
#define rgblight_setrgb_orange_at(at) rgblight_setrgb_at (0xFF, 0x80, 0x00, at)
#define rgblight_setrgb_goldenrod_at(at) rgblight_setrgb_at (0xD9, 0xA5, 0x21, at)
#define rgblight_setrgb_gold_at(at) rgblight_setrgb_at (0xFF, 0xD9, 0x00, at)
#define rgblight_setrgb_yellow_at(at) rgblight_setrgb_at (0xFF, 0xFF, 0x00, at)
#define rgblight_setrgb_chartreuse_at(at) rgblight_setrgb_at (0x80, 0xFF, 0x00, at)
#define rgblight_setrgb_green_at(at) rgblight_setrgb_at (0x00, 0xFF, 0x00, at)
#define rgblight_setrgb_springgreen_at(at) rgblight_setrgb_at (0x00, 0xFF, 0x80, at)
#define rgblight_setrgb_turquoise_at(at) rgblight_setrgb_at (0x47, 0x6E, 0x6A, at)
#define rgblight_setrgb_teal_at(at) rgblight_setrgb_at (0x00, 0x80, 0x80, at)
#define rgblight_setrgb_cyan_at(at) rgblight_setrgb_at (0x00, 0xFF, 0xFF, at)
#define rgblight_setrgb_azure_at(at) rgblight_setrgb_at (0x99, 0xf5, 0xFF, at)
#define rgblight_setrgb_blue_at(at) rgblight_setrgb_at (0x00, 0x00, 0xFF, at)
#define rgblight_setrgb_purple_at(at) rgblight_setrgb_at (0x7A, 0x00, 0xFF, at)
#define rgblight_setrgb_magenta_at(at) rgblight_setrgb_at (0xFF, 0x00, 0xFF, at)
#define rgblight_setrgb_pink_at(at) rgblight_setrgb_at (0xFF, 0x80, 0xBF, at)
Im Fall von rgblight_setrgb_ ~ ~ ~
entspricht dies der Verwendung von [Verwenden Sie die obige Funktion "rgblight_setrgb"](# Einfache Lichtemission, gleichfarbige gleichzeitige Lichtemission).
Ersetzen Sie rgblight_setrgb (0xff, 0x00, 0x00);
durch rgblight_setrgb_red ();
.
Im Fall von "rgblight_setrgb_ ~ ~ ~ _at" ist es dasselbe wie bei Verwendung der obigen Funktion "Verwenden Sie die obige Funktion" rgblight_setrgb_at "](#monochromatische Emission führte zu einer individuellen Emission).
Ersetzen Sie rgblight_setrgb_at (255, 255, 0, 3);
durch rgblight_setrgb_yellow_at (3);
.
(Ich glaube, die Begriffe sind nicht einheitlich ...)
Es gibt eine rgblight_mode
-Funktion und es gibt verschiedene Muster wie Lichtemission nur für Beleuchtung und Lichtemission mit Dynamik.
Es scheint, dass es bis zu 36 Typen gibt, aber leider konnte ErgoDoxEZ nur 7 bis 8 Typen bestätigen.
Ich weiß es nicht, weil ich es nicht im Detail untersucht habe, aber nach dem 9. schien es nur das vorbereitete Licht zu emittieren.
Das Lichtemissionsmuster befindet sich in der folgenden Datei.
Klonverzeichnis \ github_repository20180604 \ qmk_firmware \ quantum
rgblight.c
void rgblight_mode_eeprom_helper(uint8_t mode, bool write_to_eeprom) {
・
・
・
if (rgblight_config.mode == 1) {
#ifdef RGBLIGHT_ANIMATIONS
rgblight_timer_disable();
#endif
} else if ((rgblight_config.mode >= 2 && rgblight_config.mode <= 24) ||
rgblight_config.mode == 35 || rgblight_config.mode == 36) {
// MODE 2-5, breathing
// MODE 6-8, rainbow mood
// MODE 9-14, rainbow swirl
// MODE 15-20, snake
// MODE 21-23, knight
// MODE 24, xmas
// MODE 35 RGB test
// MODE 36, alterating
・
・
・
}
Betrachtet man dies, so scheint es "Atmung" und "Regenbogenstimmung" zu geben. Es scheint ein vorbereitetes Programm für ErgoDoxEZ zu geben, aber ich konnte es nicht wiederfinden.
Die Verwendung ist die gleiche, aber ...
keymap.c
case 1:
・
・
・
#ifdef RGBLIGHT_ENABLE
rgblight_setrgb_red_at(0);
rgblight_mode(2); //← Dies.
#endif
・
・
・
case 2:
・
・
・
#ifdef RGBLIGHT_ENABLE
rgblight_setrgb_yellow_at(0);
rgblight_mode(5); //← Dies.
#endif
・
・
・
case 3:
Questions about RGB Matrix and creating my own animations.
Es scheint, dass Sie rgb_matrix_user.inc
in das aktuelle Verzeichnis einfügen und die Header-Datei einschließen müssen.
Ich weiß nicht, wovon Sie sprechen, aber es sind wahrscheinlich nützliche Informationen für diejenigen, die sich besonders dafür interessieren.
Die Lichtmenge an der vorderen LED kann eingestellt werden. Daher möchte ich in Zukunft den Mechanismus herausfinden, der die Lichtmenge von der LED auf der Rückseite ändert. Sie können die Farbe ändern, aber Sie können die Intensität des Lichts nicht ändern.
Und ich möchte die Farbe bei Schlange oder Weihnachten verschieben und gleichzeitig die Lichtintensität mit nur einer Hand schrittweise von "LED [0]" auf "LED [14]" ändern. Obwohl die Priorität niedrig ist.
Dieses Mal emittierte es nur beim Schichtwechsel Licht. Ich möchte es zum Leuchten bringen, wenn die CapsLock-Taste gedrückt wird.
Was sind die folgenden drei Typen !?
Was ist "EEPROM"?
Ich habe versucht, die LED durch Tappen anzuzünden, ohne es gut zu wissen. Ich verstehe das Prinzip des Glänzens nicht, aber es kann davon ausgegangen werden, dass der Zweck erreicht wurde, weil er glänzte. Deshalb habe ich diesmal gewonnen ぉ ぉ ぉ ぉ ぉ ぉ. Ich werde weiterhin die Erfahrung vor dem Studium priorisieren. Solange ich ein Mensch bin, ist es unmöglich, Erfahrungen zu sammeln, aber ich hasse es zu lernen, also werde ich ein Hund und versuche mein Bestes zu geben wie ein Hund oder eine Kuh.
MechanicalKeyboards Ich kaufte ErgoDox EZ als Verbindung, bis HHKB den links und rechts getrennten Typ veröffentlichte, aber ich begann zu denken, dass ich anfangen könnte, meinen eigenen zu machen ... The ‘Not So MiniDox’ Handwire : MechanicalKeyboards Herausforderung zum Erstellen einer selbst erstellten Open Source-Tastatur "Iris" Aufzeichnung der Montage des links und rechts getrennten Typs "Orthodox" durch eine unerfahrene Person mit einer selbst erstellten Tastatur Speichern Sie Keebio Inlandstastatur? Helix Keyboard Kit
Sie verkaufen es überall. ErgoDox EZ | Geteilte Ergo-Designtastatur "ErgoDox Easy"
das ist alles.
Recommended Posts