精华内容
下载资源
问答
  • 课程主要学习树莓派的一些基础知识、常规的操作、安装软件出现的常见问题处理、基于树莓派的一些项目、避免新手入坑。例如:从安装系统、远程桌面控制、中文界面的设置、密码的设置、 安装输入法 、Linux基础命令、...
  • 树莓派项目-源码

    2021-02-21 09:36:51
    树莓派项目
  • alarmpi, 这是 树莓派 项目的最新版本闹钟 欢迎使用AlarmPi项目。这是你的树莓派的"一个简单的语音和新闻时钟"。 请随意接受它,并按照你的意愿做。 这个项目是 3个独立项目的顶点,可以在这里看到: ...
  • 树莓派能做什么,莫过于来看一遍树莓派的10个经典项目的视频了,我们先以图片的形式过一遍。 NO.1 树莓派实现VR 注意这个人头上戴的是一个虚拟3D眼镜,他看到的场景是树莓派上安装的两个摄像头,这两个摄像头就相当...
  • 早期树莓派项目代码plm
  • 树莓派项目 这个想法是为计算机材料预订请求创建一个管理器。 将管理对资源的请求,其中包含有关相关方、对象、位置、初始和最终日期、订单日期的数据。 对象将根据订单可用或不可用。 该项目目前具有BD,bascia的...
  • 树莓派基础学习&树莓派项目实战演示&Python语言 本人就读于兴义民族师范...

    扫码下载「CSDN程序员学院APP」,1000+技术好课免费看

    APP订阅课程,领取优惠,最少立减5元 ↓↓↓

    订阅后:请点击此处观看视频课程

     

    视频教程-树莓派基础学习&树莓派项目实战演示&Python语言-Python

    学习有效期:永久观看

    学习时长:74分钟

    学习计划:2天

    难度:

     

    口碑讲师带队学习,让你的问题不过夜」

    讲师姓名:莫明作

    学生

    讲师介绍:本人就读于兴义民族师范学院,即将毕业,共同学习,共同成长。

    ☛点击立即跟老师学习☚

     

    「你将学到什么?」

    课程主要学习树莓派的一些基础知识和一些常规的操作和安装软件出现的常见问题以及学习基于树莓派的一些项目,避免新手入坑。例如:从安装系统——远程桌面控制——中文界面的设置——密码的设置—— 安装输入法 ——Linux基础命令——文件操作——树莓派摄像头的使用 ——基于树莓派人脸识别——语音识别——图像识别——语音播报——OpenCV2的安装——无论是新手还是树莓派爱好者希望能在里边共同学习到一些树莓派知识和使用方法。

     

    「课程学习目录」

    第1章:系统安装效果
    1.树莓派系统的安装
    第2章:树莓派自动连网(无网线),ssh远程连接 桌面连接
    1.树莓派安装系统后自动连网(不需网线 不需路由器)
    2.ssh远程连接(putty)
    3.电脑自带远程桌面连接进入树莓派桌面
    第3章:树莓派设置中文界面 修改密码 安装输入法 换源效果的
    1.设置中文界面
    2.修改密码
    3.安装输入法
    4.换源
    5.树莓派扩容
    6.修改和校正树莓时间
    7.固定树莓派IP
    第4章:树莓派(Linux)一些常用的命令以及nano编辑器的使用
    1.树莓派基础命令
    2.软件安装与卸载
    3.文件目录管理
    4.nano 编辑器基本使用
    第5章:python学习以及使用
    1.树莓派添加Python3 IDLE
    2.python导入包模块
    3.Python多行注释以及单行注释
    4.Python条件语句 循环语句 输入和输出
    5.树莓派上运行python点亮LED灯
    第6章:百度云人工智能(AI)系列
    1.百度云环境的搭建
    2.人脸搜索识别
    3.活体检测
    4.语音合成
    5.语音识别
    6.人流量统计
    7.人体检测与属性识别
    8.车牌识别
    9.相似度图片搜索

     

    7项超值权益,保障学习质量」

    • 大咖讲解

    技术专家系统讲解传授编程思路与实战。

    • 答疑服务

    专属社群随时沟通与讲师答疑,扫清学习障碍,自学编程不再难。

    • 课程资料+课件

    超实用资料,覆盖核心知识,关键编程技能,方便练习巩固。(部分讲师考虑到版权问题,暂未上传附件,敬请谅解)

    • 常用开发实战

    企业常见开发实战案例,带你掌握Python在工作中的不同运用场景。

    • 大牛技术大会视频

    2019Python开发者大会视频免费观看,送你一个近距离感受互联网大佬的机会。

    • APP+PC随时随地学习

    满足不同场景,开发编程语言系统学习需求,不受空间、地域限制。

     

    「什么样的技术人适合学习?」

    • 想进入互联网技术行业,但是面对多门编程语言不知如何选择,0基础的你
    • 掌握开发、编程技术单一、冷门,迫切希望能够转型的你
    • 想进入大厂,但是编程经验不够丰富,没有竞争力,程序员找工作难。

     

    「悉心打造精品好课,2天学到大牛3年项目经验」

    【完善的技术体系】

    技术成长循序渐进,帮助用户轻松掌握

    掌握Python知识,扎实编码能力

    【清晰的课程脉络】

    浓缩大牛多年经验,全方位构建出系统化的技术知识脉络,同时注重实战操作。

    【仿佛在大厂实习般的课程设计】

    课程内容全面提升技术能力,系统学习大厂技术方法论,可复用在日后工作中。

     

    「你可以收获什么?」

    树莓派安装系统,中文界面,密码等一些基本配置

    树莓派ssh远程控制 图形界面的安装使用

    python点亮一盏灯

    基于树莓派人脸识别,语音识别,图像识别

     

    展开全文
  • 树莓派超级学习合集:文档视频教程30+,包含项目:服务器系统,云存储系统,机顶盒,物联网系统,DIY照相机,媒体播放器,影像识别系统,DIY掌上游戏机,遥控器开关,遥控车,无线路由器,机器人小项目,超级计算机...
  • raspi_project 带有Raspberry-pi3的智能家居
  • 树莓派项目汇总(整理)

    万次阅读 2016-06-17 18:25:17
    树莓派可用软件包一览  http://www.raspberryconnect.com/raspbian-packages-list http://www.raspberrypi-spy.co.uk/ 极客工坊: http://www.geek-workshop.com/forum-

    几个网站和论坛推荐




    树莓派可用软件包一览

      http://www.raspberryconnect.com/raspbian-packages-list


    http://www.raspberrypi-spy.co.uk/


    极客工坊:

    http://www.geek-workshop.com/forum-50-1.html

    爱板网

    http://www.eeboard.com/bbs/forum.PHP

    树莓派论坛(推荐)

    http://www.shumeipai.net/forum.php

    树莓派爱好者论坛

    http://bbs.shumeipai.org/forum.php

    爱上树莓派

    http://www.raspicn.com/forum-38-1.html

    Arduino 中文社区

    http://www.arduino.cn/forum.php

    国外树莓派

    http://www.forum-raspberrypi.de/




    项目:

    项目集合整理第一波 http://www.codelast.com/?p=5013


    第二波:


    1,GPIO控制流水灯      http://www.codelast.com/?p=5155

    2,驱动12864液晶显示视频 http://shamiao.com/raspi/5

    3,基于USB摄像头的运动视频捕捉和远程web视频监控

    4,关于树莓派的30个应用点子

    5,树莓派驱动 LCD   http://v.youku.com/v_show/id_XNTA4MTg4MTE2.html

    6,树莓派烧写安卓系统   http://www.shumeipai.net/thread-656-1-1.html

    7,树莓派读取温湿度传感器 http://blog.csdn.net/liang890319/article/details/8739683,

    8,树莓派驱动步进电机http://www.eeboard.com/bbs/thread-5802-1-1.html

                                                                    http://www.shumeipai.net/thread-540-1-1.html


    9,树莓派+yeelink 实现远程摄像头监控   http://bbs.yeelink.net/thread-108-1-1.html

    5分钟一点也不夸张, 在你熟悉Yeelink使用的情况下, 你真的只需几分钟就可以搭建一套在线图像监控, 神马入室小偷啥的, 还能逃过你的千里眼 当然, 要是使用motion来获取图像, 还能做到画面动作检测, 有兴趣的同学可以继续发挥哦. 废话少说, 来看看几分钟怎么做到的吧.

    1. 将USB摄像头接到Pi上, 安装驱动, 我所使用的版本(2012-10-28-wheezy-raspbian.img)已经包含了V4L2驱动, 略去xxx字. 有问题的话Google一下
    pi@raspberrypi ~ $ ls -l /dev/video0 
    crw-rw---T 1 root video 81, 0 Jan  1  1970 /dev/video0

    2. 安装抓图软件fswebcam
    pi@raspberrypi ~ $ sudo apt-get install fswebcam

    3. 登录Yeelink, 在用户中心增加一个设备, 再为之增加一个图像传感器.

    4. 在/home/pi下准备脚本yeelink.sh, 内容为以下两行命令, 其中的ApiKey和URL请改为自己设备对应的信息.
    sudo fswebcam -d /dev/video0 -r 320x240 --bottom-banner --title "RaspberryPi @ Yeelink" --no-timestamp /home/pi/yeelink.jpg
    curl --request POST --data-binary @"/home/pi/yeelink.jpg" --header "U-ApiKey: xxxxxxxxxxxxxxxxxxxx"http://api.yeelink.net/v1.0/device/1022/sensor/1294/photos

    为脚本增加可执行权限
    pi@raspberrypi ~ $ chmod +x yeelink.sh

    5. 将脚本加入cronjob
    pi@raspberrypi ~ $ crontab -e

    加入下面一行, 让脚本每分钟运行一次, 保存退出.
    */1 * * * * /home/pi/yeelink.sh


    搞定, 至此我们的监控就开始运行了, 上网页上看看效果吧
    http://www.yeelink.net/devices/1022




    树莓派修改office文件 播放ppt

    sudo apt-get update

    sudo apt-get install libreoffice

    http://www.raspberryconnect.com/officesoftware/item/125-libreoffice-raspberry-pi


    整理中.....

    展开全文
  • 项目:Een树莓派项目voor het aansturen van mijn verlichting
  • 作业1 第一个树莓派项目
  • 这是一个小型 Raspberry Pi 项目,用于构建与 Evernote 云服务很好地集成的家庭扫描解决方案。 它建立在其他人的伟大项目描述和博客之上,我试图让其他人使用该现有技术变得简单(r),例如 (不再可访问) 与...
  • RaspberryPi Model B的第一个项目-多功能闹钟。 我之所以选择这个项目,是因为目前市场上几乎没有任何廉价的互联网收音机闹钟(大多从80€起)。因此,DIY
  • 树莓派上的MQTT。 屏幕截图 视频 *基于Stephan Zerhusen的演示实现了Spring Security 更改为利用mysql而不是h2。 更改了令牌的返回以返回用户详细信息以及令牌。 更改了异常处理以处理方法级自动化异常。 更改...
  • ansible-raspi-playbooks:用于设置和更新树莓派项目的手册
  • 看看我在好玩、能学习、有用处的树莓派上做了些什么。-- Anderson Silva无论是从历史上,还是从理论上讲,当时钟走到一个十年份第一年的 1 月 1 日的午夜 0 点时,就开始了...

    看看我在好玩、能学习、有用处的树莓派上做了些什么。

    -- Anderson Silva


    无论是从历史上,还是从理论上讲,当时钟走到一个十年份第一年的 1 月 1 日的午夜 0 点时,就开始了一个十年或一个世纪或一个千年纪元。例如,20 世纪始于 1901 年 1 月 1 日,而不是 1900 年 1 月 1 日。原因很简单:现代日历中没有 0 年,因此这些时间段始于 1 年(使用公历)。但这不是我们在口语上和文化上指代时间段的方式。例如,当我们提到 80 年代的音乐或电影时,我们所说的是 1980 年至 1989 年。

    我可以说,最近过去的 21 世纪 10 年代是云计算、社交媒体、移动技术和物联网(IoT)的十年,这其中就包括树莓派。最近,《时代》杂志将树莓派称为过去十年中 10 个最佳小玩意之一。我非常同意这点。

    树莓派最初的于 2012 年推出,我过了几年才使用上了它。不过从那以后,我在家中做了许多有趣的教育项目,还在 Opensource.com 中记录了一些。

    圣诞灯三部曲

    三年来,我写了三篇探讨如何使用树莓派和开源项目 LightShowPi 控制圣诞灯的文章。第一篇文章《用树莓派创建你自己的音乐灯光秀》,非常基础地介绍了电子开发介绍和灯光秀的结合。第二篇文章,《使用树莓派 SSH 进入你的圣诞树》,稍微深入地介绍了通过远程管理和电子按钮控制灯光的方法。三部曲的最后一章《用树莓派设置假期心情》,回顾了上一年 LightShowPi 项目中引入的更改。

    DIY 项目

    多年来,我已经将树莓派变成了几种有用的设备。有一次,我将树莓派变成了 Pi MusicBox 音乐播放设备,它可以让你在 Web 界面中导入你喜欢的音乐流并在房间中播放。

    将树莓派做成移动视频录制设备是另一个 DIY 项目。它需要一些额外的硬件,例如触摸屏、树莓派摄像头和电池组,但是它工作的很好。这个设备的最大缺点之一是当时树莓派的可用内存很小。我认为如果我将它重新配置在具有 4GB 内存的树莓派 4 上,那么这款便携式摄像机的功能可能会更好。这可能是一个会在 2020 年重新打造的项目。

    我做的另一个小项目客厅的数字时钟使用了 Adafruit PiTFT 小屏幕。尽管这个项目很简单,但它可能是我使用时间最长的项目。那个时钟在我的电视机上呆了一年多,一天 24 小时不间断运行,直到屏幕烧坏为止。

    圆周率日系列

    最后但并非最不重要的一点是,在 2019 年的圆周率日(3 月 14 日)之前,我在 14 内发布了 14 篇文章。这是迄今为止我完成过的最具挑战性的写作项目,但是它使我能够涵盖许多不同的主题,并希望使读者对树莓派的丰富功能有更多的了解。

    走向未来

    我不认识树莓派基金会中的任何人,因此我不了解它的任何路线图和未来计划。我可以(但我不会)推测品牌及其设备的未来,它们让世界各地这么多不同社会地位的人扩展他们对计算机科学、电子和开源开发的知识。我希望基金会的管理层能够忠于其愿景和使命,并继续为世界各地的人们提供价格合理的技术。

    21 世纪 10 年代过去了,那是多么甜蜜的十年。对我来说,它闻起来就像树莓派馅饼。


    via: https://opensource.com/article/20/1/raspberry-pi-best

    作者:Anderson Silva 选题:lujun9972 译者:geekpi 校对:wxy

    本文由 LCTT 原创编译,Linux中国 荣誉推出

    ????:还在看吗?

    展开全文
  • 树莓派zero小项目.zip

    2020-09-20 13:41:28
    自己学习树莓派写的一些小项目,有二维码识别、串口、pwm、多线程与stm32串口通信,简单字符识别等。
  • 项目涉及到的材料有: 树莓派4b 1个LED灯 2根杜邦母线 照片 1.1了解树莓派引脚 以下是树莓派的引脚图: 大家可以看到,一共有40个引脚,每个引脚都带有编号,左列是奇数,右列是偶数...

    第一节 点亮LED灯

    1.1 了解树莓派引脚

    1.2 用Python控制GPIO

    1.3 连接LED灯

    1.4 点亮LED灯

    1.5 用LED灯表示摩斯电码


    在本节,我们将学习如何用树莓派点亮LED灯(发光二极管)并控制其明暗程度,最后我们还会结合摩斯电码用LED灯来表示"Hello World"。该项目涉及到的材料有:

    1. 树莓派 * 1
    2. LED灯 * 1
    3. 限流电阻 * 1
    4. 杜邦线(母对母) * 3

     

    1.1 了解树莓派引脚

    以下是树莓派的引脚图:

    大家可以看到,一共有40个引脚,每个引脚都带有编号,左列是奇数,右列是偶数。我们用到的引脚主要分为以下几类:

    • GPIO (General-Purpose Input/Output)引脚:用来读取或输出高低电平,我们可以用该引脚达到与其他硬件交互的目的。
    • Ground引脚:缩写为GND,用于接地。
    • 3V3和5V引脚:给其他硬件供电。

     

    我们可以在终端中输入pinout命令来快速查看当前版本树莓派的引脚图:

     

    1.2 用Python控制GPIO

    我们可以使用RPi.GPIO这个库来控制GPIO,通过以下命令即可安装:

    pip3 install RPi.GPIO

     

    接着导入RPi.GPIO库(此时运行代码,如果没有任何报错,说明安装成功):

    import RPi.GPIO as GPIO

     

    在导入模块后要做的第一件事就是确定所采用的GPIO引脚编码方式:

    GPIO.setmode(GPIO.BOARD)

    注:树莓派的GPIO引脚有多种编码方式,如wiringPi、BCM、BOARD等。RPi.GPIO这个库提供BCM和BOARD编码方式,但在本系列教程中笔者将统一使用BOARD编码(即引脚上的编号)。使用该编码方式的好处是:树莓派各版本的BOARD编码方式是相同的,所以就算更换了树莓派版本,我们也无需修改代码。关于其他编码方式,笔者这里不作详解,大家可以自行去了解下。

     

    确定完编码方式之后,我们就要设置所用到的GPIO引脚(先设置,再使用):

    # 将引脚设置为输入模式
    GPIO.setup(num, GPIO.IN)
    
    # 将引脚设置为输出模式
    GPIO.setup(num, GPIO.OUT)

    我们可以通过GPIO.setup方法将相应引脚设置为输入模式或者输出模式,num即为引脚编号(请见1.1小节中的图片)。

     

    设置完之后,我们就可以通过GPIO.input和GPIO.output来接收或者发送高低电平:

    # 通过GPIO.input方法来判断接收的是高电平还是低电平
    if GPIO.input(num) == GPIO.HIGH:
        ...
    else:
        ...
    
    # 通过GPIO.output方法来发送高低电平
    GPIO.output(num, GPIO.HIGH)
    GPIO.output(num, GPIO.LOW)

    我们可以用1或者True来代替GPIO.HIGH,用0或者False来代替GPIO.LOW。

    注:树莓派GPIO引脚输出的电压为3.3V。

     

    使用完GPIO引脚后,我们要调用GPIO.cleanup()来将引脚释放掉:

    # 释放GPIO引脚资源
    GPIO.cleanup()

    如果不释放,那么再次运行代码后,会提示当前GPIO引脚正在使用当中:

    如果不想要出现这提示,可以使用GPIO.setwatnings(False)来屏蔽掉。不过大家应该养成好习惯,记得加入这行代码,否则可能会对树莓派造成损坏。

     

    1.3 连接LED灯

    首先我们来学习下如何区分LED灯的正负极,笔者这里提供两种方法:

    1. 长腿的是正极,短腿的是负极。
    2. 铁片小的是正极,铁片大的是负极。

     

    本项目中所使用的黄色LED灯工作电压约为1.8V (可以使用万用表测量),而这种LED灯的额定电流为20mA,我们应该加上一个限流电阻来防止LED灯被烧坏。

    已知树莓派GPIO高电平输出电压为3.3V,黄色LED等的工作电压为1.8V,额定电流为20mA。根据欧姆定律I = U / R,限流电阻最小应为:(3.3-1.8) / 0.02 = 75 Ω

    注:不同颜色的LED灯工作电压不同,请大家根据实际情况挑选合适的限流电阻。如果电阻太小,LED灯会过亮容易烧坏;如果电阻过大,LED灯会太暗,也会导致现象不明显。一般LED灯给个2mA-10mA电流就会发亮,只是亮度不同,给20mA的话就最亮了。

     

    笔者这里选择了一个100Ω的限流电阻。

    现在我们将LED灯的两个腿插到杜邦线中(短腿黄色,长腿橙色):

    再将限流电阻插到任意一个杜邦线中,笔者这里插到了连接短腿的杜邦线里:

    接着将限流电阻的另一头插到剩下的一根杜邦线中:

    接着将连接负极的线插到14号GND接地引脚中,将连接正极的线插到16号GPIO引脚中:

                               

    到此LED灯的连接工作就结束了。

    注:在以后的章节中我们会使用面包板。

     

    1.4 点亮LED灯

    要点亮LED灯,我们只需给它一个高电平即可:

    import RPi.GPIO as GPIO
    import time
    
    # 设置编码方式
    GPIO.setmode(GPIO.BOARD)
    
    # 设置GPIO引脚
    GPIO.setup(16, GPIO.OUT)
    
    # 用16号引脚输出一个高电平,灯亮
    GPIO.output(16, GPIO.HIGH)
    
    # 等3秒
    time.sleep(3)
    
    # 用16号引脚输出一个低电平,灯灭
    GPIO.output(16, GPIO.LOW)
    
    # 等3秒
    time.sleep(3)
    
    # 再亮灯
    GPIO.output(16, GPIO.HIGH)
    
    # 等3秒
    time.sleep(3)
    
    # 使用结束,释放引脚
    GPIO.cleanup()

    这里我们还引入了time模块来控制亮灯灭灯时长。最后结束时,调用GPIO.cleanup()释放了引脚资源。

     

    以下是代码运行后的视频:

    《树莓派项目实战》第一节 点亮LED灯

     

    1.5 用LED灯表示摩斯电码

    下面是摩斯电码对照表:

    我们将它用python字典来表示:

    MORSE_DICT = {
        'A': '.-', 'B': '-...', 'C': '-.-.', 'D': '-..', 'E': '.', 'F': '..-.', 'G': '--.',
        'H': '....', 'I': '..', 'J': '.---', 'K': '-.-', 'L': '.-..', 'M': '--', 'N': '-.',
        'O': '---', 'P': '.--.', 'Q': '--.-', 'R': '.-.', 'S': '...', 'T': '-', 'U': '..-',
        'V': '...-', 'W': '.--', 'X': '-..-',  'Y': '-.--', 'Z': '--..',
    
        '1': '.----', '2': '..---', '3': '...--', '4': '....-', '5': '.....',
        '6': '-....', '7': '--...', '8': '---..', '9': '----.', '0': '-----',
    }
    

    那怎么用灯来表示摩斯电码呢?我们来看下图片上的这段话:

    翻译出来是这样的:

    1. 一个点算一个单位。
    2. 一个横线算三个单位。
    3. 单个字母的摩斯电码,其点线(点点或线线)间的间隔算一个单位。
    4. 字母与字母间的间隔算三个单位。
    5. 单词与单词间的间隔算七个单位。

    好,那么我们规定一个单位算0.1秒,碰到点和线就亮相应时长,碰到间隔就灭相应时长。

     

    现在我们就将LED灯摩斯电码结合起来表示"Hello World"这句话。以下是完整代码:

    import RPi.GPIO as GPIO
    import time
    
    # 设置编码方式
    GPIO.setmode(GPIO.BOARD)
    
    # 设置GPIO引脚
    GPIO.setup(16, GPIO.OUT)
    
    # 摩斯电码对照字典
    MORSE_DICT = {
        'A': '.-', 'B': '-...', 'C': '-.-.', 'D': '-..', 'E': '.', 'F': '..-.', 'G': '--.',
        'H': '....', 'I': '..', 'J': '.---', 'K': '-.-', 'L': '.-..', 'M': '--', 'N': '-.',
        'O': '---', 'P': '.--.', 'Q': '--.-', 'R': '.-.', 'S': '...', 'T': '-', 'U': '..-',
        'V': '...-', 'W': '.--', 'X': '-..-',  'Y': '-.--', 'Z': '--..',
    
        '1': '.----', '2': '..---', '3': '...--', '4': '....-', '5': '.....',
        '6': '-....', '7': '--...', '8': '---..', '9': '----.', '0': '-----',
    }
    
    # 时长单位
    UNIT = 0.1
    
    
    def get_morse(sentence):
        """获取每个字母的摩斯电码"""
        morse_list = []
    
        for c in sentence.upper():
            morse = MORSE_DICT.get(c)
    
            if morse:
                morse_list.append(morse)
            else:
                morse_list.append(' '*7)
    
        print(morse_list)
        return morse_list
    
    
    def show(morse_list):
        """遍历列表,用LED灯表示点、线和间隔"""
        for element in morse_list:
    
            # 单词间的间隔
            if ' ' in element:
                GPIO.output(16, GPIO.LOW)
                time.sleep(UNIT*7)
    
            # 点和线
            else:
                for i, c in enumerate(element):
                    if c == '.':
                        GPIO.output(16, GPIO.HIGH)
                        time.sleep(UNIT)
    
                    elif c == '-':
                        GPIO.output(16, GPIO.HIGH)
                        time.sleep(UNIT*3)
    
                    # 点或线如果是最后一个的话,则不用算间隔
                    if i != len(element)-1:
                        GPIO.output(16, GPIO.LOW)
                        time.sleep(UNIT)
    
                # 字母间的间隔
                GPIO.output(16, GPIO.LOW)
                time.sleep(UNIT*3)
    
    
    def main():
        """主逻辑"""
        sentence = 'Hello World'            # 1
    
        morse_list = get_morse(sentence)    # 2
        show(morse_list)                    # 3
    
        GPIO.cleanup()                      # 4
    
    
    if __name__ == '__main__':
        main()
    

    1. 首先构造"Hello World"字符串,存储在sentence变量中。

    2. 通过get_morse方法,循环遍历字符串中每个字符,转换成摩斯电码后添加到morse_list列表中。由于字典中的键是大写的,所以要调用upper()将sentence中的字符变为大写。碰到空字符时,就表示遇上了单词间的间隔,所以我们就往列表中添加7个空字符(1个字符为0.1秒)。"Hello World"打印出来的morse_list是这样的:

    ['....', '.', '.-..', '.-..', '---', '       ', '.--', '---', '.-.', '.-..', '-..']
    

    3. 接着我们调用show()来表示morse_list中的点、线以及间隔。

    • 循环列表,如果元素中存在空字符' ',那么就表明现在碰到了单词间的间隔,输出低电平让灯灭掉,持续0.7秒;
    • 如果不存在空字符,那么就是字母的摩斯电码,于是我们循环该摩斯电码中的每个字符。如果是点'.',那么输出一个高电平,持续0.1秒;如果是线'-',那么点亮0.3秒。点或线表示完之后就要表示间隔,持续0.1秒。不过如果点或者线已经是该摩斯电码中最后一个了的话,则无需表示间隔。
    • 单个字母的摩斯电码循环完毕之后,就可以表示字母间的间隔了,持续0.3秒。

    4. 表示完毕后,释放引脚资源。

     

    运行视频如下:

    《树莓派项目实战》用LED灯表示摩斯电码

     

    提示:如果感觉太快,大家可以调整UNIT的值来调整亮灭灯时长。

    展开全文
  • 树莓派 电脑可被用来进行多种设置用于不同的目的。-- Ben Nuttall树莓派电脑可被用来进行多种设置用于不同的目的。显然它在教育市场帮助学生在教室和创客空间中学习...
  • 树莓派智能小车开发

    2018-02-25 12:15:02
    基于C语言或Python的树莓派智能小车控制开发,可实现手机电脑远程遥控,超声避障,黑线循迹,红外避障/物体追踪等功能,本教程工具齐全,很适合初学者项目开发起航
  • 如果你是初次使用Linux或者是编程新手,那么可能会不容易理解书中的大量命令和代码,但是要改变世界的动机或许就足以让你开始创建树莓派项目。本章为树莓派电脑板使用以及用户涉足传感器所需的所有准备工作提供了一...
  • 树莓派项目(1)人脸识别python

    千次阅读 2019-10-03 01:45:39
    ...使用树莓派进行简易人脸识别 http://shumeipai.nxez.com/2017/03/16/raspberry-pi-face-recognition-system.html 主要学习这个加速策略 多核加跳帧…帧数可到28帧左右。 效果 1人脸检...
  • 原创树莓派设计的报告,适用于各类学校的大作业!
  • 1. 我的世界: Pi ...这个树莓派版本自带的我的世界不仅仅是一个具有创造性的建筑游戏,还是一个具有编程接口,可以通过 Python 与之交互的版本。 我的世界:Pi 版对于老师来说是一个教授学生解
  • 树莓派 有趣实践】寻找小项目

    千次阅读 2020-02-16 17:35:36
    有时候在想,有没有一些炫酷的树莓派项目,在有趣实践中成长。 于是通过不断地寻找,找到了一些不错的。(详细的步骤说明、有源代码) 一、疫情数据实时监控 关键词:树莓派、Arduino、串口通讯、Linux命令 ...
  • 第四节 用led阵列显示爱心 在本节,我们将学习如何用树莓派点亮led阵列,最后我们还会结合摩斯电码用LED灯来表示"Hello ...该项目涉及到的材料有: 树莓派* 1 LED灯 * 1 限流电阻 * 1 杜邦线(母对母)* 3 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 11,970
精华内容 4,788
关键字:

树莓派项目