• 树莓派学习路程No.2 GPIO功能初识 wiringPi安装


      WiringPi是应用于树莓派平台的GPIO控制库函数,WiringPi遵守GUN Lv3。wiringPi使用C或者C++开发并且可以被其他语言包转,例如python、ruby或者PHP等。WiringPi中的函数类似于Arduino的wiring系统,这使得熟悉arduino的用户使用wringPi更为方便。
      树莓派具有26个普通输入和输出引脚。在这26个引脚中具有8个普通输入和输出管脚,这8个引脚既可以作为输入管脚也可以作为输出管脚。除此之外,树莓派还有一个2线形式的I2C、一个4线形式的SPI和一个UART接口。树莓派上的I2C和SPI接口也可以作为普通端口使用。如果串口控制台被关闭便可以使用树莓派上的UART功能。如果不使用I2C,SPI和UART等复用接口,那么树莓派总共具有8+2+5+2 =17个普通IO。wiringPi包括一套gpio控制命令,使用gpio命令可以控制树莓派GPIO管脚。用户可以利用gpio命令通过shell脚本控制或查询GPIO管脚。wiringPi是可以扩展的,可以利用wiringPi的内部模块扩展模拟量输入芯片,可以使用MCP23x17/MCP23x08(I2C 或者SPI)扩展GPIO接口。另外可通过树莓派上的串口和Atmega(例如arduino等)扩展更多的GPIO功能。
     
    安装
    直接apt-get就可以。方便快捷。
    sudo apt-get install wiringPi

    测试wiringPi是否安装成功

    gpio -v
    gpio readall

    输出以下即为安装成功。

    wiringPi对于GPIO引脚的标号定义参照上图的wPi列。

    第一个GPIO程序

    在GPIO.17(wPi编号0)引脚连一个发光二极管,用来观测引脚电平的变化。新建一个目录,新建一个名为test.c的文件。内容如下:

    #include<wiringPi.h>
    
    int main()
    {
            wiringPiSetup();
            pinMode(0,OUTPUT);
            while (1)
            {
            digitalWrite(0,HIGH);delay(500);
            digitalWrite(0,LOW); delay(500);
            }
            return 0;
    }

    然后通过gcc编译。-lwiringPi表示动态加载wiringPi共享库

    gcc test.c -lwiringPi
    sudo ./a.out

    程序顺利运行。使用Ctrl+c结束程序。

  • 相关阅读:
    一个总成本花费100W的失败项目的小小反省
    从绝望中寻找希望
    一个合格程序员该做的事情——你做好了吗?
    Go to 北京!
    深入浅出Oracle分析函数
    最适合web开发人员使用的速查表
    采用axis2c进行webservice发布的流程4在生成的代码中添加事务处理逻辑
    采用axis2c进行webservice发布的流程1
    rhel6.0及centos6.0 忘记root密码解决办法
    采用axis2c进行webservice发布的流程3通过wsdl文件,自动生成C的服务端代码
  • 原文地址:https://www.cnblogs.com/evan-oi/p/4982866.html
Copyright © 2020-2023  润新知