查看: 21602|回复: 23

天问Block扩展库制作详解

[复制链接]

41

主题

167

帖子

3035

积分

版主

Rank: 7Rank: 7Rank: 7

积分
3035
发表于 2021-1-16 17:56:16 | 显示全部楼层 |阅读模式
本帖最后由 zly188 于 2022-3-11 11:17 编辑

天问Block图形化编程非常方便,只要鼠标拖动图形指令就可以完成程序设计。图形化模块自动生成特定的C语言代码,非常方便,编程开发者梦寐以求制作属于自己的用户库。

一个库在用户界面上由这几部分组成:①是库的中文名称;②是指令图形块;③是驱动所需的头文件;④是图形块生成的代码。

库文件编程界面

库文件编程界面

其中,①②是必须的,有些库不需要自己制作头文件③就不一定有,有些图形块只是注释型的不需要生成代码也就不一定有④。

LED扩展案例
下面就以STC8中制作my_led库为例,讲解库怎么制作?图形块怎么生成。
库的添加和库开发工具,通过编程界面左下角的“添加扩展”按钮进入的。点击“添加扩展“按钮后,出现下面界面:
库文件2.png
①是库封面;②库项目链接;③库的中文名称和介绍;

在”扩展“界面,顶部工具栏有“官方库”、“用户库”、“新建库”。
“官方库”就是通过官方验证发布的库,编程时可以直接加载使用。
“用户库”是用户自己编写的私有库,上传加载使用。
“新建库”就是库开发工具。
上图所示:每个库封面都有一个封面图,项目链接,中文名称和介绍。其中封面图分辨率最好设置成:262*150。

因此新建库前要规划好,准备好以下文件和内容:
1.分辨率为262*150的封面图(格式jpg\png)一张(如没有图片,将用内部默认图片)。
2.规划好库的中文名称,英文名称,库的介绍文字。
4.规划好库里要使用的指令图形块名称,图形块名称不能与官方相同,前缀最好加上STC8_my_XXX(芯片名称+my+XXX)。

根据以上要求:规划库的中文名称为“我的LED”,英文名称为“myled_lib”,介绍文字“我的LED使用”。图形块先制作一个“打开LED”(模块名称STC8_my_ledon),程序模块内容:“打开LED”,C语言代码先不生成。
适用芯片:STC8。
LED.png
库封面图片文件

模块名称及各区域介绍:
image-20210201193516878.png

点击“新建库”,可以看到生成了一个默认模版,开始我们的制作旅程:
默认模版.png
1.先修改模块名称、外观、连接方式、颜色,删除预处理代码和执行代码。
第一步.png
本案例仅修改了模块名称,可自行按需修改颜色。需要制作其他类型的图形块时,请尝试修改外观和连接方式。
2.更改输入节点的方式:由于不需要值输入框,所以删除了值输入后从左侧列表拖入假输入模块至编辑区,然后输入文本“打开LED”,如图所示。
更改输入节点.png

3.给输入节点,添加文本“打开LED”,如图所示。
更改文本.png

4.现在点击工具栏“生成库”按钮,输入中文名称、英文名称、版本号,填写介绍,选择颜色和主板,最后上传封面图片。
我的LED生成库.png
5. 在上图中第一步XML文件编辑中点击“编辑”,查看XML文件是否正确。
LED第一次编辑XML.png
首先查看模块名称是否正确,图形块的数量是否正确(如果创建了多个图形块,目前只有一个),如果不正确,点击“导入编辑区代码”,重新生成XML,检查后点击保存。

6. 导出扩展包,扩展包以英文名称命名“myled_lib.zip”,导出成功会自动关闭“生成库”对话框,保持库开发工具窗口打开。在“天问Block 2022”的添加扩展页面,找到用户库,点击本地导入,导入刚制作完成的扩展包。
用户库本地导入.png LED第一次导入.png
现在可以看到C代码是没有生成的。接下去我们需要生成C代码。

7. 回到库开发工具中,生成执行代码,如下图所示:
LED生成执行代码.png
在工具栏中点击复制,创建“关闭LED”图形块,修改名称为“STC8_my_ledoff”,修改文本,修改执行代码为“P4_1 = 0;”。
可以尝试导出扩展包到软件中使用,修改XML文件参照第4步。

8. 生成预处理代码,如下图所示:
LED生成预处理代码.png
拖入预处理代码图形块,选择“初始化”,在文本框中输入“P4M1&=~0x024M0|=0x02;//推挽输出”。
PS:如果需要复制本图形块到“关闭LED”中,可以如上图所示选中后使用键盘快捷键Ctrl+C进行复制,然后进入“关闭LED”界面,使用键盘快捷键Ctrl+V进行进行粘贴。

最后按照第4步,重新导出扩展包,进行最终测试。
LED第二次编辑XML.png
重新编辑XML
测试正常使用后,我的LED扩展就完成了。


回复

使用道具 举报

18

主题

61

帖子

410

积分

中级会员

Rank: 3Rank: 3

积分
410
发表于 2021-1-17 00:34:30 | 显示全部楼层
牛b
回复

使用道具 举报

18

主题

61

帖子

410

积分

中级会员

Rank: 3Rank: 3

积分
410
发表于 2021-1-17 00:35:55 | 显示全部楼层
睡觉明天在研究。
回复

使用道具 举报

0

主题

1

帖子

32

积分

注册会员

Rank: 2

积分
32
发表于 2021-1-20 21:20:02 | 显示全部楼层
非常期待后边的作品
回复

使用道具 举报

0

主题

1

帖子

72

积分

注册会员

Rank: 2

积分
72
发表于 2021-2-13 11:17:03 | 显示全部楼层
:lol:lol:lol:lol
回复

使用道具 举报

18

主题

61

帖子

410

积分

中级会员

Rank: 3Rank: 3

积分
410
发表于 2021-4-25 09:30:48 | 显示全部楼层
沉了,沉了。刷一下免得找不到了。
回复

使用道具 举报

0

主题

3

帖子

18

积分

注册会员

Rank: 2

积分
18
发表于 2021-4-27 11:38:37 | 显示全部楼层
:D:D:D:D
回复

使用道具 举报

1

主题

6

帖子

19

积分

注册会员

Rank: 2

积分
19
发表于 2021-7-26 16:47:38 | 显示全部楼层
这个网站真的很有用
回复

使用道具 举报

0

主题

6

帖子

76

积分

注册会员

Rank: 2

积分
76
发表于 2021-9-18 18:46:39 | 显示全部楼层
优秀
回复

使用道具 举报

41

主题

167

帖子

3035

积分

版主

Rank: 7Rank: 7Rank: 7

积分
3035
 楼主| 发表于 2021-11-4 08:05:41 | 显示全部楼层
到官网下载最新版,开发库更方便了。http://twen51.com/
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|好好搭搭在线 ( © 好好搭搭在线 浙ICP备19030393号-1 )

GMT+8, 2024-3-28 18:12 , Processed in 2.107072 second(s), 26 queries .

Powered by Discuz!

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表