树莓派的GPIO - LED实验

参考 树莓派学习笔记——GPIO功能学习

参考 树莓派Raspberry PI GPIO转接板


1. 首先,将买的GPIO转接板安装到面包板上去,如下图所示,

树莓派的GPIO - LED实验_第1张图片

树莓派的GPIO - LED实验_第2张图片


2. 数据线的一头插入GPIO转接板(只要卡槽对准即可插入),另外一头插入树莓派的插槽。

这里要小心了,数据线的红线要和树莓派板子的P1文字对齐。如下图所示,

树莓派的GPIO - LED实验_第3张图片

3. 然后开始在面包板上搭建电路。原理图参考如下,

注意,LED 的长脚是正极,需要接到树莓派的 GPIO 0 管脚。LED 的短脚是负极,需要接到树莓派的 GND 管脚。

同时,还需要串联一个100 - 1K 欧姆的电阻,才能正常工作,切记!我就用了卖家附送的电阻,目测是220欧姆 (怎样识别五色环电阻)

树莓派的GPIO - LED实验_第4张图片

4. 搭建实验电路,红线是从 GPIO 0 管脚出来,然后串联一个电阻,再经过LED发光管(正负极要接对),最后通过棕色的线回到 GND 管脚。

树莓派的GPIO - LED实验_第5张图片

5. 这时候,接通电源,激动人心的实验开始了。

C 语言程序如下,编译并执行,LED开始闪烁,实验圆满成功!

$ vim led.c
#include  
#include  
  
#define LED RPI_V2_GPIO_P1_11   // P1 PIN 11

int main(int argc, char **argv)
{
    uint8_t counter = 0;

if (!bcm2835_init())  
return 1;

// Set the pin to be an output
bcm2835_gpio_fsel(LED, BCM2835_GPIO_FSEL_OUTP);  
    
// Blinking the LED
while (counter++ < 10) {
        bcm2835_gpio_write(LED, LOW);
bcm2835_delay(1000);

        bcm2835_gpio_write(LED, HIGH);
    bcm2835_delay(1000);
}
bcm2835_gpio_write(LED, LOW);

bcm2835_close();  
return 0;  
}

$ gcc -o led led.c -lbcm2835
$ sudo ./led

Python 程序如下,同样的效果。

$ vim led.py
#!/usr/bin/env python

import RPi.GPIO as GPIO
import time

GPIO.setmode(GPIO.BOARD)
# need to set up every channel which are using as an input or an output
GPIO.setup(11, GPIO.OUT)

count = 0
while True:
    GPIO.output(11, GPIO.LOW)
    time.sleep(1)

    GPIO.output(11, GPIO.HIGH)
    time.sleep(1)

    count = count + 1
GPIO.output(11, GPIO.LOW)

$ sudo python led.py

树莓派的GPIO - LED实验_第6张图片

你可能感兴趣的:(RaspberryPi)