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。 二进制作为根运行。
有什么问题吗?还是必须启用特殊的内核功能? thx为您提供帮助。