香橙派3B学习笔记12:C语言操作GPIO_<wiringPi.h>_点灯通用输入输出

C语言操作GPIO_<wiringPi.h>_点灯通用输入输出

ssh : orangepi@本地ip

密码 : orangepi

操作系统发行版: 基于 Ubuntu 20.04.6 LTS(Focal Fossa)的定制版本,专门为 Orange Pi 设备优化。PRETTY_NAME="Orange Pi 1.0.6 Focal"
目录

树莓派外设引脚:

下载WritingPi库:

[安装 tree 命令:](#安装 tree 命令:)

编译writingPi:

接线与查看GPIO编码:

操作GPIO:

运行测试效果:

参考文章:


树莓派外设引脚:

下载WritingPi库:

复制代码
git clone https://github.com/orangepi-xunlong/wiringOP

安装 tree 命令:

sudo apt update

sudo apt install tree -y

编译writingPi:

进入writingpi的目录

cd /home/orangepi/gcc_cpp_codes/wiringOP/

编译:

./build clean

./build

注意: 使用wiringPi编译程序,你需要在编译命令中添加

-lwiringPi

若要使用 Gertboard, MaxDetect 这些库,还需要在代码的编译命令中添加

-lwiringPiDev

接线与查看GPIO编码:

这里我选择了以下四个GPIO用于操作LED灯:


gpio readall 查看GPIO编码:

操作GPIO:

在目录: cd /home/orangepi/gcc_cpp_codes/

编程:

cpp 复制代码
#include <stdio.h>
#include <wiringPi.h>

#define LED_BLUE 13
#define LED_RED 15
#define LED_GREEN 18


int main()
{
// 初始化 wiringPi(必须调用,否则会报错)
  wiringPiSetup();  // 使用 wiringPi 的引脚编号

  pinMode(LED_BLUE,OUTPUT);
  pinMode(LED_RED,OUTPUT);
  pinMode(LED_GREEN,OUTPUT); 
  
  digitalWrite(LED_BLUE ,LOW);
  digitalWrite(LED_RED ,LOW);
  digitalWrite(LED_GREEN ,LOW);
  
  while(1)
  {
    digitalWrite(LED_BLUE ,HIGH);
    delay(500);
    digitalWrite(LED_BLUE ,LOW);
    delay(500);
  }
}

运行测试效果:

gcc GPIO_LED.c -o GPIO_LED -lwiringPi

chmod +x GPIO_LED

参考文章:

如何使用cpp操作香橙派GPIO --使用<wiringPi.h>_香橙派 gpio-CSDN博客