- 博客(25)
- 收藏
- 关注
原创 Bipes项目二次开发/硬件编程-设备连接(七)
本文介绍了Bipes项目中设备通过WebSocket连接的二次开发过程。首先需要在设置中选择硬件编程模式,然后通过WiFi图标选择网络连接方式。相比原始项目,本次改进允许用户直接输入IP前三段和端口号进行设备扫描,连接成功后显示可用IP地址。文章提供了详细的代码改动说明,包括bipes-controller.js中添加搜索设备事件,以及search-device.js中实现设备扫描、选择和确认功能的核心逻辑。该功能优化了设备连接流程,提升了用户体验。
2025-12-24 16:23:40
277
原创 Bipes项目二次开发/海龟编程(六)
本文介绍了Bipes项目中新增的海龟编程功能开发过程。通过配置Skulpt.js实现Python海龟绘图功能,新增了运行按钮和画布输出区域。文章详细展示了前端代码实现,包括静态页面结构、JS控制逻辑和拖拽功能实现。最终效果图显示了一个600x600像素的画布界面。作者指出当前项目存在功能冲突问题,计划未来优化模块化显示,并考虑增加海龟编程的示例案例。全文以技术实现为主,重点介绍了功能集成和界面开发的关键代码片段。
2025-12-16 17:44:36
165
原创 Bipes项目二次开发/设置功能-1(五)
本文介绍了Bipes项目的编程模式设置功能开发,主要包含三个编程模式:硬件编程、离线编程和海龟编程。通过HTML构建了设置界面,使用JavaScript实现了设置状态的保存和加载功能,将用户选择的编程模式存储在本地缓存中。硬件编程保留原有功能,离线编程和海龟编程则更侧重编程学习功能。该设置功能为后续的定制开发和界面调整提供了基础框架。
2025-11-28 17:03:18
300
原创 Bipes项目二次开发/web-python(四)
本文介绍了如何在网页中实现Python代码运行功能。通过使用Skulpt.js插件,开发者可以在前端环境中执行Python代码,无需连接硬件设备。文章详细说明了Skulpt的安装配置方法、事件通信机制以及代码执行流程。虽然这种纯前端方案在功能上有一定局限性,主要适用于编程语法学习等场景,但为后续添加海龟绘图等功能奠定了基础。相比原Bipes项目需要连接硬件才能运行Python的特点,这种网页端解决方案提供了更便捷的学习体验。
2025-11-19 08:41:15
418
原创 Bipes项目二次开发/终端预览(三)
本文介绍了Bipes项目终端预览功能的二次开发改进。主要内容包括: 将原有终端功能改进为弹框形式,支持拉伸和拖拽操作 使用xterm.js插件实现终端预览功能,保留原插件版本但支持升级 详细展示了HTML结构和JS实现代码: 控制台界面包含标题栏和终端内容区域 实现了控制台的显示/隐藏切换 添加了8个方向的拉伸手柄 实现了完整的拖拽移动和大小调整功能 该功能改进为未来接入web-python打下了基础,提升了用户体验。
2025-11-13 08:48:14
447
原创 Bipes项目二次开发/代码预览(二)
本文介绍了Bipes项目中代码预览功能的二次开发实现。通过使用CodeMirror插件,实现了Python代码的实时预览功能,包括语法高亮、行号显示和只读模式。文章详细展示了HTML资源引用方式、页面初始化结构以及JavaScript组件的实现逻辑,重点说明了如何通过定时器监听积木区变化并自动更新预览内容。整个功能实现简洁高效,核心难点在于CodeMirror插件的正确使用和操作逻辑的合理构建。
2025-11-06 17:56:44
380
原创 Bipes项目二次开发(一)
摘要:本文介绍了对开源项目Bipes的二次开发经验,作者基于原BIPES项目进行了功能更新和优化,包括注释暂时未明确用途的功能模块,并计划逐步发布开发文章。项目已开源在GitHub上,作者分享了项目手册查阅、功能更新跟踪和开发思路,旨在探索图形化编程和人工智能在教育领域的应用。文章最后提到将不定期更新项目进展,并开放二次开发定制服务,特别是面向少儿教育和AI教育方向的图形化编程解决方案。
2025-11-06 17:52:00
289
原创 Blockly-IO积木开发
Blockly-IO积木开发教程摘要 本教程介绍了如何开发Blockly-IO积木模块,主要包含以下内容: 构建积木需要修改blocks文件并创建io文件 提供了多种引脚类型定义:数字引脚(pin)、变量引脚(pinVar)、专业引脚(pinPro)、PWM引脚(pinPwm)和TC引脚(pinTc) 示例代码展示了五种积木类型的定义方式,包括io_pin、io_pinvar、io_pinpro、io_pinpwm和io_pintc 还包含了一个简单的电平状态选择积木(io_rate)定义 参考了Micro
2025-10-23 10:24:18
134
原创 Blockly字典积木开发
Blockly字典积木开发摘要 本教程介绍了如何为Blockly平台开发字典操作积木。主要包括以下内容: 开发步骤: 需要修改blocks文件 创建自定义dicts文件 在blocks文件中引入并导出dicts积木 积木功能: 实现了12种字典操作 包括获取键/值、增删改查、清空字典等 支持字典与JSON转换 技术要点: 基于Blockly核心API开发 通过JSON数组定义积木属性 每个积木明确定义输入输出类型 开发过程中参考了Mixly文件积木和Python字典操作文档,适合需要扩展Blockly功能的
2025-10-20 08:36:21
160
原创 Blockly文件积木开发
Blockly文件积木开发教程 本教程介绍了如何在Blockly中开发文件操作积木。主要内容包括: 创建文件积木模块,借鉴了Mixly的部分功能 通过JavaScript代码定义12种文件操作积木: 文件读写判断(file_is_writable) 获取文件名(file_get_name) 文件关闭(file_close) 目录列表(file_listdir) 获取当前目录(file_getcwd) 切换目录(file_chdir) 创建目录(file_mkdir) 删除文件/目录(file_remove)
2025-10-15 14:07:25
402
原创 Blockly串口积木开发
本文介绍了在Blockly中开发串口通信积木的方法。通过修改blocks文件和创建自定义的serial文件,实现了串口初始化、数据打印和发送等功能。代码示例展示了如何定义积木类型(如serial_init、serial_print等),包括配置串口参数(波特率、数据格式)、设置输入参数类型以及定义下拉选项。这些积木可用于构建可视化串口通信程序,支持多种数据格式输出和消息发送功能。开发过程中参考了Mixly和MicroPython的相关文档,为进一步扩展Blockly的串口功能提供了基础。
2025-10-13 08:52:01
396
原创 Blockly集合积木开发
本文介绍了如何在Blockly中开发集合积木。内容包括集合积木的基础概念(参考Python集合操作)、开发步骤(需修改blocks文件和创建set文件),以及提供了set文件的完整代码实现。该文件定义了多种集合操作积木,如求长度(set_len)、元素操作(set_pop)、集合运算(set_operate/update)、子集判断(set_sub)和类型转换(set_toset)等,每个积木都配置了相应的输入参数、输出类型和操作选项。开发难度适中,适合基础功能的扩展实现。
2025-10-11 08:47:26
228
原创 Blockly元组积木开发
本文介绍了Blockly元组积木的开发方法,主要包含元组积木的构建和实现。文章首先指出元组积木开发借鉴了Mixly,并参考了Python元组相关教程。接着详细说明了构建积木所需的文件修改(blocks和自定义tuple文件)及引入方式。核心部分展示了tuple文件的完整代码实现,包括多种元组操作积木的定义:如索引访问、切片、随机元素、长度计算、最大值/最小值/求和、元素查找、删除、连接等,每个积木都定义了类型、样式、输入输出等属性。最后提到了元组创建积木的特殊实现方式,包括使用mutator图标来自定义元素
2025-10-09 16:56:31
355
原创 button和el-form一起使用坑点
解析:原生button标签type默认值是submit,这导致和el-form一起使用时,会出现页面被刷新的现象。因此,我们在使用element-ui时,如果用到el-form组件,尽量使用el-button组件,而不使用原生button,如何要用button按钮,我们也可以通过修改type类型来解决。今天在开发项目过程中,发现贼邪乎的问题,当el-form组件和button一起使用,会导致页面刷新,具体原因请看下面解析。
2025-01-03 10:45:02
213
原创 Scracth二次开发记录源码
4,GUI:src/containers/blocks.jsx进行回调函数注册(componentDidMount)1,Vm:getInfo加入自定义积木,getPrimitives加入步骤4图1的名称。3,Vm:src/engine/runtime.js进行导入默认文件。2,Vm:src/engine/runtime.js进行变量注册。
2023-06-04 21:02:42
300
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