一、用户手册对应的I/O
二、wiringPi库示例代码
三、代码实现
四、创建shell脚本
五、接线和运行结果
一、用户手册对应的I/O![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/fe6df31c1661508481ec2775f931ceea.png)
二、wiringPi库示例代码
1 #include <stdio.h>
2 #include <wiringPi.h>
3
4 #define NUM 17 //26pin
5 //#define NUM 18 //26pin
6 //#define NUM 20 //for Orange Pi Zero 2
7 //#define NUM 19 //for Orange Pi 4
8 //#define NUM 28 //40pin
9
10 int main (void)
11 {
12 int i = 0;
13
14 wiringPiSetup () ;
15
16 for (i = 0; i < NUM; i++)
17 pinMode (i, OUTPUT) ;
18
19 for ( ;; )
20 {
21 for (i = 0; i < NUM; i++)
22 digitalWrite (i, HIGH) ; // On
23 delay (2000) ; // mS
24
25 for (i = 0; i < NUM; i++)
26 digitalWrite (i, LOW) ; // Off
27 delay (2000) ;
28 }
29
30 return 0;
31 }
三、代码实现
cp wiringOP-master/examples orangeOP
#include <stdio.h>
#include <wiringPi.h>
#include <unistd.h>
#define BEEP 0 //设置针脚0为蜂鸣器的控制引脚
int main (void)
{
wiringPiSetup () ;//初始化wiringPi库
pinMode (BEEP, OUTPUT) ;//设置IO口模式,输出
while(1){
//sleep(1);
usleep(100000);
digitalWrite (BEEP, HIGH) ; //设置IO口输出高电平
//sleep(1);
usleep(100000);
digitalWrite (BEEP, LOW) ; //设置IO口输出低电平,蜂鸣器响
}
return 0;
}
四、创建shell脚本
vim ../wiringOP-master/examples/Makefile
vi build.sh
- 简易config编译的shell脚本:
gcc $1 -lwiringPi -lwiringPiDev -lpthread -lm -lcrypt -lrt
./build beep.c
echo $0
echo $1
shell脚本处理参数,可以通过$0 来处理,这里的$1 是要编译的文件
加权限运行编译脚本
chmod +x build.sh
五、接线和运行结果