当前位置: 首页 > 软件库 > 其他开源 > 开源硬件 >

Buddy++

一款简洁而高效的Arduino开发工具
授权协议 GPL
开发语言 Java C/C++ JavaScript HTML/CSS
所属分类 其他开源、 开源硬件
软件类型 开源软件
地区 国产
投 递 者 戚飞
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

版本更新至:v 1.1.1 beta

  • 更换核心代码编辑器,界面更加友好,支持可视化主题更换,文本样式自定义。
  • 优化编译和烧录功能,提高稳定性和效率。
  • 加入右侧信息栏,提供更友好的控制台信息查阅和参考文档查阅功能。

项目官方主页:

http://buddy.studio/buddypp

官方下载地址:

https://github.com/buddystudio/BuddyPP/releases

网盘下载地址:

https://pan.baidu.com/s/16bKPpIaDctCr0o-DEqdbpA

用户手册下载:

Buddy++软件使用指南 V1.1(简体中文版)下载

GitHub项目主页:

https://github.com/buddystudio/BuddyPP

欢迎大家来邮交流:

buddystudio@foxmail.com

简洁的界面

Buddy++拥有非常简洁的界面,我们把常用的功能设计为图形化的一级菜单,从而简化了官方IDE的多级文本菜单。界面整体分为四大部分,一是上方的基础功能菜单、二是左侧的扩展功能菜单、三是位于中央的代码编辑器、四是位于右侧的可扩展信息栏。

人性化的编辑器

我们重新设计了代码编辑器,Buddy++实现了完美的中文支持及更优秀的语法高亮功能,编辑器支持包括关键词、运算符号、数据类型、函数名、注释等语法元素的高亮提醒,并且完美支持Arduino、C/C++等语言的语法,有完善的行数提示功能,代码块收缩功能,语法提示与补全功能等。

简单的开发流程

使用Buddy++进行Arduino应用开发流程十分简单,其主要有三个步骤,一是编写程序,二是编译,三是烧录。在把编译后的目标程序烧录到主控板之前,我们需要先使用USB数据线连接开发板与计算机。

计算机连接主控板后点击“预设置”按钮,我们将要通过下来选项选择对应的Arduino主控板型号和通讯端口编号,选择无误后点击确定即可。完成预设置后Buddy++主界面的右上方将会显示当前连接主控板的型号和当前通讯串口的序号。需要注意的是,如果主控板型号和通讯串口序号选择错误将会导致程序编译失败和烧录失败。

开发者在主界面代码编辑区进行编码工作,有经验的开发者可以直接以手动编码,入门开发者可以选择使用交互的方式进行编码。

编译完成后就可以点击烧录,当然也可以一键编译与烧录,点击Buddy++界面上方“烧录”按钮即可。需要提示一下,烧录的过程中开发板中的TX、RX指示灯会不停闪动。

交互式编程

Buddy++与Arduino官方IDE相比最大的特色是加入了交互式编程的机制,以往我们使用Arduino官方的IDE进行开发时使用的只能使用简陋的编辑器,语法高亮不完善,也没有代码提示,这对于零基础入门的开发者来说十分头疼,我们在Buddy++中加入了人性化的交互式编程机制,开发者可以通过窗口设置的方式生成模板代码,无需牢记枯燥的各式关键词、数据类型和语法结构。

为了降低初学者的门开,Buddy++为开发者提供了变量定义与初始化辅助工具,开发者可以通过下拉菜单的方式选择指定的数据类型,也可以通过工具对变量进行赋值。这样初学者就可以在未牢记数据类型和变量应用语法的前提下开始编码。

If分支结构案例

分支结构是程序设计基本思路三个基础流程中的重要一环,Buddy++通过辅助工具协助初学者使用基于IF语句的分支结构编程。

使用时开发者点击左侧工具栏纵向第二个图样为“IF”简写的图标即可弹出“If条件判断”工具,对话框中我们可以通过手动输入即将进行条件判断的变量或数值,此外我们也可以通过下来菜单选择在代码中已经声明定义的变量名称。选择好条件判断的变量后,我们需要通过中间下拉菜单选择两个变量彼此的条件判断逻辑关系,其中包括有等于、大于、大于等于、小于、小于等于五种。

当然以上仅仅列举了一个案例,Buddy++还支持丰富的交互式代码生成助手,由于篇幅问题暂不作详细介绍,详情可参看软件使用手册。


丰富的例程

Buddy++为入门开发者提供了丰富的基础案例,其中包括针对面包板电路的基础案例,也包含以模块化为基础的开发案例。

扩展工具

为方便初学者能较高效地使用扩展模块Buddy++特意提供了“扩展工具”的功能,开发者可以使用“所见即所得”的方式开发基于扩展模块的应用,例如是LED阵列显示、蜂鸣器谱曲、全彩彩灯的编程、数码管的显示、LCD屏幕的显示等等,这些扩展工具也将以插件的形式呈现,开发者可以根据相关标准定制开发指定功能的扩展插件。

