하드웨어에 익숙하지 않은 Rubist펌웨어 개발에 참여한 3가지 이유

3027 단어 Rubyidea
2021년 PRK Firmware advent 캘린더 16일째 글입니다.달력에서 앞뒤 기사를 찾아보세요.
prk_firmware에서 키보드가 몇 개 공개됐어요.firmware로 이동하거나 PRkfirmware 호스트에 패치를 썼습니다.그런 상황에서 느낀 루비이스트의prk나는 펌웨어 개발에 참가하는 장점을 좀 쓰고 싶다.
또한 저는 예전에 Ardino에서 간단한 센서 프로그램 디자인에 관심이 많아서 요 몇 년 동안 자작 키보드를 조금 좋아했기 때문에 이 제목에 대해 심의가 필요할 수도 있습니다.

RubyKaigi에서 본 기술 이해 및 테스트


나는 평소에 웹 프로그래밍 업무에 종사한다.그래서 무루비와 무루비/c의 발표에 대해 잘 이해가 안 가요.또 스스로 시작할 때는 마이크로컴퓨터 등 지식이 없어 어디서부터 시작해야 할지 몰랐다.하지만prk-firmware 덕분에 내가 알아차렸을 때 나는 mruby에 관한 일을 알게 되었다.
또한prk퍼블릭 웨어에서는 스티브를 테스트로 가져왔기 때문에 접촉할 수 있다.
키보드를 만졌을 뿐인데 눈치챘을 때 루비 케이지가 본 기술을 접할 수 있어서 좋은 경험이라고 생각해요.

키보드에 대한 이해를 깊게 하다


자작 키보드에 사용되는 펌웨어라고 할 수 있는 defact 표준의 QMK firmware는 C 언어로 기술할 뿐만 아니라 다양한 마이크로컴퓨터와 키보드에 대응하기 위한 것이기 때문에 매우 크다.그 소스 코드에 뛰어들려면 각오가 필요하다.
한편firmware의 키보드 구조는 Ruby로 기술되어 있습니다.우리 루비이스트는 루비를 읽을 수 있어.키보드의 구조를 읽을 수 있다는 얘기다.
실제로펌웨어를 수정하고 싶은 행동이 있을 때 잠시 원본 코드로 쳐다보면 수정해야 할 부분을 확인할 수 있을 것 같다.
이렇게 말하지만 기본적인 구조를 모르고 코드만 이해하는 것은 어렵기 때문에 아래 열거한 책을 읽어보면 효과가 있다.
  • 고양이도 할 수 있어!원시 키보드
  • 최초의 자체 제작 키보드
  • 자체 제작 키보드 설계 시작
  • 자체 제작 키보드 설계 시작하기2
  • 아루디노 같은 사람을 전혀 접촉해 본 적이 없는 사람이라면'고양이도 할 수 있다! 오리지널 키보드(통칭 고양이가 있다)'나'처음 만든 키보드'부터 시작할 수 있다.
    최근에 출판된헝<unk>을 깁다에서 이 책에서 읽은 지식을 쓰면서 다시 한 번 확인해 보니 더욱 깊은 이해를 느꼈다.

    루비의 힘을 다시 한 번 확인할 수 있습니다.


    prk_firmware는 무루비의 실현 중 하나인picoruby로 기술되어 있습니다.이 때문에 루비는 기술할 수 있지만, 크루비가 사용할 수 있는 방법을 실현하지 못해 스스로 그 처리를 써야 하는 일이 발생했다.예전에는 Zinc라는 키보드를 썼어요.firmware를 사용할 때 Array#reverseArray#flatten가 필요하지만 무루비/c에 설치되어 있지 않아 사용할 수 없습니다.Ruby가 표준적이고 편리한 방법을 준비했다는 것을 다시 한 번 느꼈다.
    또한 실현되지 않은 처리는 스스로 기술하고 함수로 정의할 수 있다.그리고 루비는 학급도 개설할 수 있다.천천히, 아래처럼 평소 루비와는 다른 필치로 쓰면 다시 한번 루비가 대단하다는 생각이 든다.
    class Array
      def reverse
      end
    end
    

    최후


    하드웨어를 몰라서 못 하는 심정이었을지 몰라도 기본적으로 루비가 썼기 때문에 하드웨어와 밀접하게 관련된 부분 외에는 할 수 있을 것 같은 느낌이 든다.예를 들어 지금은 반드시 이렇게 써야 한다keymap.rb. 그러나 나는 이런 인터페이스가 더 편리하다고 생각한다. 이런 제안도 만족스럽지 않니?
    이 기사를 읽었어요.firmware에서 코드를 읽는 사람이 늘었으면 합니다.
    이 글은 어제 받은 것KBD67Lite R3을 개봉하지 않고 코넬리스+Cobalt POM Liears+GMK Feature Funk로 썼다.

    좋은 웹페이지 즐겨찾기