您的位置:首页 > 其它

3、树莓派3 Model B ——— 树莓派GPIO点亮第一个LED

2017-06-02 15:19 549 查看
1、实验前准备
     

树莓派3B及电源 x1
面包板 x1
LED灯 x1
电阻220欧 x1

杜邦线 x2

2、实验原理
 
树莓派的IO口可以外接很多外设,如舵机、红外发送接收模块、继电器、步进电机、各类传感器、屏幕等。通过这些外设可以制作很多有趣的创客设计,改善我们的生活方式提高我们的生活质量。

树莓派的IO口驱动能力是比较弱的,驱动电平为3.3V,高电平驱动比电平驱动能力稍弱些,但这也足够驱动LED工作,为方便理解,以下实验以高电平驱动方式进行。IO口输出高电平,LED灯亮,输出低电平则灯灭。



如上图,我们使用的是wiringPi库,这里我们用11号物理引脚GPIO.0,即wiringPi的0脚。

3、实验步骤

按照如下接线。



使用SSH Secure Shell登录树莓派,切换到root权限。首先进入wiringPi目录,我这里目录是 /home/wiringPi下。
下来我们在windows是用UE编辑器或者记事本等等你喜欢的编辑器再或者可以使用linux下的VIM编辑器,新建一个“LED.c”的文件,如下输入一下代码:
#include<wiringPi.h>//包含wiringPi头文件

int main(void)
{
wiringPiSetup();		//wiringPi库初始化
pinMode(0, OUTPUT);		//设置0口为输出模式
for(;;)				//循环执行
{
digitalWrite(0,  HIGH); //GPIO.0输出高电平
delay(1000);		//延迟1000ms
digitalWrite(0,  LOW);  // GPIO.0输出高电平
delay(1000);		//延迟1000ms
}
return 0;
}
编辑完成后,我们使用SSH的SSH Secure File Transfer Client连接到树莓派的文件系统,拖动LED.c文件到刚才打开的wiringPi路径,如果这里出现错误,一般是文件权限没有写权限,我们在SSH向后退到wiringPi目录的上一层,使用命令:

# cd ..   //退回一层目录  

# ls   //查看目录文件是否存在wiringPi目录文件夹,如果存在使用如下命令

# chmod 777 wiringPi  //赋予wiringPi目录读写权限

# ls -all   //查看所有文件详细信息如下

root@raspberrypi:/home# ls -all

total 16

drwxr-xr-x  4 root root 4096 Jun  1 16:23 .

drwxr-xr-x 22 root root 4096 Mar  4 00:24 ..

drwxr-xr-x 23 pi   pi   4096 Jun  1 19:14 pi

drwxrwxrwx 11 root root 4096 Jun  1 16:37 wiringPi

我们看到drwxrwxrwx 表示所有用户都有对此文件夹读写运行的权限,此时我们在拖动LED.c文件就可以成功。

回到SSH命令端,进入wiringPi目录查看是否存在我们拷贝的LED.c文件。

# cd wiringPi

#ls

看到LED.c后,我们开始编译LED.c

# gcc - o LED LED.c -lwiringPi 

注释:
gcc是对c语言编译的声明,
-o LED是输出工程文件到LED文件(接下来的执行文件)
LED.c是刚刚编写的c语言程序
-lwiringPi是库的调用  

  

如果没有任何提示,表明编译已经成功,这时我们查看当前文件夹会生成LED可执行文件使用如下命令执行点灯程序。

# ./LED

如果想退出程序,使用ctrl+C退出,我们可以查看gpio 所有端口状态,使用

# gpio readall

看到如下



GPIO已经变成输出模式,这时可以看到V电平是0,如果灯停在亮的状态则这里会显示1。
    执行程序这时LED会1秒亮一下1秒灭一下,一闪一闪的,恭喜你已经完成了树莓派第一个实验。
接下来我们继续学习 :

4、树莓派按键实验,即GPIO的输入模式学习。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  树莓派 GPIO LED wiringPi