一种图形化编程系统技术方案

技术编号:34040058 阅读:56 留言:0更新日期:2022-07-06 13:15
本发明专利技术公开了一种图形化编程系统,包括:上位机编程环境单元、工程文件操作模块、E

【技术实现步骤摘要】
一种图形化编程系统


[0001]本专利技术属于计算机
,具体涉及一种图形化编程系统。

技术介绍

[0002]经研究发现,目前大多数嵌入式底层开发都依赖C/C++作为开发语言。然而随着嵌入式开发需求的逐步变化,传统的C/C++无法满足某些需求复杂的嵌入式系统,所以引进Python语言进入嵌入式编程系统。由于Python是解释性语言,无法满足嵌入式系统的实时性要求,因此需要设计实现编译型嵌入式Python(以下简称E

Python)并将其融入图形化编程系统中。

技术实现思路

[0003]本专利技术的目的是通过以下技术方案实现的。
[0004]基于目前嵌入式系统对于智能化的需求以及图形化编程系统的便利性,本专利技术致力于设计并实现以Python作为底层编程语言的图形化嵌入式编程系统。
[0005]根据本专利技术的一个方面,提供了一种图形化编程系统,包括:
[0006]上位机编程环境单元、工程文件操作模块、E

Python翻译模块、源代码编译模块、串口更新模块;其中,工程文件操作模块将图形化工程文件输入或者输出所述上位机编程环境单元,所述上位机编程环境单元对所述图形化工程文件编程后输出Python源码工程文件,所述E

Python翻译模块将所述Python源码工程文件翻译为C/C++源码工程文件,再由所述源代码编译模块转换为可执行代码,最后经过所述串口更新模块输出给下位机终端设备。
[0007]进一步地,进一步包括:文件导出模块,用于将所述Python源码工程文件导出为标准工程文件。
[0008]进一步地,所述上位机编程环境单元包括图形化编程环境子单元、环境切换模块,代码编程环境子单元,所述环境切换模块用于在图形化编程环境子单元和代码编程环境子单元之间切换编程模式。
[0009]进一步地,所述图形化编程环境子单元包括图标代码库、图标配置模块、控件操作模块、硬件配置模块、源代码生成模块、第一信息输出模块;代码编程环境子单元包括代码编辑模块、文本操作模块、图形代码对照模块、第二信息输出模块。
[0010]进一步地,所述图形化编程环境子单元实现图形化程序的开发,通过拖拽图标控件、连接控件、和/或配置控件操作以实现图形化编程;代码编程环境子单元实现程序的二次编程,在图形化编程生成的源码基础上采用编写文本代码行的形式进行二次编程。
[0011]进一步地,所述系统使用窗体作为前端界面载体,通过新建项目工程或打开已有工程文件来启动主窗体,采用主窗体和子窗体相结合的设计:主窗体由四个板块组成,分别为图标控件区、图形化编程区、代码显示区、信息提示区;主窗体菜单栏中提供文件操作功能、程序编译功能、串口更新功能、工程文件导出功能、串口调试功能、BIOS修复功能、硬件
检测功能、信息可视化功能、代码二次编辑功能。
[0012]进一步地,所述图标控件包括事件控件、执行控件、传感器控件、通信控件、流程控制控件、和子程序控件。
[0013]进一步地,所述控件操作模块用于连线和控件删除,其中实现控件删除的具体操作为:将待删除控件与其父控件和子控件之间的连线分别清除;将待删除控件中存储的子控件信息复制到该子控件的父控件中,将待删除控件中存储的父控件信息复制到该父控件的子控件中,实现待删除控件的父控件与子控件之间的双向关联;将待删除控件的父控件出口点引出连线至待删除控件的子控件入口点,实现待删除控件的父控件与子控件的连线;最后释放待删除控件占用的资源,完成删除的操作。
[0014]进一步地,所述源代码生成模块,用于将控件携带的代码按照代码类型分类存放在控件中;控件在图形化编程面板中经过操作实现图形化程序的开发,同时控件中存放的代码将一一对应按照位置生成在源代码文件中;在生成源代码的过程中,首先遍历存放在图形化编程面板中的所有控件,以main控件、事件控件或子程序控件为起始控件,将子控件的代码逐一插入,直至子控件为null即遍历到最后一个控件。
[0015]进一步地,所述源代码编译模块采用gcc编译器作为编译工具,采用交叉编译的方式。
[0016]本专利技术的优点在于:可以满足嵌入式系统的实时性要求,以及智能化的需求,并且在使用上具有很强的便利性。
附图说明
[0017]通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本专利技术的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
[0018]附图1示出了根据本专利技术实施方式的图形化编程系统结构图。
[0019]附图2示出了根据本专利技术实施方式的图形化编程系统主界面示意图。
[0020]附图3示出了根据本专利技术实施方式的二次编程界面示意图。
[0021]附图4示出了根据本专利技术实施方式的蜂鸣器控件的配置弹窗和延时控件的配置弹窗示意图。
[0022]附图5示出了根据本专利技术实施方式的可视化界面示意图。
[0023]附图6示出了根据本专利技术实施方式获取的数据折线图。
[0024]附图7示出了根据本专利技术实施方式获取的A类图标示意图。
[0025]附图8示出了根据本专利技术实施方式获取的B类图标示意图。
[0026]附图9示出了根据本专利技术实施方式获取的C类图标示意图。
[0027]附图10示出了根据本专利技术实施方式的图标控件类的UML类图。
[0028]附图11示出了图标控件库的六种类型控件图标示意图。
[0029]附图12示出了“内置三色灯”控件三类图标设计示意图。
[0030]附图13所示为图形化代码生成的源代码示意图。
具体实施方式
[0031]下面将参照附图更详细地描述本公开的示例性实施方式。虽然附图中显示了本公开的示例性实施方式,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
[0032]1软件系统框架设计
[0033]上位机软件实现图形化编程的实质是通过拖拽图标至编程区域,生成相关代码行插入到预先存放好的工程文件中,再通过上位机的编译功能将工程文件编译为可执行文件,最后将可执行文件烧录至下位机中。因此,上位机软件的实现不仅需要设计出软件的框架,还需设计底层项目工程文件的框架,制定统一的文件模板。
[0034]1.1底层工程文件框架设计
[0035]表4

