树莓派多线程运行c语言,树莓派+古德微“多线程”硬件编程二例

本文介绍了如何利用树莓派和古德微扩展板,通过多线程编程控制LED灯阵实现不同频率闪烁,并结合超声波和红外线传感器构建“双向”警报器。实验详细阐述了连接硬件、编程实现并发执行的步骤,适合初学者入门学习。
摘要由CSDN通过智能技术生成

牟晓东

我们在使用电脑时,可以在播放音乐的同时进行文字编辑和PPT制作,其实这种同时运行多个软件的能力,就是系统的“多线程”——“并发执行”运行机制。它可以直接理解为“同时”、“并行”,多个线程任务同时在运行但相互间几乎没有干扰。几乎所有的编程语言都提供有“多线程”编程方式,比如在Python中是通过threading模块来创建线程和调用方法来实现多线程的,但对于很多初学者(比如中学生)而言这是有一定难度的。如果用树莓派+古德微的“积木”图形化硬件编程的话,理解和使用起来就显得容易得多,而且可以解决许多单纯使用单线程较难解决的问题,在此以实现“不同频”闪烁LED灯阵和“双向”警报器为例。

一、 “不同频”闪烁LED灯阵

1. 实验目的及器材连接

通过多线程运行方式控制四支LED灯同时闪烁,但各自的频率不同:第一支亮0.1秒、再灭0.1秒,第二支亮0.2秒、再灭0.2秒,第三支亮0.5秒、再灭0.5秒,第四支亮1秒、再灭1秒。

先将古德微扩展板正确插入树莓派(注意四周均匀小心用力),再将红绿黄蓝四支异色LED灯分别插入到5号、6号、12号和16号插孔(注意LED灯的长脚为正极、短脚为负极),最后给树莓派通电启动系统。

2. 实验步骤

(1)在浏览器中访问古德微机器人平台(http://www.gdwrobot.cn),登录后点击“设备控制”进入“积木”编程界面并进行“连接设备”操作。

建立四个子线程,名称分别为LED5、LED6、LED12和LED16(注意既不能使用中文命名也区分英文大小写),分别对应四个同名的子函数,每个子函数分别控制对应的LED灯进行亮灭交替——通过设置不同的等待时间来实现不同的闪烁频率。各自的亮、灭等待时间分别为0.1秒、0.2秒、0.5

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值