使用C语言操作树莓派GPIO的详细步骤

 更新时间:2021年06月08日 16:39:44   作者:波雅_汉库克  
今天抽空给大家普及使用C语言操作树莓派GPIO的详细步骤,本文大概分五步给大家介绍树莓派GPIO安装步骤,首先需要安装GPIO库然后进行一步步设置,具体操作方法跟随小编一起学习吧

第一步安装GPIO库。

cd /tmp
wget https://project-downloads.drogon.net/wiringpi-latest.deb
sudo dpkg -i wiringpi-latest.deb

地址链接4B的

http://wiringpi.com/wiringpi-updated-to-2-52-for-the-raspberry-pi-4b/

第二步打开GPIO设置

打开GPIO,学习嘛,全打开得了。

保存重启。

第三步找一个GPIO的图

然后找一张树莓派GPIO的图,对照GPIO图写代码了。

看上图GPIO对应的WiringPi数字。

第四步写代码

这个就是代码中使用的GPIO的代号。上代码。

设置GPIO17和GPIO18交替闪烁。

#include <wiringPi.h>
#include <softPwm.h>
#include <stdio.h>
 
#define uchar unsigned char
#define uint unsigned int
#define LedPinRed 0
#define LedPinGreen 1
 
void ledInit()
{
    softPwmCreate(LedPinRed,0,100);
    softPwmCreate(LedPinGreen,10,100);
}
void ledColorSet(uchar r_val, uchar g_val)
{
    softPwmWrite(LedPinRed,r_val);
    softPwmWrite(LedPinGreen,g_val);    
}
 
int main()
{
    int i = 0;
    if(wiringPiSetup() == 1)
    {
        printf("Setup wiringPi failed!!");
        return 1;
    }
    ledInit();
    while(1)
    {
        ledColorSet(0xff,0x00);
        delay(500);
        ledColorSet(0x00,0xff);
        delay(500);
    }
    return 0;
}

wiringPi这个库中的函数可以查看文档,里面函数写的很清楚。

第五步,编译执行

-lwiringPi是链接wiringPi库

-lpthread链接线程库

最后一步执行     ./led 

gcc testLED.c -o led -lwiringPi -lpthread 

题外话

要是使用vim编写代码,其实对新手来说是很痛苦的,所以推荐vscode。

我自己的环境,使用ssh链接树莓派使用vscode编辑代码,然后编译执行。现在vscode支持远程ssh编辑代码,

远程树莓派写的代码,至于使用什么插件,百度一下吧,我也忘了,安装额的插件太多了忘记了。

以上就是使用C语言操作树莓派GPIO的详细内容,更多关于C语言操作树莓派GPIO的资料请关注脚本之家其它相关文章!

相关文章

  • 基于WTL 双缓冲(double buffer)绘图的分析详解

    基于WTL 双缓冲(double buffer)绘图的分析详解

    本篇文章是对WTL下使用双缓冲(double buffer)绘图进行了详细的分析介绍,需要的朋友参考下
    2013-05-05
  • C++实现读取图片长度和宽度

    C++实现读取图片长度和宽度

    这篇文章主要介绍了C++实现读取图片长度和宽度,本文直接给出实现代码,需要的朋友可以参考下
    2015-04-04
  • C语言所有经典排序方法的实现代码

    C语言所有经典排序方法的实现代码

    这篇文章给大家分享C语言所有经典排序方法,文章给大家提供完整的实例代码帮助大家快速学习掌握C语言排序方法,感兴趣的朋友一起看看吧
    2021-06-06
  • C语言实现考试报名管理系统

    C语言实现考试报名管理系统

    这篇文章主要为大家详细介绍了C语言实现考试报名管理系统,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-06-06
  • C语言超详细讲解函数栈帧的创建和销毁

    C语言超详细讲解函数栈帧的创建和销毁

    我们知道c语言中函数都是被调用的,main函数里面能调用其他函数,其实main函数也是被别的函数调用的,下面通过本文给大家分享c语言函数栈帧的创建和销毁过程,一起看看吧
    2022-05-05
  • C++ 中strcpy标准写法实例详解

    C++ 中strcpy标准写法实例详解

    这篇文章主要介绍了C++ 中strcpy标准写法实例详解的相关资料,需要的朋友可以参考下
    2017-06-06
  • C++内存管理介绍

    C++内存管理介绍

    这篇文章主要介绍了C++内存管理,C++标准委员会给我们提供了auto_ptr智能指针,后面又引入了share_ptr以及weak_ptr帮助我们正确和安全的使用指针,本文主要是介绍boost库提供的解决方案,需要的朋友可以参考一下
    2022-01-01
  • C语言基础 原码、反码、补码和移码详解

    C语言基础 原码、反码、补码和移码详解

    这篇文章主要介绍了C语言基础 原码、反码、补码和移码详解的相关资料,需要的朋友可以参考下
    2017-01-01
  • C++基于socket编程实现聊天室功能

    C++基于socket编程实现聊天室功能

    这篇文章主要介绍了C++基于socket编程实现聊天室功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-07-07
  • C语言如何使用函数求素数和举例

    C语言如何使用函数求素数和举例

    素数又称质数,所谓素数是指除了1和它本身以外,不能被任何整数整除的数,下面这篇文章主要给大家介绍了关于C语言如何使用函数求素数和的相关资料,需要的朋友可以参考下
    2022-11-11

最新评论