1为底层的工程文件架构设计,该架构遵循了嵌入式软件开发的层次性原则和构件化思想。该架构由四个部分组成:CPU、MCU、驱动构件以及应用文件,这四部分层层关联又相互递进满足了软件设计的层次性原则;而构件部分又划分为底层构件、应用构件以及软件构件,并且分别存放在各自文件夹中,契合了构件化的设计思想。
[0036][00本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种图形化编程系统,其特征在于,包括:上位机编程环境单元、工程文件操作模块、E

Python翻译模块、源代码编译模块、串口更新模块;其中,工程文件操作模块将图形化工程文件输入或者输出所述上位机编程环境单元,所述上位机编程环境单元对所述图形化工程文件编程后输出Python源码工程文件,所述E

Python翻译模块将所述Python源码工程文件翻译为C/C++源码工程文件,再由所述源代码编译模块转换为可执行代码,最后经过所述串口更新模块输出给下位机终端设备。2.根据权利要求1所述的一种图形化编程系统,其特征在于,进一步包括:文件导出模块,用于将所述Python源码工程文件导出为标准工程文件。3.根据权利要求1或2所述的一种图形化编程系统,其特征在于,所述上位机编程环境单元包括图形化编程环境子单元、环境切换模块,代码编程环境子单元,所述环境切换模块用于在图形化编程环境子单元和代码编程环境子单元之间切换编程模式。4.根据权利要求3所述的一种图形化编程系统,其特征在于,所述图形化编程环境子单元包括图标代码库、图标配置模块、控件操作模块、硬件配置模块、源代码生成模块、第一信息输出模块;代码编程环境子单元包括代码编辑模块、文本操作模块、图形代码对照模块、第二信息输出模块。5.根据权利要求4所述的一种图形化编程系统,其特征在于,所述图形化编程环境子单元实现图形化程序的开发,通过拖拽图标控件、连接控件、和/或配置控件操作以实现图形化编程;代码编程环境子单元实现程序的二次编程,在图形化编程生成的源码基础上采用编写文本代码行的形式进行二次编程。6.根据权利要求5所述的一种图形化编程系统,其特征在于,所述系统使用窗体作为前端界面载体,通过...

【专利技术属性】
技术研发人员:史洪玮王宜怀张新新陈林董迎秋张加香刘苏桐夏子钧
申请(专利权)人:宿迁学院产业技术研究院
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1