目录
- 控制继电器
- 控制继电器组
控制继电器
选择7号引脚作为继电器信号输出控制端。
代码:
#include <wiringPi.h>
#include <stdio.h>
#define SWITCHER 7 // 7为树莓派物理引脚编码和wiringPi编码。在树莓派功能名为GPIO.7int main()
{int cmd;if( wiringPiSetup() == -1){ //调用wiringPI库需要先wiringPiSetup()初始化printf("硬件接口初始化失败\n");return -1;}/* 通用GPIO控制函数 void pinMode (int pin, int mode)* pin:配置的引脚* mode:指定引脚的IO模式* 可取的值:INPUT、OUTPUT、PWM_OUTPUT,GPIO_CLOCK* 作用:配置引脚的IO模式*/pinMode(SWITCHER, OUTPUT); while(1){printf("请输入0或1:0->断开开关;1->导通开关\n");scanf("%d",&cmd);if(cmd == 1){digitalWrite(SWITCHER,LOW); // void digitalWrite (int pin, int value) pin:控制的引脚 value:引脚输出的电平值。可取的值:HIGH,LOW分别代表高低电平 让对一个已近配置为输出模式的 引脚 输出指定的电平信号}else if(cmd == 0){digitalWrite(SWITCHER,HIGH);}else{printf("输入错误\n");}}
}
运行程序:
继电器绿灯亮起
控制继电器组
GPIO引脚选择:
代码:
#include <wiringPi.h>
#include <stdio.h>
#define SWITCHER1 26
#define SWITCHER2 27
#define SWITCHER3 28
#define SWITCHER4 29int main()
{int cmd;if( wiringPiSetup() == -1){ //调用wiringPI库需要先wiringPiSetup()初始化printf("硬件接口初始化失败\n");return -1;}pinMode(SWITCHER1, OUTPUT); pinMode(SWITCHER2, OUTPUT); pinMode(SWITCHER3, OUTPUT);pinMode(SWITCHER4, OUTPUT); while(1){printf("请输入1~8:1->导通继电器1开关;2->断开继电器1开关;\n3->导通继电器2开关;4->断开继电器2开关;\n5->导通继电器3开关;6->断开继电器3开关;\n7->导通继电器4开关;8->断开继电器4开关\n");scanf("%d",&cmd);if(cmd == 1){digitalWrite(SWITCHER1,LOW); }else if(cmd == 2){digitalWrite(SWITCHER1,HIGH);}else if(cmd == 3){digitalWrite(SWITCHER2,LOW);}else if(cmd == 4){digitalWrite(SWITCHER2,HIGH);}else if(cmd == 5){digitalWrite(SWITCHER3,LOW);}else if(cmd == 6){digitalWrite(SWITCHER3,HIGH);}else if(cmd == 7){digitalWrite(SWITCHER4,LOW);}else if(cmd == 8){digitalWrite(SWITCHER4,HIGH);}else{printf("输入错误\n");}}
}
运行程序:
继电器执行效果: