[转]树莓派gpio口控制
【【开发语言】——C语言 【简单介绍】BCM2835 C
Library可以理解为使用C语言实现的相关底层驱动,它给我的感觉更像STM32的库函数,BCM2835 C
Library的驱动库包括GPIO、SPI和UART等,可以通过学习BCM2835 C
Library熟悉BCM2835相关的寄存器操作。如果有机会开发树莓派上的linux驱动,或自主开发python或PHP扩展驱动,可以从
BCM2835 C Library找到不少的“灵感”。
2.注意事项
【编号方式】
可以在windows中编写代码,如果是Python脚本可通过FTP软件传输到树莓派中,然后使用SSH客户端登录到树莓派中执行Python脚本。如
果是C语言文件,除了使用FTP传输之外还需要在树莓派上编译才可以生成可执行文件(相当于windows上的exe文件)。相关软件操作请参考【【3】在其他linux中编写
$ wget # 解压缩
# 进入解压之后的目录
# 启动安装
新建一个名为led.py的文件,该文件具体内容如下:
- import RPi.GPIO as GPIO
- import time
- # BOARD编号方式,基于插座引脚编号
- GPIO.setmode(GPIO.BOARD)
- # 输出模式
- GPIO.setup(11, GPIO.OUT)
- while True:
- GPIO.output(11, GPIO.HIGH)
- time.sleep(1)
- GPIO.output(11, GPIO.LOW)
- time.sleep(1)
sudo python led.py
好吧,扩展板上的LED等开始闪烁了。最后使用Ctrl+C结束Python程序。
【1】 【2】由于采用插座引脚编号方式,此处的11脚相当于BCM2835寄存器编号方式的引脚11。
- int main(void)
- {
- wiringPiSetup() ;
- pinMode (0, OUTPUT) ;
- for(;;)
- {
- digitalWrite(0, HIGH) ; delay (500) ;
- digitalWrite(0, LOW) ; delay (500) ;
- }
- }
# 解压缩
# 进入压缩之后的目录
新建一个名为blink.c的程序,程序的具体内容如下:
- // P1插座第11脚
- #define PIN RPI_GPIO_P1_11
- int main(int argc, char **argv)
- {
- if (!bcm2835_init())
- return 1;
- // 输出方式
- bcm2835_gpio_fsel(PIN, BCM2835_GPIO_FSEL_OUTP);
- while (1)
- {
- bcm2835_gpio_write(PIN, HIGH);
- bcm2835_delay(100);
- bcm2835_gpio_write(PIN, LOW);
- bcm2835_delay(100);
- }
- bcm2835_close();
- return 0;
- }
[转]树莓派gpio口控制的更多相关文章
- android gpio口控制
android gpio口控制 GPIO口控制方式是在jni层控制的方式实现高低电平输出,类似linux的控制句柄方式,在linux系统下将每个设备看作一个文件,android系统是基于linux内 ...
- 树莓派GPIO口的使用
树莓派的优势在于Liunx操作系统加GPIO口,其中IO口时物联网组成中不可缺少的,高低电平的控制是很有必要的存在,再加有python的支持,玩转GPIO相对就容易多了 管脚编号 BCM: 编号侧重 ...
- 树莓派GPIO口驱动编写
一.wiringpi写法 #include <wiringPi.h> #include <stdlib.h> int main(int argc,char *argv[]) { ...
- 树莓派GPIO控制RGB彩色LED灯
树莓派GPIO通过PWM来控制RGB彩色LED灯,可以显示任何我们想要的颜色. RGB模块简介 这个RGB彩色LED里其实有3个灯,分别是红灯.绿灯和蓝灯.控制这三个灯分别发出不同强度的光,混合起来就 ...
- 树莓派GPIO控制LED彩灯
树莓派使用GPIO接口来控制LED灯,自制五彩炫光的节日彩灯. 1.硬件准备 a. 树莓派(Raspberry Pi)一个 b. 彩色RGB二极管 c. 杜邦线 d. 5V电源引脚 以上所有零件均可在 ...
- 树莓派基于scratch2控制GPIO
本文通过MetaWeblog自动发布,原文及更新链接:https://extendswind.top/posts/technical/raspberry_scratch2_gpio_control.m ...
- linux驱动初探之杂项设备(控制两个GPIO口)
关键字:linux驱动.杂项设备.GPIO 此驱动程序控制了外接的两个二极管,二极管是低电平有效. 上一篇博客中已经介绍了linux驱动程序的编写流程,这篇博客算是前一篇的提高篇,也是下一篇博客(JN ...
- 基于boa服务器的web控制mini2440的GPIO口
win7 系统 虚拟机:ubuntu12.04 开发板:mini2440 上一篇已经详细的讲解了如何配置boa服务器,在这里我们就要利用boa服务器带来的便利,利用web控制开发板上的GIPO口,这 ...
- openwrt 控制gpio口的方法
利用i2c来控制gpio口 1.编译驱动或者安装驱动 # opkg update # opkg install kmod-i2c-gpio-custom kmod-i2c-core# 加载驱动 # i ...
随机推荐
- adb 命令模拟按键事件
转自:http://blog.csdn.net/jlminghui/article/details/39268419 例子:adb shell input keyevent 4 #这条命令相当于按了设 ...
- C++学习013多态
何为多态 面向对象最要的特征之一就是多态,而纯虚函数是实现多态的主要方式.它可以提供一个通过用的接口,同样调用一个方法, 由于运算对象不同,方法也不同,这也就是所谓的动态绑定. #include &l ...
- [USACO18DEC]Cowpatibility(容斥 or bitset优化暴力)
题面 题意: 给出n个五元组(一个五元组的五个数互不相同),我们称两个五元组不和谐,当且仅当任意元素都不相同,求有多少对五元组不和谐. \(Solution:\) 很容易想到 Ans = 总共对数-和 ...
- Go基础篇【第8篇】: 内置库模块 bytes [一]
bytes包实现了操作[]byte的常用函数.本包的函数和strings包的函数相当类似. func Compare func Compare(a, b []byte) int Compare函数返回 ...
- NO9——线段相关
#include <stdio.h> #include <iostream> #include <math.h> #include <algorithm> ...
- linux基本操作2
将当前用户目录下的文件清单输出到文件list1.txt(当前用户目录下)中ls -l > list1.txt 利用管道命令将根(/)下所有修改日期在4月16日的文件清单输出到list2.txt( ...
- IntelliJ IDEA 创建maven项目
说明 创建Maven项目的方式:手工创建 好处:参考IntelliJ IDEA 14 创建maven项目二(此文章描述了用此方式创建Maven项目的好处)及idea14使用maven创建web工程(此 ...
- LeetCode难度和面试频率(转)
转自:http://www.cnblogs.com/ywl925/p/3507945.html ID Question Diff Freq Data Structure Algorit ...
- log4net将日志写入ElasticSearch
log4net将日志写入ElasticSearch https://www.cnblogs.com/huangxincheng/p/9120028.html 很多小步快跑的公司,开发人员多则3-4个, ...
- BZOJ4560 JLOI2016字符串覆盖(kmp+贪心+状压dp+单调队列)
首先kmp求出每个子串能放在哪些位置.接下来的两部分贪心和状压都可以,各取比较方便的. 最大值考虑贪心.考虑枚举子串的左端点出现顺序,在此基础上每个子串的位置肯定都应该尽量靠前,有是否与上个子串有交两 ...