我如何 运行 带 wiringPi 的 PWM? (pwmMode PWM 问题)

How do I run the PWM with wiringPi?? (Issue with pwmMode PWM)

我正在尝试 运行 geany 中的 PWM 程序(带有 Raspberry 4B 的 C 语言)。我可以编译和构建程序;但是,当我 运行 它出现下一个错误时:

pinMode PWM:使用 /dev(gpiomem) 时无法执行此操作。试试 sudo?

有没有人有过这样的经历?我该如何解决?

我的程序如下:

 #include <wiringPi.h>

 #include <stdio.h>
 #include <stdlib.h>
 #include <stdint.h>

 #define MFOR_MOTOR 25
 #define MBACK_MOTOR 24 
 #define PWM_MOTOR 1
 #define ENCODER_A 21
 #define ENCODER_B 22


 int main (void){

     if (wiringPiSetup()==-1)
     exit (1) ;

int pwm_user;
wiringPiSetup();
pinMode(MFOR_MOTOR, OUTPUT);
pinMode(MBACK_MOTOR, OUTPUT);
pinMode(PWM_MOTOR, PWM_OUTPUT);
pinMode(ENCODER_A, INPUT);
pinMode(ENCODER_B, INPUT);

printf ("Raspberry Pi wiringPi Motor PWM program\n") ;
printf("PWM from motor: ");
scanf("%d", &pwm_user); 
pwmWrite(PWM_MOTOR, pwm_user);
digitalWrite(MFOR_MOTOR, HIGH);

while(1){
        digitalRead(ENCODER_A);
}

digitalWrite(MFOR_MOTOR, LOW);
return 0;  
}

感谢@Craig Estey 的帮助。我将问题 运行 程序直接“修复”到 RaspberryPi 中的终端,所以我使用了 运行 it

的下一种格式
$ nano pwm_motor.c //for creating the programm
$ gcc -Waöö pwm_motor.c -lwiring -o pwm_motor // for compile the programm
$ chmod +x pwm_motor // for build the program
$ sudo ./pwm_motor //for running the program

也许这不是最好的方法,但它对我有用。如果其他人知道我喜欢阅读的另一个想法。