3

我正在使用 Scratch 1.4 为儿童准备课程。

该课程是关于控制真实设备(自建交通信号灯、带有电机、传感器等的改装玩具)

为了连接硬件,我使用远程传感器协议和 RS232 接口(3 输入/3 输出,全数字)的控制线。

一切都很好,除了小不便:孩子们必须手动执行许多步骤:

  1. 先从头开始,
  2. 加载启用远程传感器协议并定义变量的模板项目
  3. 接受警告消息通知,远程传感器协议已启用
  4. 启动 RSP-RS232 代理

我想通过从我的工具开始从头开始简化它,让 Scratch 通过命令行参数执行步骤 2,3,最后连接到 RSP 端口。

可能吗?

如果不是,对于没有 Smalltalk 经验(但其他语言如 C++)的人来说,在 Smalltalk 中实现这些参数是否困难?

谢谢!

4

1 回答 1

4

好的,经过一些阅读,我可以回答我的问题。

坏消息是:在将项目文件作为启动项目传递的 Scratch 中显然没有命令行参数。

然而好消息是,根据自己的需要改变划痕并不难。有几个项目这样做,例如:

从头开始 4 Arduino

暂存GPIO

如何做到这一点在这里描述: http ://wiki.scratch.mit.edu/wiki/Scratch_1.4_Source_Code

刮擦和吱吱声

...

首先,首先将 Scratch 应用程序(“Scratch.exe”或“Scratch.app”)从您的正常 Scratch 文件夹复制到 Scratch 源代码文件夹。(Scratch 应用程序实际上只是一个 Squeak 虚拟机,因此任何最近的 Squeak 虚拟机也应该可以工作。)另外,如果需要,将 Squeak 源代码文件的副本放在该文件夹中(此文件包含在以1.4 源码发布)。最后,将文件“ScratchSourceCode1.4.image”拖放到 Scratch 应用程序上。Squeak 编程环境将启动,允许您查看和修改 Scratch 源代码。

我能够禁用通知远程传感器协议已启用的对话框,并在默认情况下在启动时启用远程传感器。花了我2个小时。

PS:对于那些感兴趣的人,我在这里主持我的项目:https ://github.com/vheinitz/Qratzfest 正如我发现的那样,我的想法并不新鲜(大约 3 年前我已经寻找过这种可能性,但是没什么)。不同的是,代理工具适用于 PC,旨在使用任何硬件,而不仅仅是专门用于固件的 Arduino 或 PI。目前仅支持串行接口的控制引脚并链接到固定名称。很快它将提供将任何引脚映射到任何 Scratch 变量的可能性。

于 2014-08-17T23:03:01.040 回答