0
gpio 값에 대한 메모리 맵을 생성하려고합니다. gpio 핀은/sys/class/gpio/gpio45/value에 매핑되는 메모리입니다.mmap/sys/class/gpio/gpioX/value -> ENODEV
int fd = open(file.c_str(), O_RDWR);
if(fd == -1){
return false;
}
struct stat fileStat;
int statRes = fstat(fd, &fileStat);
if(statRes == -1){
close(fd);
return false;
}
errno = 0;
char* res = (char*)mmap(NULL, static_cast<size_t>(fileStat.st_size), PROT_READ | PROT_WRITE, MAP_SHARED, fd, 0);
errno는 19 -> ENODEV로 설정됩니다. 바이너리는 root로 실행됩니다.
잘못된 것이 있습니까? 아니면 특별한 커널 기능을 활성화해야합니까? 도움을 청하는 .