CN108108171B - 一种手机远程单片机编译运行系统 - Google Patents
一种手机远程单片机编译运行系统 Download PDFInfo
- Publication number
- CN108108171B CN108108171B CN201810049914.5A CN201810049914A CN108108171B CN 108108171 B CN108108171 B CN 108108171B CN 201810049914 A CN201810049914 A CN 201810049914A CN 108108171 B CN108108171 B CN 108108171B
- Authority
- CN
- China
- Prior art keywords
- module
- source code
- mobile phone
- phone terminal
- distance host
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M1/00—Substation equipment, e.g. for use by subscribers
- H04M1/72—Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
- H04M1/724—User interfaces specially adapted for cordless or mobile telephones
- H04M1/72469—User interfaces specially adapted for cordless or mobile telephones for operating the device by selecting functions from two or more displayed items, e.g. menus or icons
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M1/00—Substation equipment, e.g. for use by subscribers
- H04M1/72—Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
- H04M1/724—User interfaces specially adapted for cordless or mobile telephones
- H04M1/72484—User interfaces specially adapted for cordless or mobile telephones wherein functions are triggered by incoming communication events
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Human Computer Interaction (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种手机远程单片机编译运行系统,包括手机端编辑显示单元、服务器端服务单元和远程主机端编译运行单元。所述手机端编辑显示单元完成用户输入源代码并保存,同时接收运行结果并且显示运行结果。所述服务器端服务单元接收来自手机端的源代码,并将手机端的源代码发送至远程主机端;同时接收远程主机端的运行结果,返回给手机端。远程主机端编译运行单元完成接收来自服务器端的源代码,并对源代码进行编译,并将该结果发送至服务器端。本发明可以让使用者仅仅通过手机就能够实现对单片机进行编程的功能。
Description
技术领域
本发明涉及单片机编译运行系统,尤其涉及一种手机远程单片机编译运行系统。
背景技术
目前流行的对单片机的编译运行操作都是在电脑上完成的,当学习者和开发者想要进行单片机的编程但是身边没有电脑时,则非常不便捷。而手机几乎人人都会随时随身携带,因此,需要一种手机远程单片机编译运行系统,使对单片机编译运行的限制程度更低。
发明内容
有鉴于此,本发明发明是为了解决学习者和开发者因必须在电脑上进行单片机开发而带来的时间限制和空间限制等问题。
本发明解决其技术问题所采用的技术方案是:一种手机远程单片机编译运行系统,该系统包括手机端编辑显示单元、服务器端服务单元和远程主机端编译运行单元;所述服务器端服务单元分别与手机端编辑显示单元和远程主机端编译运行单元相连。
进一步,所述手机端编辑显示单元包括手机主控模块、源代码输入模块、源代码保存模块、源代码发送模块、运行结果接收模块以及显示结果模块;所述手机主控模块分别与源代码输入模块、源代码保存模块、源代码发送模块、运行结果接收模块以及显示结果模块相连。
进一步,所述服务器端服务单元包括主机主控模块、登陆注册模块、手机端源代码接收模块、远程主机端源代码发送模块、远程主机端运行结果接收模块、手机端远程结果发送模块以及计费模块;所述主机主控模块分别与登陆注册模块、手机端源代码接收模块、远程主机端源代码发送模块、远程主机端运行结果接收模块、手机端远程结果发送模块以及计费模块相连。
进一步,所述远程主机端编译运行单元包括远程主控模块、源代码接收模块、运行结果发送模块、屏幕拷贝识别模块、虚拟控件模块、源代码编译模块、源代码下载模块、单片机模块、摄像头以及图片识别模块;所述远程主控模块分别与源代码接收模块、运行结果发送模块、屏幕拷贝识别模块、虚拟控件模块、源代码编译模块、源代码下载模块、单片机模块、以及图片识别模块相连;所述虚拟控件模块与屏幕拷贝识别模块相连;虚拟控件模块、源代码下载模块、单片机模块、摄像头、图片识别模块依次相连。
进一步,所述手机端编辑显示单元完成用户输入源代码并保存,同时接收运行结果并且显示运行结果。所述服务器端服务单元接收来自手机端的源代码,并将手机端的源代码发送至远程主机端;同时接收远程主机端的运行结果,返回给手机端。远程主机端编译运行单元完成接收来自服务器端的源代码,并对源代码进行编译,并将该结果发送至服务器端。
本发明的有益效果是:使用者可以在手机端上进行单片机的学习和开发,而不必在电脑上行进行开发。这种开发形式使得使用者可以随时随地进行开发。由于编译工作不全是手机来完成,所以编译的过程所占手机端内存小,不会损耗手机端太多的资源,故而运行速快,开发者使用起来很方便,能很好的达到学习和开发的目的。
附图说明
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步的详细描述,其中:
图1为一种手机远程单片机编译运行系统示意图;
图2为手机端编辑显示单元示意图;
图3为服务器端服务单元示意图;
图4为远程主机端编译单元示意图。
具体实施方式
以下将结合附图,对本发明的优选实施例进行详细的描述;应当理解,优选实施例仅为了说明本发明,而不是为了限制本发明的保护范围。
一种手机远程单片机编译运行系统,包括手机端编辑显示单元1、服务器端服务单元2和远程主机端编译运行单元3。所述手机端编辑显示单元1包括手机主控模块4、源代码输入模块5、源代码保存模块6、源代码发送模块7、运行结果接收模块8以及显示结果模块9;所述服务器端服务单元2包括主机主控模块10、登陆注册模块15、手机端源代码接收模块11、远程主机端源代码发送模块12、远程主机端运行结果接收模块13、手机端远程结果发送模块14以及计费模块16;所述远程主机端编译运行单元3包括远程主控模块17、源代码接收模块18、运行结果发送模块19、屏幕拷贝识别模块20、虚拟控件模块21、源代码编译模块22、源代码下载模块23、单片机模块24、摄像头25以及图片识别模块26。
所述手机端编辑显示单元1中的手机主控模块4控制所述手机端编辑显示单元中各个模块间的操作流程。整体的操作流程为:用户输入源代码并保存,发送源代码,接收运行结果并且显示运行结果。
所述源代码输入模块5用于用户输入针对单片机编程的源代码,并且将用户输入的源代码显示出来。打开手机端相应的软件后,首先在屏幕上显示源代码输入界面,等待用户输入源代码。用户完成输入之后,显示输入的源代码。
所述源代码保存模块6用于将用户输入的源代码保存至手机上。如果成功保存,则提示保存成功;否则,则要求用户重新保存。
所述源代码发送模块7用于将用户保存至手机上的源代码发送到服务器端。只有保存过的源代码才能被发送至服务器端。如果没有保存源代码就直接发送源代码,则提示用户先保存。在打开手机端相应的软件时,完成源代码的输入并保存后,点击“编译”按钮完成源代码的发送功能。由于用户并不知道真正进行编译的地方在哪里,即真正进行编译的地方对用户来说是透明的。所以在用户看来,点击“编译”按钮后,对源代码的编译是在手机上完成的。
所述运行结果接收模块8用于接收从服务器端返回的运行结果。服务器端接收来自远程主机端的运行结果,这种运行结果是以图片的形式给出,然后将服务器端将运行结果图片返回给运行结果接收模块。
所述显示结果模块9用于把接收到的运行结果图片在手机端展示给用户看。这种运行结果是以图片的形式展示出来的。为了节约数据传输量,传上的结果只传变化的部分,所以还需把不变的部分事先画好,比如单片机本体中的LCD外框,单片机电路板等。
所述服务器端服务单元2中的主机主控模块10用于控制服务器端各模块之间的操作流程。整体的操作流程为:服务器端接收来自手机端的源代码,并将手机端的源代码发送至远程主机端;接收远程主机端的运行结果,返回给手机端。
所述登陆注册模块15用于完成登陆服务器,注册服务器端账号的功能。
所述手机端源代码接收模块11用于接收从手机端发送过来的源代码。
所述远程主机源代码发送模块12用于将手机端接收过来的源代码发送至远程主机端。
所述远程主机端运行结果接收模块13用于接收来自远程主机端的运行结果,这个运行结果是以图片的形式给出。
所述手机端运行结果发送模块14用于将远程主机端发送过来的运行结果图片发送至手机端。
所述计费模块16是根据使用远程主机下载编译运行的次数,或使用时间等来收取费用。
所述远程主机端编译运行单元3中的远程主控模块17用于控制远程主机端各模块之间的操作流程。整体的操作流程为:接收来自服务器端的源代码,自动地打开单片机软件,利用虚拟控件来操作单片机软件;对源代码进行编译,将编译的结果下载到单片机模块中,并通过摄像头拍摄运行结果;利用图片识别来识别出图片中运行结果的部分,并将该结果发送至服务器端。
所述源代码接收模块18用于接收从服务器端发送的源代码。
所述运行结果发送模块19用于将运行的结果以图片的形式发送至服务器端。这个图片是进行处理过的图片,它不包含不变的部分,例如单片机本体中的LCD外框,单片机电路板等部分,而只包含改变的部分,即包含运行结果的部分。
所述源代码编译模块22完成源代码的编译功能。在手机端,相应的“编译”按钮并不是真正的编译,而只是将用户输入的模块发送到服务器端。所述源代码编译模块才是真正对源代码进行编译的地方。
所述屏幕拷贝识别模块20在自动打开单片机软件,进行编译,下载,运行的过程中,拷贝远程主机的屏幕,从而可以根据给出屏幕的状态进行操作。根据拷贝的屏幕的图片,算出相应操作按钮的位置,通过虚拟控件,进行相应的操作。
所述虚拟控件模块21用于让鼠标根据拷贝的图片以及上面功能按钮的相应定位,自动地点击,即自动地使用远程主机上的单片机软件,来完成对源代码的编译。
所述源代码下载模块23用于把编译结果文件下载到单片机中。要使得源代码在单片机中运行,首先是将源代码编译成为机器语言文件即二进制文件。此处的编译结果文件就是二进制文件。
所述单片机模块24是单片机本体,上面有各种模块和LCD显示,编译的程序在所述单片机本体上运行。运行结果通过摄像头拍照获取。
所述摄像头25用于拍下单片机运行之后的结果。
所述图片识别模块26用于对拍照图片运行结果进行识别,它可以把图片转成文本。所述图片识别模块能够在图片中找出结果部分,其余不变的部分例如单片机本体中的LCD 外框、单片机电路板等就不进行识别,以节约数据量,加快传输速度。
使用者可以在手机端上进行单片机的学习和开发,而不必在电脑上行进行开发。这种开发形式使得使用者可以随时随地进行开发。由于编译工作不全是手机来完成,所以编译的过程所占手机端内存小,不会损耗手机端太多的资源,故而运行速快,开发者使用起来很方便,能很好的达到学习和开发的目的。
以上所述仅为本发明的优选实施例,并不用于限制本发明,显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (1)
1.一种手机远程单片机编译运行系统,其特征在于:该系统包括手机端编辑显示单元、服务器端服务单元和远程主机端编译运行单元;所述服务器端服务单元分别与手机端编辑显示单元和远程主机端编译运行单元相连;所述远程主机端编译运行单元包括远程主控模块、源代码接收模块、运行结果发送模块、屏幕拷贝识别模块、虚拟控件模块、源代码编译模块、源代码下载模块、单片机模块、摄像头以及图片识别模块;所述远程主控模块分别与源代码接收模块、运行结果发送模块、屏幕拷贝识别模块、虚拟控件模块、源代码编译模块、源代码下载模块、单片机模块、以及图片识别模块相连;所述虚拟控件模块与屏幕拷贝识别模块相连;虚拟控件模块、源代码下载模块、单片机模块、摄像头、图片识别模块依次相连;
所述远程主控模块用于控制远程主机端编译运行单元各模块之间的操作流程;
所述源代码接收模块用于接收从服务器端发送的源代码;
所述屏幕拷贝识别模块用于,在自动打开单片机软件、进行编译、下载、运行的过程中,拷贝远程主机的屏幕图片;
所述虚拟控件模块用于让鼠标根据屏幕拷贝识别模块拷贝的屏幕图片,以及屏幕图片上面功能按钮的相应定位,自动地使用远程主机上的单片机软件,来完成对源代码的编译;
所述源代码编译模块用于完成源代码的编译功能;
所述源代码下载模块用于把编译结果文件下载到单片机中;
所述单片机模块为单片机本体,用于运行所述编译结果文件;
所述摄像头用于拍下单片机运行的结果;
所述图片识别模块用于对摄像头拍摄的结果进行识别:在摄像头拍摄的图片中,找出单片机运行的结果部分;
所述运行结果发送模块用于将图片识别模块识别的结果,以图片的形式发送至服务器端;
所述手机端编辑显示单元包括手机主控模块、源代码输入模块、源代码保存模块、源代码发送模块、运行结果接收模块以及显示结果模块;所述手机主控模块分别与源代码输入模块、源代码保存模块、源代码发送模块、运行结果接收模块以及显示结果模块相连;
所述手机主控模块用于控制所述手机端编辑显示单元中各个模块间的操作流程;
所述源代码输入模块用于用户输入针对单片机编程的源代码,并且将用户输入的源代码显示出来;
所述源代码保存模块用于将用户输入的源代码保存至手机上;
所述源代码发送模块用于将用户保存至手机上的源代码发送到服务器端;
所述运行结果接收模块用于接收从服务器端返回的运行结果;
所述服务器端服务单元包括主机主控模块、登陆注册模块、手机端源代码接收模块、远程主机端源代码发送模块、远程主机端运行结果接收模块、手机端远程结果发送模块以及计费模块;所述主机主控模块分别与登陆注册模块、手机端源代码接收模块、远程主机端源代码发送模块、远程主机端运行结果接收模块、手机端远程结果发送模块以及计费模块相连;
所述主机主控模块用于控制服务器端服务单元各模块之间的操作流程;
所述登陆注册模块用于完成登陆服务器端、注册服务器端账号的功能;
所述手机端源代码接收模块用于接收从手机端编辑显示单元发送过来的源代码;
所述远程主机端源代码发送模块用于将手机端接收过来的源代码发送至远程主机端编译运行单元;
所述远程主机端运行结果接收模块用于接收来自远程主机端编译运行单元的运行结果;
所述手机端运行结果发送模块用于将远程主机端发送过来的运行结果图片发送至手机端编译运行单元;
所述计费模块用于根据使用远程主机编译运行单元下载编译运行结果的次数,或使用远程主机编译运行单元的时间来收取费用。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810049914.5A CN108108171B (zh) | 2018-01-18 | 2018-01-18 | 一种手机远程单片机编译运行系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810049914.5A CN108108171B (zh) | 2018-01-18 | 2018-01-18 | 一种手机远程单片机编译运行系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108108171A CN108108171A (zh) | 2018-06-01 |
CN108108171B true CN108108171B (zh) | 2019-02-26 |
Family
ID=62219065
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810049914.5A Expired - Fee Related CN108108171B (zh) | 2018-01-18 | 2018-01-18 | 一种手机远程单片机编译运行系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108108171B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113450627A (zh) * | 2021-06-25 | 2021-09-28 | 上海商汤临港智能科技有限公司 | 实验项目运行方法及装置、电子设备和存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102609257A (zh) * | 2012-02-02 | 2012-07-25 | 清华大学 | 一种云程序设计方法 |
CN202887559U (zh) * | 2012-10-24 | 2013-04-17 | 浙江树人大学 | Stc单片机实验箱的远程程序调试器 |
CN104778885A (zh) * | 2015-04-09 | 2015-07-15 | 福建工程学院 | 一种基于可编程逻辑器件的数字电路实验系统和方法 |
CN204557145U (zh) * | 2015-04-29 | 2015-08-12 | 山东超越数控电子有限公司 | 51单片机独立编程器 |
EP2998899A1 (en) * | 2014-09-16 | 2016-03-23 | Xiaomi Inc. | Method and apparatus for running application program |
CN205179110U (zh) * | 2015-12-14 | 2016-04-20 | 袁园 | 一种基于云计算的app自动编译系统和管理平台 |
CN106445483A (zh) * | 2015-08-13 | 2017-02-22 | 李佰聪 | 生成行动应用程序的方法和系统 |
-
2018
- 2018-01-18 CN CN201810049914.5A patent/CN108108171B/zh not_active Expired - Fee Related
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102609257A (zh) * | 2012-02-02 | 2012-07-25 | 清华大学 | 一种云程序设计方法 |
CN202887559U (zh) * | 2012-10-24 | 2013-04-17 | 浙江树人大学 | Stc单片机实验箱的远程程序调试器 |
EP2998899A1 (en) * | 2014-09-16 | 2016-03-23 | Xiaomi Inc. | Method and apparatus for running application program |
CN104778885A (zh) * | 2015-04-09 | 2015-07-15 | 福建工程学院 | 一种基于可编程逻辑器件的数字电路实验系统和方法 |
CN204557145U (zh) * | 2015-04-29 | 2015-08-12 | 山东超越数控电子有限公司 | 51单片机独立编程器 |
CN106445483A (zh) * | 2015-08-13 | 2017-02-22 | 李佰聪 | 生成行动应用程序的方法和系统 |
CN205179110U (zh) * | 2015-12-14 | 2016-04-20 | 袁园 | 一种基于云计算的app自动编译系统和管理平台 |
Also Published As
Publication number | Publication date |
---|---|
CN108108171A (zh) | 2018-06-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101344899B (zh) | 一种片上系统的仿真测试方法及仿真测试系统 | |
CN109445949A (zh) | 一种数据采集系统和数据采集方法 | |
CN107992308A (zh) | 一种安卓终端应用程序的插件化管理方法 | |
US10761822B1 (en) | Synchronization of computation engines with non-blocking instructions | |
US11175919B1 (en) | Synchronization of concurrent computation engines | |
US20220100763A1 (en) | Optimizing job runtimes via prediction-based token allocation | |
CN113722020A (zh) | 接口调用方法、装置和计算机可读存储介质 | |
CN108108171B (zh) | 一种手机远程单片机编译运行系统 | |
CN104035757A (zh) | 基于MIPS处理器的u-boot移植的实现方法 | |
CN112631915B (zh) | 一种pcie设备软件仿真的方法、系统、设备及介质 | |
CN109299011A (zh) | 一种应用程序的测试方法及系统 | |
CN105706023B (zh) | 与不支持的输入设备的通信 | |
US10922146B1 (en) | Synchronization of concurrent computation engines | |
CN114416031B (zh) | 面向AIoT场景支持RISC-V处理器的操作系统 | |
CN116434040A (zh) | 一种面向risc-v体系架构的实时目标检测方法及系统 | |
CN109660587A (zh) | 基于随机数的数据推送方法、装置、存储介质及服务器 | |
CN109460280A (zh) | 运行程序的方法、终端 | |
US11061654B1 (en) | Synchronization of concurrent computation engines | |
CN114650436B (zh) | 基于后台服务的遥控方法、装置、设备及介质 | |
CN116643778B (zh) | 一种应用程序优化方法及电子设备 | |
CN109144590B (zh) | 移动终端指纹数据处理方法、移动终端及存储介质 | |
JP7329662B1 (ja) | 計算資源の効率的な制御及び使用のためのシステム、方法、プログラム及び情報処理装置 | |
CN107180107A (zh) | Ionic框架下的手机附件上传选择文件的方法及系统 | |
Ramlot | Optimising memory usage of Kubernetes operators | |
CN117331541A (zh) | 面向动态图框架和异构芯片的编译与运行方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20190226 Termination date: 20200118 |