Buddy++配套一个8×8 LED点阵图案生成的插件,开发者可以通过可见即所得的方式编辑LED阵列的显示图案。开发折点击界面中的原点进行图案编辑,亮红色的原点为阵列中被点亮的LED灯,编辑完成后点击“生成”按钮,插件就会在代码区指定的位置中插入代表编辑图案的数组。

Buddy++始自开发至今已经持续3年,目前已经处于公开测试阶段,接下来我们将陆续发布软件的使用教程。项目同时也标定位开源软件项目,我们已经把项目代码上传到Github,感兴趣的开发者可以关注该项目,我们诚邀广大Arduino开发者参与公开测试活动,如有疑惑或建议,大家可以在项目主页尽情畅谈。与此同时,我们也希望找到志同道合的开发者与我们一起继续开发,为Buddy++增添更具活力的功能,感谢大家对本项目的持续关注。

  • 转载请注明出处: https://www.cnblogs.com/Ethan-Code/p/16651217.html Buddy分配器 前面提到,Linux用内存分页的形式将物理内存组织起来,相比分段的优点就是分页的颗粒度更小,可以减少外部内存碎片,但是却不能完全消除内存碎片。 内存分页机制把4K为单位的物理内存页框组织起来,使其在虚拟内存上连续。但是当需要申请连续物理内存页框的时候,随着进程的

  • 源码基于:Linux5.4 0. 前言 在 zone初始化一文中简单剖析了 zone 的初始化流程,也是继 memblock初始化 和 SPARSEMEM初始化 之后有一个内存管理层,而zone 这一层管理层中,所有的物理内存都会被添加到zone 中的成员变量 free_area 数组管理,而它就是buddy 系统管理的核心数据结构。 buddy 系统是操作系统中常用的一种动态存储管理方法,在用户

 相关资料
  • 我的理想过程将是: 卡拉夫在后台运行 部署我的所有包和依赖项(脚本) 让karaf监视我的maven local repo以查看我的包中的任何更改 打包并安装单个工件,然后让karaf重新加载它们 目前我使用karaf assembly进行生产,但这不允许我观看本地maven repo,因此每个构建周期都需要停止并组装完整的karaf发行版,然后再次运行它,这既慢又低效。 附注。这个过程可以使用G

  • 本文向大家介绍arduino 而,包括了arduino 而的使用技巧和注意事项,需要的朋友参考一下 示例 一个while循环将评估其条件,如果true,它会执行里面的代码并重新开始。也就是说,只要条件求值为true,while循环就会反复执行。 此循环将执行100次,每次将1加到变量中num: 上面的循环等效于一个for循环: 此循环将永远执行: 上面的循环等效于一个for循环:        

  • 我在发现测试时遇到了visual studio 2015 for Web的问题。我写的很简单。Net核心应用,添加了带测试的项目,我的project.json是这样的: 然后在我的测试项目中,我写了第一个测试: 当我生成解决方案时,未发现我的测试,并且在测试输出窗口中收到以下消息: 有趣的是,甚至没有6.0.0.0版本的牛顿软件. 我尝试了以下方法: 将测试体系结构更改为 x64 以管理员身份启动

  • 本文向大家介绍10个简化PHP开发的工具,包括了10个简化PHP开发的工具的使用技巧和注意事项,需要的朋友参考一下 本文介绍了可以帮助简化 PHP 开发的10个项目,包括框架,类库,工具,代码。 1.CakePHP Development Framework CakePHP 是一个 PHP 的快速开发框架。它提供了可扩展的架构,使用了常见的 MVC 和 ORM 模式。它遵循约定优于配置理念。 2.

  • 本文向大家介绍jQuery实现简洁的导航菜单效果,包括了jQuery实现简洁的导航菜单效果的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了JavaScript实现的伸展收缩型菜单代码。分享给大家供大家参考。具体如下: 运行效果截图如下: 鼠标悬浮时菜单项向上移动成蓝底白字,点击之后底部会有蓝条表示当前选中项。 页面代码,菜单的每一项都是一个 div ,其中包括一个 ul 用来放置显示文字等

  • 本文向大家介绍jQuery制作简洁的图片轮播效果,包括了jQuery制作简洁的图片轮播效果的使用技巧和注意事项,需要的朋友参考一下 演示图: 核心代码: 以上所述就是本文的全部内容了,希望大家能够喜欢。

  • 我目前有一个正在工作的谷歌脚本,它在谷歌游泳池化学监测表中读取仪表板上的值。人们将提交一个表单,如果这些数字大于或小于一个设定的数字,它将发送一封带有特定消息的电子邮件。 这工作很好,但如果有多个数字是关闭的,我会收到多个电子邮件,这是恼人的。 然后使用email-mailapp.sendeMail(emailAddress,subject,Message1+Message2...); 但我觉得这

  • 本文向大家介绍推荐 21 款优秀的高性能 Node.js 开发框架,包括了推荐 21 款优秀的高性能 Node.js 开发框架的使用技巧和注意事项,需要的朋友参考一下 Node.js 框架可以帮助你开发出更友好的 web 应用。Node.js 框架的许多特性和功能也能开发出大型的 web 应用。下面我们来介绍 21 款最好的 Node.js 框架,帮助开发者快速开发 web 应用。 Express