python开发板卡驱动开发_树莓派开发板如何驱动LED灯
【前言】
硬件入门第一课,千年不变的点灯实验,下面就来跟大家聊聊在树莓派上如何驱动LED灯。
蹦沙卡拉卡~~~~,亮起来~~~~,再闪起来~~~~
一、认识GPIO编码
学习如何用树莓派驱动LED灯时需要先了解树莓派管脚GPIO的编码方式,树莓派的管脚编码方式与51单片机的管脚编码有些不一样,在树莓派的GPIO上分为两种编码方式,分别为BCM编码和wiringPi编码,不同的编码方式在编写程序驱动GPIO时稍有区别,具体编码如下:
(GPIO编码对照图-1)
(GPIO编码对照图-2)
二、准备实验材料
1、一套可运行的树莓派!
2、杜邦线2根
3、LED一颗
三、 线路连接
四、编写驱动程序
说明:以下的实验都是使用SSH方式登录到树莓派来完成的,具体操作可看我的其它博文。
1、使用python脚本语言BCM编码方式驱动LED!
这里使用vim.tiny文本编辑工具编写一个python脚本程序驱动LED,首先给工程 建立一个文件夹用于存放工程文件:
mkdir lesson_1
cd lesson_1/
新建一个led_falsh.py的脚本文件,并写入驱动代码:
vim.tiny led_flash.py
正式写入驱动代码:
import RPi.GPIO as GPIO # 引入GPIO文件
import time # 导入时间模块
GPIO.setmode(GPIO.BCM)
GPIO.setup(25,GPIO.OUT)
while True:
GPIO.output(25,GPIO.HIGH) # 25管脚电平置高
time.sleep(0.2) # 延时 200 ms
GPIO.output(25,GPIO.LOW)
time.sleep(0.2)
编辑完成按下一次Esc键,然后输入 :wq ,意思为保存文件并退出编辑!
下面开始执行文件,查看具体效果,首先先给文件增加用户可执行权限:
sudo chmod u+x led_flash.py
运行程序:
python led_flash.py
此时就可以看到LED实际的效果了,同时如果程序有误的话,终端也会打印出错误消息!
如需退出执行程序,直接按下 ctrl+c 组合键即可退出。
程序解读:
到此,一个驱动LED闪烁的学习就完成了!
五、其它的驱动方式(扩展篇)
【驱动方式】
使用wiringPi编码方式实现驱动LED
【示例程序】
在文件夹下新建一个名为flash.c的文件,并写入以下示例代码:
#include
int main(void)
{
wiringPiSetup();
pinMode (6,OUTPUT);
for(;;)
{
digitalWrite(6,HIGH);
delay(500);
digitalWrite(6,LOW);
delay(500) ;
}
}
【编译运行】
使用cd命令进入文件所在目录,以下命令对文件进行编译:
gcc -Wall -o flash flash.c -lwiringPi
如何编译没有错误,接着输入以下命令执行程序:
sudo ./flash
此时可以看到实时的效果,最后可使用ctrl+c可以结束程序。
【小结】
1、由于人为退出程序时间的不确定性,所以在程序退出时可能为亮,也可能为灭的状态。
2、使用python的程序驱动和C程序驱动LED,只是在编码方式上稍有不同,但实际上驱动的都是同一个IO端口。
喜欢 (2)or分享 (0)
python开发板卡驱动开发_树莓派开发板如何驱动LED灯相关推荐
- Arduino开发(一)_软件开发IDE工具的安装
Arduino开发(一)_软件开发IDE工具的安装 学习Arduino开发首先需要安装软件开发工具,下面给大家做详细的演示, Arduino官方网站网址如下: https://www.arduino. ...
- STM32F103C8T6基础开发教程(HAL库)—点亮第一颗LED灯
STM32F103C8T6基础开发教程目录 STM32F103C8T6基础开发教程(HAL库)-开发环境配置 STM32F103C8T6基础开发教程(HAL库)-Keil添加注释的快捷键 STM32F ...
- 树莓派65/100 - Pico W初体验,点亮板载的LED灯
有一段时间没有折腾树莓派Pico,最近发现它又出新品了,树莓派Pico W,可以通过WIFI连接互联网了. Pico W的产品小册子可以从这里下载. 这篇文章介绍了Pico 和 Pico W的区别. ...
- [RPi]树莓派GPIO入门之控制LED灯
本文部分资料及图片来自网络 一.所需材料 树莓派4B.LED灯.面包板.杜邦线.电阻.Python程序 二.认识硬件材料 这里介绍下LED灯.面包板.杜邦线.电阻 LED灯:LED灯引脚长的一端为正极 ...
- micropython定制_树莓派开发实战 第2版 高清pdf
链接:https://pan.baidu.com/s/1oD6ZiYrTUf2lq-Pz-zBBFQ 提取码:4kzq 树莓派(Raspberry Pi)是一款基于Linux系统的.只有一张信用卡大小 ...
- python内置的集成开发工具是什么_python内置的集成开发工具是什么_后端开发
go语言之goroute协程_后端开发 协程(coroutine)是Go语言中的轻量级线程实现,由Go运行时(runtime)管理.下面就来由go入门教程栏目介绍一下go语言中的goroute协程. ...
- go与python作为后端_golang和python有什么区别?_后端开发
golang吉祥物是啥?_后端开发 golang吉祥物是一只英文名为"gopher"的地鼠(土拨鼠),大大的眼睛,圆圆的身子,短短的手. golang和python有什么区别?下面 ...
- python画动物代码_如何用python画简单的动物_后端开发
python3.x完全兼容python2.x吗?_后端开发 可以说是完全不兼容.相对于Python的早期版本,Python3是一个较大的升级,为了不带入过多的累赘,Python 3.0在设计的时候没有 ...
- 树莓派环境处理_树莓派开发环境配置
接上篇,准备树莓派开发环境的配置. 买回来的树莓派一般会带一个系统,在这里我建议自己定制系统,以树莓派桌面系统为蓝本搭建开发环境. 你需要准备一张 16G的高速TF卡,用以安装系统. 4B取消了全尺寸 ...
- python是语言还是软件_程序开发语言之Python:是追逐还是坚守?
Python作为计算机程序设计语言的其中一种,最初是被设计用于编写自动化脚本(shell),随着版本的不断更新.语言新功能的添加和机器学习的兴起,Python从2017年开始受到广泛关注. Pytho ...
最新文章
- Web用户控件的一个毛病
- OpsDev是什么?
- 《预训练周刊》第8期:首个千亿中文大模型「盘古」问世、谷歌等提出视频音频文本转换器VATT...
- 佳能hdr_拥有高机动性,佳能推出两款UHDgc系列 4K广播级便携式变焦镜头
- Linux 内核定时器使用 一 低精度定时器
- 【ruoyi若依】为当前页添加显示事件
- 吃相难看!它又又又涨价了......
- linux锁定账号 让其不能修改密码,passwd - 用于让用户可以更改自己的密码
- oracle之表空间(tablespace)、方案(schema)、段(segment)、区(extent)、块(block)
- js里面把密码encode_PHP会员找回密码功能的简单实现
- oracle连表图解,oracle 表连接方式解析
- 一个连衣服都穿不整齐的人,代码也肯定写不整齐。
- uni-app 打包App ,实现App更新提醒,并下载最新App
- Python常用数据库封装方法
- 华为盒子 原生android,华为悦盒/各种安卓盒子找回原生设置以及适配蓝牙遥控器...
- 减少OpenCV读取高分辨率图像的时间
- CPU飙升到100%问题排查
- Qt小游戏CoinFlip翻金币
- IDEA Unable to import maven project: See logs for details具体解决方法
- C# WPF MVVM 实战 – 4 - 善用 IValueConverter