个人理财 电子工程:如何编程PBASIC子程序 - 傻瓜

电子工程:如何编程PBASIC子程序 - 傻瓜

视频: 【ライブ配信】予選Bシフト後半4G『第42回 JLBCクイーンズオープン プリンスカップ』 2025

视频: 【ライブ配信】予選Bシフト後半4G『第42回 JLBCクイーンズオープン プリンスカップ』 2025
Anonim

PBASIC子程序在使用BASIC Stamp处理器的电子项目中是非常有用的。一个 子程序 是程序的一部分,可以从程序的任何位置调用。当子程序结束时,程序的控制跳回到调用子程序的位置。

子例程是有用的,因为它们可以让程序的主循环中的很长一段程序分开,这简化了主程序循环,使其更容易理解。子程序的另一个好处是可以使你的程序更小。

<! --1 - >

假设你正在编写一个需要多次执行复杂计算的程序。如果将复杂的计算放在子程序中,可以从程序中的几个地方调用子程序。这样,你只写一次执行复杂计算的代码。

要创建和使用子程序,您需要使用两个PBASIC命令。第一个是GOSUB,它调用子程序。您通常在程序的主循环中使用GOSUB命令,无论何时调用子例程。第二个命令是RETURN,它总是子例程中的最后一个命令。

<! - 2 - >

要创建一个子程序,您可以从一个标签开始,并以一个RETURN命令结束。在他们之间,当你调用子程序时,你可以写任何你想要执行的命令。

下面是一个子程序的例子,它生成一个介于1到999之间的随机数,并保存在一个名为Rnd的变量中:

GetRandom:RANDOM Rnd Rnd = Rnd // 999 + 1 RETURN

调用这个子程序,你可以简单地使用这样的GOSUB命令:

GOSUB GetRandom

这个GOSUB命令把控制权交给GetRandom标签。然后,当GetRandom子程序到达其RETURN命令时,控制会立即跳回到GOSUB命令之后的命令。

这是一个完整的程序,它使用一个子程序来获得1到1,000之间的随机数,并使用随机数使引脚0上的LED以随机间隔闪烁。你可以在任何一个基本印章电路上运行这个程序,这个印刷电路在引脚0上有一个LED。

'LED Blinker程序'Doug Lowe'2011年7月10日“这个程序随机闪烁引脚0上的LED'。{$ STAMP BS2} '{$ PBASIC 2.5} Rnd VAR Word Led1 PIN 0 DO GOSUB GetRandom HIGH Led1 PAUSE Rnd LOW Led1 PAUSE 100 LOOP GetRandom:RANDOM Rnd Rnd = Rnd // 999 + 1 RETURN

当使用子程序时,你可以防止你的程序意外“落入”你的子程序,并在你不打算执行时执行它。例如,假设程序清单3-5中的程序使用FOR-NEXT循环而不是DO循环,因为您只想使LED闪烁100次。下面是一个 不是 程序的例子:

FOR Counter = 1 TO 100 GOSUB GetRandom HIGH Led1 PAUSE Rnd LOW Led1 PAUSE 100 NEXT GetRandom:RANDOM Rnd Rnd = Rnd // 999 + 1 RETURN你知道为什么吗?在FOR-NEXT循环使LED闪烁100次之后,程序将在FOR-NEXT循环(子程序)之后继续执行下一个命令!为防止这种情况发生,可以使用另一个PBASIC命令END,它只是告诉BASIC Stamp你已经到达了程序的末尾,所以应该停止执行命令。你可以在NEXT命令后加上END命令,如下所示:

FOR Counter = 1 TO 100 GOSUB GetRandom HIGH Led1 PAUSE Rnd LOW Led1 PAUSE 100 NEXT END GetRandom:RANDOM Rnd Rnd = Rnd // 999 + 1 RETURN >然后,程序将在FOR-NEXT循环结束后停止。

电子工程:如何编程PBASIC子程序 - 傻瓜

编辑的选择

在QuickBooks Online中使用批发帐单 - 虚拟

在QuickBooks Online中使用批发帐单 - 虚拟

QuickBooks Online为会计专业人员提供免费程序。您可以注册批发价格计划,也可以免费使用QBOA。如果你选择这样做(这是一个不错的选择!),你将需要知道如何管理的事情。从您的批发帐单订阅中删除客户有时候,事情并不是这样...

基于零基础的预算与QuickBooks 2012 - 傻瓜

基于零基础的预算与QuickBooks 2012 - 傻瓜

零基预算是一个非常有用和常用的预算策略在使用QuickBooks 2012之前,您应该先了解一下。基于零的预算与顶级预算相反。零基预算从下到上工作。零基预算始于个人收入,费用,资产,负债和所有者权益账户。它检查一个特定的...

在Sage Timeslips中10个有用的键盘快捷键 - 虚拟键盘

在Sage Timeslips中10个有用的键盘快捷键 - 虚拟键盘

键盘快捷键可以是Sage Timeslips 。启动或保存一张单据,将昨天,今天或明天的日期插入日期字段,并用一个或两个按键打开和关闭定时器。以下是十大最爱。按下它做什么Ctrl + N开始一个新的投票,而工作在...

编辑的选择

可以在Photoshop Elements 11中的任意形状图层上绘制多个图形 - 虚拟模型

可以在Photoshop Elements 11中的任意形状图层上绘制多个图形 - 虚拟模型

Photoshop Elements 11中创建的任何形状图层上的图形。您可以按照与选择相同的方式添加,减去,排除重叠和相交形状。请遵循以下步骤:创建第一个形状后,在工具选项:添加到形状区域中选择一个状态按钮:...

使用读卡器将图像下载到Mac上 - 傻瓜

使用读卡器将图像下载到Mac上 - 傻瓜

您的相机可能有一个USB端口,电缆,您可以使用下载您的图像。这种方法使用相机电池电力,也相当缓慢。如果您使用读卡器,则会更快地将图像存入计算机。如果您下载了大量的图像,请考虑购买FireWire读卡器; ...

在Photoshop Elements 10中创建形状图层后,在Photoshop Elements 10中绘制多个图形 - 虚拟形状

在Photoshop Elements 10中创建形状图层后,在Photoshop Elements 10中绘制多个图形 - 虚拟形状

可以在该图层上绘制其他形状。您可以按照与选择相同的方式添加,减去,重叠和相交形状。请记住,当您在元素中创建一个形状时,您正在创建一个基于矢量的元素。向量在数学上描述形状。 ...

编辑的选择

在您的IOS应用程序中添加模态视图 - 在iPhone和iPad上虚拟视图

在您的IOS应用程序中添加模态视图 - 在iPhone和iPad上虚拟视图

对于那些希望用户(或用户想要)在应用程序流之外执行某些操作的情况非常适用。而不是使用带有后退按钮的导航控制器,而是显示一个模式视图,其中的控件允许用户选择一个动作或...

Android应用程序开发:你的Twitter应用程序的文件 - 傻瓜

Android应用程序开发:你的Twitter应用程序的文件 - 傻瓜

,这个Android Studio项目包含大约100个文件和大约170个不同的文件夹。要制作Android Twitter应用程序,您需要专注于该项目的MainActivity。 java文件。但其他一些文件需要注意。 Twitter4J API jar文件Android没有内置的通信支持...