0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

树莓派上的Scratch入​​门

454398 来源:网络整理 作者:网络整理 2019-11-29 17:23 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

Raspberry Pi是一种学习廉价DIY技术和编程的好方法。它们还是适合儿童的廉价电脑,其中包括大量的学习资源,可帮助年轻人掌握未来的有用概念。

目前有许多出色的初学者项目都使用Pi的GPIO(通用-专用输入/输出)引脚。 Raspbian操作系统内置了Python,因此它也非常适合编码。甚至还有Minecraft Pi版本,可以帮助您学习初学者电子产品和Python!

虽然这对有一定编码经验的人来说非常有用,但是如果您想教别人如何使用

使用Scratch,您可以。

今天,我们将使用Scratch打开连接到LED的LED。我们的GPIO引脚,同时了解一些基本的动画和编程思想,而无需键入任何代码!本教程非常适合让孩子从小就参与DIY电子和编程思维。视频和文章都非常适合家庭或教室。

您需要的东西

1 x已安装Raspbian的Raspberry Pi。今天使用的是Pi 3,但任何Pi都可以使用

1 x LED

1 x 220欧姆或更高的电阻器

1 x面包板

2条连接线

设置LED

我们要在面包板上设置LED和电阻,如下所示:

这是相同设置的示意图。请注意,在此图中,LED是相反的,但是电路仍然完全相同。

我们要进行设置,以便 GPIO引脚5 的连接线连接到我们的电阻的引脚。电阻器的另一端连接到我们的 LED 的正极。如果您想知道哪一面,请查看LED的顶部。一侧应弯曲,而另一侧应平坦。 弯曲侧为正,而平坦侧为负。用一根连接线将LED的负极连接到 GND 引脚。

检查电路是否正确,然后启动Pi!如果您想知道哪个引脚,那我们的Pi入门指南可以为您提供帮助。

从头开始

要打开从头开始,请在Raspberry Pi开始菜单上单击并导航至编程》 Scratch 2.0 。从头开始时,它看起来会像这样:

这里发生了很多事情,但是要抓住它很简单。屏幕上的左边是操作发生的地方。我们编码的所有内容都会在此框中显示。

在其下方是 sprite窗口,您可以在其中加载图像您的程序,或者如果您有创造力,请绘制自己的精灵!

在中间面板中,您会发现您可以用来制作程序的所有块。您还会注意到两个标签,分别是服装和声音,您可以使用它们更多地自定义项目,但是今天我们将不再使用它们。

在右侧上,您可以拖动这些块以使魔术发生!

右侧是当前为空。让我们为此做些事情!

GPIO引脚

在继续之前,我们需要在工具包中添加一些模块以访问GPIO引脚并打开我们的LED。 。在中间面板中,单击更多块。

现在单击添加扩展,然后选择 Pi GPIO 。

现在,我们已经有了所需的所有工具,让我们编写一个程序!

发光猫

由于我们已经加载了猫精灵,因此让我们使用它。我们将要编写一个程序,使它在每单击一个按钮时使猫走一步,并使LED每次点亮一秒钟。首先从 Motion (运动)选项卡中抓住移动10个步骤块,然后将其拖动到右侧的空白处。现在,点击 More Blocks 标签,并将 set GPIO输出设置为拖到右侧,并将其连接到第一个模块的底部。它看起来应该像这样:

您会注意到我的GPIO块中有一个数字5,单击白色圆圈并输入数字此处的GPIO引脚。如果按照与上图所示相同的方式设置LED,它也将是数字5。现在,如果单击代码块,它会发光一会儿。这意味着它正在运行,因此您应该看到猫在移动,并且LED会亮起。进步!

使其更加复杂

现在我们有了一个基本的起点,让我们为代码添加更多逻辑。现在,我们的灯亮了,再也没有熄灭。我们想要的是稍等片刻,然后再次起飞。我们将为此使用 wait 块。

在 Control 标签下,抓取 wait 1 secs 块并将其附加到堆栈的底部。现在,程序知道每次到达那里都要等待一秒钟。要再次关闭LED,请抓住另一个将GPIO输出设置为块并将其拖动到底部。

