树莓派的GPIO - LED实验
2015-04-09 23:15
351 查看
参考 树莓派学习笔记——GPIO功能学习
参考 树莓派Raspberry PI GPIO转接板
1. 首先,将买的GPIO转接板安装到面包板上去,如下图所示,
2. 数据线的一头插入GPIO转接板(只要卡槽对准即可插入),另外一头插入树莓派的插槽。
这里要小心了,数据线的红线要和树莓派板子的P1文字对齐。如下图所示,
3. 然后开始在面包板上搭建电路。原理图参考如下,
注意,LED 的长脚是正极,需要接到树莓派的 GPIO 0 管脚。LED 的短脚是负极,需要接到树莓派的 GND 管脚。
同时,还需要串联一个100 - 1K 欧姆的电阻,才能正常工作,切记!我就用了卖家附送的电阻,目测是220欧姆 (怎样识别五色环电阻)
4. 搭建实验电路,红线是从 GPIO 0 管脚出来,然后串联一个电阻,再经过LED发光管(正负极要接对),最后通过棕色的线回到 GND 管脚。
5. 这时候,接通电源,激动人心的实验开始了。
C 语言程序如下,编译并执行,LED开始闪烁,实验圆满成功!
$ vim led.c
#include <stdio.h>
#include <bcm2835.h>
#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
参考 树莓派Raspberry PI GPIO转接板
1. 首先,将买的GPIO转接板安装到面包板上去,如下图所示,
2. 数据线的一头插入GPIO转接板(只要卡槽对准即可插入),另外一头插入树莓派的插槽。
这里要小心了,数据线的红线要和树莓派板子的P1文字对齐。如下图所示,
3. 然后开始在面包板上搭建电路。原理图参考如下,
注意,LED 的长脚是正极,需要接到树莓派的 GPIO 0 管脚。LED 的短脚是负极,需要接到树莓派的 GND 管脚。
同时,还需要串联一个100 - 1K 欧姆的电阻,才能正常工作,切记!我就用了卖家附送的电阻,目测是220欧姆 (怎样识别五色环电阻)
4. 搭建实验电路,红线是从 GPIO 0 管脚出来,然后串联一个电阻,再经过LED发光管(正负极要接对),最后通过棕色的线回到 GND 管脚。
5. 这时候,接通电源,激动人心的实验开始了。
C 语言程序如下,编译并执行,LED开始闪烁,实验圆满成功!
$ vim led.c
#include <stdio.h>
#include <bcm2835.h>
#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
相关文章推荐
- TI CC2530基础实验(普通GPIO操作——点亮led灯)
- CC2530学习路线-基础实验-GPIO 按键控制LED灯亮灭(2)
- 【iCore4 双核心板_FPGA】例程一:GPIO输出实验——点亮LED
- (一)GPIO 编程实验 LED 流水灯控制
- 树莓派实验一:控制LED灯
- 树莓派GPIO控制RGB彩色LED灯
- ARM裸机程序--GPIO实验 LED(1)
- Beaglebone Black–GPIO 开关 LED(三极管与继电器实验)
- 【iCore3 双核心板_FPGA】例程二:GPIO输出实验——点亮三色LED
- STM32_GPIO之点亮LED实验
- 继续树莓派GPIO:两片74HC595控制一个8x8LED点阵显示爱心
- 实验 使用 vivado zedboard GPIO 开关 开控制 LED
- 树莓派 Learning 003 — GPIO 002 输入模式 — 按键控制LED
- ARM裸机程序--GPIO实验 LED(2)
- 树莓派 Learning 003 — GPIO 003 中断模式 — 按键控制LED
- 7、树莓派编程;gpio编程;led闪烁
- 实验 使用 vivado zedboard GPIO 开关 开控制 LED
- 远程控制通讯——基于树莓派 Python gpiozero 远程控制LED灯并返回控制结果
- 树莓派GPIO入门之控制LED灯
- 树莓派入门二之GPIO控制LED灯