本发明涉及单片机开发领域,具体涉及一种基于HTML5浏览器框架的单片机开发系统及装置。
背景技术:
微控制器自诞生以来,因其固有的优势——成本低、体积小、可靠性高、附加值高、能够通过软件编程改变控制对象,日益成为电子工程师设计产品的首选器件之一。 一。 学习单片机并掌握其设计和使用技术已成为当代大学生、电子工程师和电子爱好者的必备技能。 然而,随着物联网技术和显示技术的不断发展,人们对单片机控制系统的联网和大屏显示的要求越来越高。 单是网络技术的不断变革,从早期的有线网络到无线网络,从模拟时代到数字时代,从2G时代到3G/4G甚至即将到来的5G时代,就已经让传统微控制器开发者疲惫不堪,更不用说它了。在存储单元为KB的单片机上实现复杂的大屏UI显示是一个巨大的挑战。
目前,微控制器开发人员普遍采用以下三种方法来克服所面临的挑战: 1)使用HMI屏幕,通过MODBUS协议处理人机显示交互界面。 2)使用GPRS/WIFI等无线模块解决网络交互问题。 3)更换系统平台,重新学习linux、android等操作系统,学习新的编程语言java等。对于这三种方案,第一种方案通过预设指定图片进行一些简单的UI显示,但缺乏操作复杂UI的能力接口。 在第二种选择中,微控制器人员需要开发和测试复杂的网络协议栈和网络设备驱动程序,并且需要适应各种网络设备。 第三种选择相当于放弃了传统单片机开发者的优势,导致传统单片机开发者花费大量的时间在与开发工作无关的操作系统、开发环境以及新的编程语言上,而无法快速专注于核心业务逻辑。
技术实现要素:
本发明要解决的技术问题是提供一种具有跨平台特性、降低技术门槛、加快开发速度、扩大适用人群的基于HTML5浏览器框架的单片机开发系统及装置。鉴于现有技术的上述缺陷。
本发明解决其技术问题所采用的技术方案是构建一种基于HTML5浏览器框架的单片机开发系统,包括连接的单片机和HTML5浏览器框架设备。 单片机包括第一物理连接设备层、JavaScript接口封装层、系统层以及位于系统层之上的微控制器应用主程序,HTML5浏览器框架设备包括第二物理连接设备层、JavaScript解释器层、JavaScript开发框架层和外部设备层;
第一物理连接设备层与第二物理连接设备层连接,负责信息的物理传输; JavaScript接口封装层负责将系统层的调用转换为JavaScript函数和JavaScript语句块,设置相应的回调处理函数并通过第一物理连接设备层发送给HTML5浏览器框架设备,同时将GUI对象、网络对象、文件对象的变量ID绑定到JavaScript语句中的变量上,JavaScript界面封装层根据HTML5浏览器框架设备返回的包含ID信息的JSON格式结果,利用该ID信息进行处理GUI对象和网络在微控制器应用程序的主程序中以回调的方式进行。 对象和文件对象; 系统层负责微控制器的网络系统接口、文件系统接口和GUI系统接口的创建和销毁,以及注册输入数据相关的数据输出和回调处理函数。 微控制器应用主程序通过GUI系统接口创建GUI相关控件与用户交互,通过网络系统接口进行网络通信,通过文件系统接口访问数据。
第二物理连接设备层负责信息的物理传输,用于接收微控制器发送的JavaScript函数和JavaScript语句块,并判断JavaScript函数和JavaScript语句块是否接收完整; JavaScript解释器层用于解释并运行从第二物理连接设备层接收到的JavaScript代码,并监听用户界面和网络的变化,同时以JSON格式通知微控制器相关的变化信息和相关的ID信息。加工; JavaScript开发框架层与JavaScript解释器层连接,用于提供基础接口代码和高级封装库,用于提供UI渲染引擎接口、数据存储接口和网络接口; 外部设备层包括与外部显示器、外部存储和网络设备的JavaScript开发框架层连接相关的组件。
本发明的基于HTML5浏览器框架的微控制器开发系统中,第一物理连接设备层和第二物理连接设备层均包括USB接口、SPI接口或UART接口。
本发明的基于HTML5浏览器框架的微控制器开发系统中,网络设备包括有线以太网设备、2G/3G/4G广域无线网络设备和WIFI局域网无线网络设备。
本发明的基于HTML5浏览器框架的微控制器开发系统中,HTML5浏览器框架设备上运行以WebKit为浏览器核心的桌面应用,该桌面应用负责接收微控制器发送的JavaScript代码,并且执行JavaScript代码创建HTML5支持的DOM元素,创建基于AJAX的网络请求或基于WebSocket的网络请求,执行相关文件操作,并将结果返回给单片机; JavaScript代码包括JavaScript函数和JavaScript语句块。
本发明的基于HTML5浏览器框架的微控制器开发系统中,JavaScript开发框架层提供简单模式和复杂模式。 在简单模式下,微控制器使用高级封装库格式的Javascript函数库; 在复杂模式下,微控制器使用与HTML5相关的基本代码格式的Javascript语句。
本发明的基于HTML5浏览器框架的单片机开发系统中,HTML5浏览器框架设备将其状态变化发送给单片机,对单片机进行软件升级,对单片机进行软件升级。通过服务器的单片机。 要求UI更换不同风格的皮肤。
本发明的基于HTML5浏览器框架的微控制器开发系统中,JavaScript开发框架层提供动态实时UI布局,用户通过触摸动态调整UI布局并保存调整后的UI布局。 在 HTML5 浏览器框架设备下次启动时会自动使用上次保存的 UI 布局。
本发明还涉及一种实现上述基于HTML5浏览器框架的单片机开发系统的装置,包括:
微控制器主控单元:负责应用逻辑、显示逻辑、网络通信逻辑、存储逻辑以及与外部Android核心模块通信的控制;
Android核心模块:用于提供HTML5浏览器框架设备的运行环境以及与单片机的通信;
WebView应用单元:作为Android核心模块和HTML5浏览器的标准控件,为单片机应用程序提供串行通信接口,负责单片机所需的显示逻辑、网络通信逻辑和存储逻辑的实际执行组件,并提供实时反馈相关信息发送至单片机进行处理;
HTML5框架单元:负责JavaScript的基础核心界面框架部分,并提供简单模式和复杂模式为单片机提供不同粒度的控制级别;
显示单元:用于提供不同尺寸屏幕的显示,支持多种分辨率的像素,为单片机提供终端显示;
存储单元:用于提供与单片机的配置相关的文件存储;
网络通信单元:负责单片机对外的网络通信接口,无缝支持多种网络接口。
本发明的实现上述基于HTML5浏览器框架的单片机开发系统的装置中,所述网络接口包括以太网接口、2G/3G/4G接口和WIFI接口。
本发明基于HTML5浏览器框架的单片机开发系统及装置的实现具有以下有益效果:由于提供了单片机及HTML5浏览器框架装置,因此,单片机包括:第一物理层。连接设备层、JavaScript接口封装层、系统层和单片机应用主程序,HTML5浏览器框架设备包括第二物理连接设备层、JavaScript解释器层、JavaScript开发框架层和外部设备层; HTML5浏览器框架设备充当微控制器的网卡、显卡和存储卡,负责为微控制器提供显示渲染接口、网络通信接口和文件存储接口。 微控制器通过连接到HTML5浏览器框架设备的接口发送JavaScript代码。 HTML5浏览器框架设备通过执行接收JavaScript代码,不仅可以控制HTML5浏览器框架中的HTML5元素。 设备的显示屏还可以与网络信息交互并存储文件。 HTML5浏览器框架设备执行JavaScript代码后,执行结果以与ID信息绑定的JSON格式数据返回至微控制器。 微控制器通过ID信息来识别。 并对返回的数据进行处理,因此具有跨平台的特性,降低了技术门槛,加快了开发速度,扩大了适用人群。
附图说明
为了更加清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图进行简单介绍。 显然,下面描述中的附图仅仅是本发明的一些实施例。 对于本领域普通技术人员来说,基于这些附图,在不付出创造性劳动的情况下,还可以得到其他附图。
图1为本发明基于HTML5浏览器框架的微控制器开发系统及装置一实施例的系统结构示意图;
图2为本实施例装置的结构示意图。
详细方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。 显然,所描述的实施例仅仅是本发明部分实施例,而不是全部实施例。 基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明基于HTML5浏览器框架的单片机开发系统及装置实施例中,基于HTML5浏览器框架的单片机开发系统的结构示意图如图1所示。作为新一代互联网标准,HTML5框架在所有WEB浏览器和移动应用程序上都展现出了优异的性能。 它不仅简化了HTML5开发中CSS开发的繁重负担,还提供了硬件访问控制,可以调用USB接口、串口、SPI接口、摄像头、网络设备、存储设备等各种设备。 HTML框架的跨平台特性帮助用户解决了不同平台(IOS/Android/Windows)之间的兼容性问题,让传统微控制器的开发者不必关心平台的架构细节,从而可以专注于与业务相关的细节。 基于这些技术基础,本发明采用基于HTML5浏览器框架的单片机开发系统。 图1中,基于HTML5浏览器框架的单片机开发系统包括连接的单片机1和HTML5浏览器框架设备2。单片机1包括第一物理连接设备层11、JavaScript接口封装层12、系统层13。以及单片机应用主程序14,单片机应用主程序14位于系统层13上,HTML5浏览器框架装置2包括第二物理连接装置层21, JavaScript解释器层22、JavaScript开发框架层23和外部设备层24。
其中,第一物理连接设备层11与第二物理连接设备层21连接,负责信息的物理传输; JavaScript接口封装层12负责将系统层13的调用转换为JavaScript函数和JavaScript语句块,并设置相应的回调处理函数通过第一物理连接设备层11发送至HTML5浏览器框架设备2。同时,将GUI对象、网络对象和文件对象的变量ID与JavaScript语句中的变量绑定。 根据HTML5浏览器框架设备2返回包含ID信息的JSON格式结果。 JavaScript接口封装层12利用该ID信息以回调的方式处理微控制器应用主程序14中的GUI对象、网络对象和文件对象。
系统层13负责创建和销毁、数据输出和注册输入数据相关的回调处理函数; 单片机应用主程序14(单片机APP)由单片机开发者负责。 业务逻辑在单片机应用主程序14中实现。通过GUI系统接口133创建GUI相关的控件来与用户交互。 网络系统接口131用于网络通信,文件系统接口132用于访问数据。
第二物理连接装置层21负责信息的物理传输,用于接收微控制器1发送的JavaScript函数和JavaScript语句块,并判断JavaScript函数和JavaScript语句块是否接收完整。 JavaScript解释器层22用于解释并运行来自第二物理连接设备层21的JavaScript函数和JavaScript语句块,并监控用户界面和网络的变化,同时通知微控制器1: JSON格式的相关变更信息和相关ID信息进行处理; JavaScript开发框架层23和JavaScript解释服务器层22连接基础接口部分代码,负责提供UI渲染引擎接口231、数据存储接口232和网络接口233(JavaScript开发框架层23包括UI渲染引擎接口231、数据存储接口232和网络接口233)。 和高级封装库; 外部设备层24包括外部显示器241、外部存储器242以及它们所支持的不同网络设备243,它们都连接到JavaScript开发框架层23。这些网络设备243包括有线以太网设备、2G/3G/ 4G广域无线网络设备和WIFI局域无线网络设备。 上述外部显示器241连接至UI渲染引擎接口 231,外部存储器242连接至数据存储接口 232,网络设备243连接至网络接口 233。
在单片机1与HTML5浏览器框架设备2的关系中,单片机1作为主机控制HTML5浏览器框架设备2,HTML5浏览器框架设备2作为显卡,单片机1的网卡和存储盘设备。HTML5浏览器框架设备2可以将自身的状态变化发送给单片机1,升级单片机1的软件,将单片机1所需的UI替换为不同的UI。通过服务器的皮肤样式。
针对目前各种单片机在开发大屏显示和网络通信方面的不足,本发明提供了一种基于HTML5浏览器框架的单片机开发系统,可以大大降低传统单片机的技术要求。大屏幕显示和网络通信应用领域的单片机开发商。 门槛,让开发者专注于核心业务,同时扩大该技术的适用人群。 总之,本发明具有跨平台的特点,降低了技术门槛,加快了开发速度,扩大了适用人群。
第一物理连接设备层11和第二物理连接设备层21均包括USB接口、SPI接口或UART接口。 也就是说,第一物理连接设备层11可以选择UART接口、USB接口或SPI接口与第三物理连接设备层11进行通信。 两个物理连接连接至设备层21。换言之,在本实施例中,HTML5浏览器框架设备2(例如安卓终端)通过UART接口、USB接口或SPI接口与微控制器1进行通信。
在本实施例中,JavaScript开发框架层23提供了简单模式和复杂模式,用户可以选择其中一种模式。 在简单模式下,微控制器1使用高级封装库格式的JavaScript函数库; 在复杂模式下,微控制器1使用HTML5相关的基本代码格式Javascript语句。
本实施例中,HTML5浏览器框架设备2运行以WebKit为浏览器核心的桌面应用程序。 桌面应用程序负责接收微控制器发送的JavaScript代码并执行JavaScript代码创建HTML5支持的DOM元素并创建基于AJAX的网络请求或基于WebSocket的网络请求执行相关文件操作并将结果返回给微控制器1; 上述JavaScript代码包括JavaScript函数和JavaScript语句块。
值得一提的是,在本实施例中,JavaScript开发框架层23提供动态实时UI布局。 用户通过触摸来动态调整UI布局并保存调整后的UI布局。 下次 HTML5 浏览器框架设备 2 启动时会自动使用上次保存的 UI 布局。
本实施例还涉及一种实现上述基于HTML5浏览器框架的单片机开发系统的装置。 该装置的结构示意图如图2所示。图2中,该装置包括单片主控单元31、Android核心模块32、WebView应用单元33、HTML5框架单元34、显示单元35、存储单元36和网络通信单元37; 其中,单片主控单元31用于负责应用逻辑、显示逻辑、网络通信逻辑、存储逻辑以及与外部Android核心模块通信的控制; Android核心模块32用于提供HTML5浏览器框架设备的运行环境以及与微控制器1的通信。 WebView应用单元33作为Android核心模块32和HTML5浏览器的标准控制,为微控制器应用提供串行通信接口,负责显示逻辑、网络通信逻辑和存储逻辑的实际执行组件微控制器1所需的信息,并提供实时反馈的相关信息,发送至微控制器1进行处理。
HTML5框架单元34负责JavaScript基础核心接口框架部分,并提供简单模式和复杂模式。 两种模式为微控制器1提供了不同的粒度控制级别。简单模式将使用固定风格的UI,但减少了微控制器1的数量和Android核心模块32的通信时间; 复杂模式可以使用更复杂的UI控制,但会增加微控制器1与Android核心模块32之间的通信数据。 显示单元35用于提供不同尺寸屏幕的显示,支持多种分辨率的像素,并且为单片机1提供终端显示; 存储单元36用于提供与微控制器1的配置相关的文件存储; 网络通信单元37负责微控制器1的外部网络通信接口,无缝支持多种网络接口,包括以太网接口、2G/3G/4G接口和WIFI接口。
微控制器1启动Android核心设备并等待Android核心设备上的WebView应用单元33的启动通知。 微控制器1收到启动通知后,开始向Android核心设备上运行的WebView应用单元33发送由用于创建UI、文件和网络的JavaScript语句组成的字符串,并以回车换行结束。 JavaScript 语句。 WebView应用单元33接收来自微控制器1的JavaScript语句,启动JavaScript解释器层22执行JavaScript语句,并将执行语句的结果返回给微控制器1进行处理。 通过使用JavaScript,您可以轻松操作HTML5 DOM标签,也可以轻松使用AJAX或WebSocket进行网络通信,还可以通过HTML5文件标签操作文件。 WebView应用单元33由基于HTML5浏览器框架的单片机开发系统的设备提供商提供。 使用本发明的装置时,微控制器开发人员只需关注自己的业务逻辑部分,无需考虑复杂的网络编程、GUI编程和文件存储。 MCU开发人员只需调用基于HTML5浏览器框架的MCU开发系统的接口库函数,即可轻松处理网络、GUI和文件存储问题。 传统的微控制器开发人员可以通过采用本发明的装置来扩展他们的专业技能。
简而言之,本实施例中单片机1通过USB接口、UART接口或SPI接口控制HTML5浏览器框架设备2。 单片机1的GUI系统接口133、网络系统接口131和文件系统接口132(存储接口)中封装有JavaScript代码。 MCU 1封装的JavaScript代码运行在HTML5浏览器框架设备2上; MCU 1通过USB接口、UART接口或SPI接口接收HTML5浏览器框架设备2返回的JSON格式消息; HTML5浏览器框架设备2负责UI界面的显示、网络连接和文件存储,并将状态或结果以JSON格式返回给微控制器1。 HTML5浏览器框架装置2的DOM元素显示样式可以从服务器端下载,微控制器固件程序也可以从服务器端下载和升级。 本发明使得单片机开发方法具有统一的用户界面、数据存储和网络组件,可以大大减少单片机1的代码大小,使得传统单片机开发者能够最大限度地发挥自己的优势并创造更多的社会和商业价值。
以上所述仅为本发明的优选实施例而已,并不用于限定本发明。 凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明之内。 保护范围内。