这次,我们希望通过设置GPIO来关闭LED。 输出低。点击输出高旁边的小下拉箭头,然后将其更改为输出低。别忘了此模块还需要与其上方相同的GPIO编号!

它应如下所示:

现在,当您单击代码块时,猫应该移动,并且LED应当在关闭前点亮一秒钟。现在,这仅在我们单击代码块时有效。让我们来做一个按钮来代替它。

按钮,按钮,我已经有了按钮!

我们需要点击一些东西来告诉猫猫移动。箭头应该可以解决问题!在左下方的 Sprites 窗口中,单击 New sprite 旁边的按钮。这样我们就可以从Scratch附带的Sprite库中进行选择。

我们正在使用Sprite Arrow1 似乎适合我们的程序,但是您可以使用任何喜欢的精灵。您甚至可以在Scratch中绘制自己的精灵,或将自己制作的图像上传到其他地方使用。添加箭头后,箭头应显示在与左侧猫相同的窗格中。将猫拖到屏幕的左侧,将您的箭头拖到顶部,如下所示:

我们需要给箭头设置自己的块。双击箭头精灵,您应该看到右边的窗格现在是空的。我们希望我们的猫每次单击箭头时都运行其代码块。

为此,请从事件中抓取此精灵单击时的块。 strong》标签。这意味着,只要您单击箭头,它的块就会开始运行。现在,无论何时发生这种情况,我们都需要向猫发送一条消息。幸运的是,Scratch可以让我们做到这一点。

大声而清晰地接收您!

我们将使用广播块向猫发送消息。从事件标签中抓取它,并将其放置在点击此图片后的块下。该块将向我们程序中的每个其他精灵发送一条消息。现在显示为message1,但是可以通过单击message1旁边的下拉箭头并选择新消息来添加我们自己的消息。在弹出的窗口中键入 go ,然后单击“确定”。

现在再次双击猫。我们需要告诉猫听广播消息。将当我收到块拖到我们已经完成的堆栈的顶部,并确保下拉菜单也显示 go 。现在,每次单击左窗格中的箭头,它都会广播 go ,猫会收到 go 并移动,并且LED会亮起。

做得好!看起来不错!我们要做的只有最后一件事,就是使它变得更好。

无尽的猫咪故事

如果您点击箭头的次数足够多,您可能会注意到您的猫不在屏幕的右侧。我们可以每次抓住它然后将其拖回去,但是好的程序员都很懒惰,他们让代码为他们工作。让我们成为优秀的程序员,并使用代码块使我们的猫自己向后移动。

将猫拖回屏幕左侧,并确保它没有碰到边缘。将鼠标指针放在cat sprite的中间,然后在左窗格的底角看。会有 x 和 y ,后跟两个数字。把这些写下来,我们将在一分钟之内用完它们。

每当猫移动时,我们都想告诉它:如果您触摸屏幕右侧,返回到开始。我们可以使用块来说明这一点。首先从 Control 标签中抓住 if then 块并将其拖动到代码块下。这看起来有些不同,它的顶部有一个菱形间隙,中间有一个间隙。我们利用这些差距来告诉它该怎么做。

现在转到 Sensing 标签,然后选择触摸鼠标指针?块。您会发现它是菱形,非常适合 if 块中的菱形间隙。如果您无法安装它,请先将其拖动到如果的右侧,然后将其向左移动,直到看到菱形间隙发光。您还会注意到它说的是鼠标指针,这不是我们想要的。请使用下拉菜单选择 edge 。

到目前为止,该部分的内容是说如果,猫碰到了边缘,那么……什么都不做。让我们对其进行更改。

回到起点

我们的如果《触摸边缘》那么块有一个空白需要填充。转到运动标签,然后选择转到x:y:块,然后将其拖动到我们的 if 的空白处

Scratch非常聪明,可以将x和y数字放置在您的cat sprite已经定位的位置,但是请检查这些数字是否与您先前记下的数字匹配。如果不是,请单击 x:和 y:旁边的白框来更改它们。

