데비안용 SPI 드라이버

데비안용 SPI 드라이버

이것은 리눅스입니다:

PRETTY_NAME="Debian GNU/Linux 8 (제시)"

name="데비안 GNU/리눅스"

버전 ID="8"

version="8(제시)"

ID=데비안

커널 버전은 다음과 같습니다:

4.1.15-gcfb25fd

하드웨어 플랫폼은 다음과 같습니다.http://variwiki.com/index.php?title=DART-6UL

그래서 저는 SPI 인터페이스에 익숙합니다(마이크로컨트롤러용 SPI 드라이버를 개발했습니다).

SPI용 nodeJs 패키지를 찾았지만 장치 목록에는 없는 /dev/ 디렉터리에 SPIDEV가 필요합니다.

몇 가지 조사 끝에 SPIDEVx가 장치 목록에 표시되도록 새 구성으로 커널을 다시 빌드할 수 있다는 사실을 발견했습니다. 하지만 이 방법이 더 힘든 것 같습니다. 모든 것을 다시 설치해야했습니다.

spidev.h설치된 운영 체제에서 SPI 인터페이스를 활용하기 위해 C 프로그램을 작성할 수 있습니까/ 파일이 있지만 및 /ust/include/linux/spi/만 포함하고 함수 선언이 없음을 발견했습니다.typedefsmacros

나에게 어떤 조언을 해주실 건가요? 가장 덜 고통스러운 방법은 무엇입니까?

답변1

즉, 사용자 애플리케이션이 SPI를 사용할 수 있도록 하려면 /dev에 장치 노드가 필요합니다. 이러한 장치에 액세스하기 위해 NodeJS를 사용하는지 C 프로그램을 사용하는지 여부는 중요하지 않습니다. 예, /usr/include/linux/spi/장치 노드를 사용하는 typedef만 포함됩니다. NodeJS 패키지나 다른 사용자 레이어 패키지도 이를 사용합니다.

/dev의 장치 노드는 하드웨어 액세스를 수행하는 커널 드라이버입니다. 현재 커널이 이에 대해 구성되지 않은 경우 이를 구성해야 합니다. 가장 좋은 경우에는 그냥 바꾸면 됩니다장치 트리. 다른 모듈을 컴파일해야 할 수도 있습니다(예를 들어 Debian에서 DKMS를 사용하여 수행할 수 있음). 전체 커널을 컴파일해야 할 수도 있습니다. 이들 중 어느 것이 적용되는지는 현재 커널 구성에 따라 달라지며 이에 대해서는 아무것도 모릅니다.

어쨌든 "모든 것을 다시 설치"할 필요는 없습니다. 전체 커널을 컴파일해야 하는 경우에도 새 커널을 설치하고 재부팅하면 됩니다.

관련 정보