猫的完整代码块应该看起来像这样。

这是一个功能齐全的程序!当您单击箭头的次数足以使您的猫碰到窗户的另一侧时,它会再次弹出回到起点。

就是这样,我们结束了。做得好!

现在您可以在Raspberry Pi上使用Scratch

今天,您已经创建了一个程序,其中包含动画(当猫移动时),DIY电子设备(构建LED电路和控制)

全部,而无需编写任何代码。

如果您是作为父母或老师,有很多很棒的方法向孩子介绍编码,以及许多适合年轻人的出色的初学者硬件项目。任何使儿童能够自己动手做DIY电子产品和计算机的东西,都可以拓宽他们的思维方式,并为他们提供基础知识,以学习更多更好的东西。
责任编辑:wv

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 树莓派
    +关注

    关注

    122

    文章

    2069

    浏览量

    109709
  • scratch
    +关注

    关注

    0

    文章

    12

    浏览量

    5484
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    基于树莓派(RaspberryPi)构建高效实时监控系统

    及安装 ZeroNews Agent 在树莓派(Raspberry Pi)上下载并运行 ZeroNews。 第 2 步:树莓派上安装 Motion 监控 先在树莓
    的头像 发表于 09-22 15:14 859次阅读
    基于<b class='flag-5'>树莓</b>派(RaspberryPi)构建高效实时监控系统

    如何在树莓派上安装Ubuntu MATE ?

    ,而非GNOME。在本文中,我将介绍如何轻松地在树莓派上安装它。UbuntuMATE官方支持树莓派,因此每发布一个新版本,都会为树莓派发布一个镜像。该镜像可刷
    的头像 发表于 08-12 18:56 2948次阅读
    如何在<b class='flag-5'>树莓</b><b class='flag-5'>派上</b>安装Ubuntu MATE ?

    技能+1!如何在树莓派上使用C++控制GPIO?

    在使用树莓派时,你会发现Python和Scratch是许多任务(包括GPIO编程)中最常用的编程语言。但你知道吗,你也可以使用C++进行GPIO编程,而且这样做还有不少好处。借助WiringPi
    的头像 发表于 08-06 15:33 3579次阅读
    技能+1!如何在<b class='flag-5'>树莓</b><b class='flag-5'>派上</b>使用C++控制GPIO?

    这个套件让树莓派5运行几乎所有YOLO模型!Conda 与 Ultralytics!

    如何在树莓派上设置YOLO计算机视觉?Conda与Ultralytics在本指南中,我们将学习如何使用Conda在树莓派上安装UltralyticsYOLO视觉套件。该套件将允许你运行
    的头像 发表于 07-31 11:51 3821次阅读
    这个套件让<b class='flag-5'>树莓</b>派5运行几乎所有YOLO模型!Conda 与 Ultralytics!

    初学者指南:树莓派上搭建虚拟环境!

    在这篇简明扼要的指南中,我们将探讨如何在树莓派上设置和使用虚拟环境(或称为Venv)——包括在终端和Thonny集成开发环境中。使用Bookworm操作系统或更高版本时,或在尝试安装Python
    的头像 发表于 07-27 13:24 636次阅读
    初学者指南:<b class='flag-5'>树莓</b><b class='flag-5'>派上</b>搭建虚拟环境!

    如何在树莓派上设置并使用VNC?远程访问完整指南!

    为什么要在树莓派上使用VNC?使用VNC与树莓派的主要优势在于其提供的灵活性。我们可以在“无头模式”(无物理显示器)下运行树莓派,同时仍能完全访问其图形用户界面(GUI)。这减少了对额
    的头像 发表于 07-26 20:42 5058次阅读
    如何在<b class='flag-5'>树莓</b><b class='flag-5'>派上</b>设置并使用VNC?远程访问完整指南!

    C++ 与 Python:树莓派上哪种语言更优?

    Python是树莓派上的首选编程语言,我们的大部分教程都使用它。然而,C++在物联网项目中同样广受欢迎且功能强大。那么,在树莓派项目中选择哪种语言更合适呢?Python因其简洁性、丰富的库和资源而被
    的头像 发表于 07-24 15:32 645次阅读
    C++ 与 Python:<b class='flag-5'>树莓</b><b class='flag-5'>派上</b>哪种语言更优?

    树莓派防火墙完整指南:如何在局域网中配置 IPFire ?

    并控制站和出站网络流量的屏障。这正是我们的将树莓派设置为防火墙的完整指南详细阐述的内容。随着树莓派的普及和IPFire的强大功能,许多用户选择在树莓
    的头像 发表于 07-21 16:34 806次阅读
    <b class='flag-5'>树莓</b>派防火墙完整指南:如何在局域网中配置 IPFire ?

    完整教程:如何在树莓派上配置防火墙?

    连接。网络流量类型站流量、出站流量和转发流量是指防火墙规则可以控制和管理的不同网络流量类型。站流量站流量是指从外部来源发往树莓派的数据包,例如来自互联网或本地
    的头像 发表于 07-07 16:30 802次阅读
    完整教程:如何在<b class='flag-5'>树莓</b><b class='flag-5'>派上</b>配置防火墙?

    释放潜力:在树莓派上运行安卓系统实现多样化应用!

    为什么要在树莓派上运行安卓系统?安卓系统以其庞大的应用生态系统和用户友好的界面而闻名,它能够将树莓派转变为功能强大的设备,能够处理从媒体消费到轻量级计算和物联网应用等各种任务。优势高度定制化:
    的头像 发表于 07-05 08:33 912次阅读
    释放潜力:在<b class='flag-5'>树莓</b><b class='flag-5'>派上</b>运行安卓系统实现多样化应用!

    如何在树莓派上安装并运行 Arduino 集成开发环境!

    ,我们将介绍如何在树莓派上安装并运行ArduinoIDE。所需物品要在树莓派上运行ArduinoIDE,你需要以下组件:配备适当电源的树莓
    的头像 发表于 07-01 17:41 4044次阅读
    如何在<b class='flag-5'>树莓</b><b class='flag-5'>派上</b>安装并运行 Arduino 集成开发环境!

    从初学到进阶:树莓派上最适合你的代码编辑器推荐!

    安装树莓派操作系统后,你就可以使用Python、Scratch、Java、C/C++等受Linux支持的多种编程语言进行编程了。其中,Python是树莓派上最受欢迎的编程语言。在
    的头像 发表于 05-15 16:20 791次阅读
    从初学到进阶:<b class='flag-5'>树莓</b><b class='flag-5'>派上</b>最适合你的代码编辑器推荐!

    树莓派上设置 DeepSeek R1:2025 年离线人工智能的未来

    概述《在树莓派上设置DeepSeekR1:2025年离线人工智能的未来》是一份前瞻性技术指南,聚焦中国AI初创公司DeepSeek于2023年底推出的开源模型DeepSeekR1。该模型旨在通过提供
    的头像 发表于 03-25 09:20 1079次阅读
    在<b class='flag-5'>树莓</b><b class='flag-5'>派上</b>设置 DeepSeek R1:2025 年离线人工智能的未来

    不要等Manus的邀请码了,树莓派上也能实现 AI Agent !

    本文讨论了Manus、OpenManus、CrewAI这三款AIAgent产品的特点、适用场景,并重点介绍了如何用CrewAI在树莓派上运行多LLM代理,还探讨了AIAgent发展带来的思考。关键
    的头像 发表于 03-25 09:19 1318次阅读
    不要等Manus的邀请码了,<b class='flag-5'>树莓</b><b class='flag-5'>派上</b>也能实现 AI Agent !

    人脸识别指南:如何在树莓派上安装和设置 Dlib

    学习如何在树莓派上安装Dlib并配置人脸识别功能,为您的AI项目奠定基础。在树莓派上安装Dlib的详细步骤要为树莓派安装Dlib并确保人脸识
    的头像 发表于 03-24 17:31 1251次阅读
    人脸识别指南:如何在<b class='flag-5'>树莓</b><b class='flag-5'>派上</b>安装和设置 Dlib