CN106557351A - 嵌入式应用程序的数据处理方法及装置 - Google Patents
嵌入式应用程序的数据处理方法及装置 Download PDFInfo
- Publication number
- CN106557351A CN106557351A CN201611048760.5A CN201611048760A CN106557351A CN 106557351 A CN106557351 A CN 106557351A CN 201611048760 A CN201611048760 A CN 201611048760A CN 106557351 A CN106557351 A CN 106557351A
- Authority
- CN
- China
- Prior art keywords
- variable
- information
- layout
- micro
- internal memory
- 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.)
- Granted
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 18
- 238000012545 processing Methods 0.000 claims abstract description 32
- 238000000034 method Methods 0.000 claims abstract description 17
- 230000008569 process Effects 0.000 claims description 9
- 238000000605 extraction Methods 0.000 claims description 4
- 239000000284 extract Substances 0.000 claims description 3
- 230000010365 information processing Effects 0.000 claims description 3
- 238000000151 deposition Methods 0.000 claims description 2
- 230000008859 change Effects 0.000 abstract description 12
- 230000000875 corresponding effect Effects 0.000 description 34
- 230000006870 function Effects 0.000 description 10
- 238000004891 communication Methods 0.000 description 9
- 230000004048 modification Effects 0.000 description 6
- 238000012986 modification Methods 0.000 description 5
- 238000003860 storage Methods 0.000 description 5
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 230000008140 language development Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000007639 printing Methods 0.000 description 1
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
-
- 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
- G06F8/44—Encoding
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明适用于数据处理技术领域,提供了一种嵌入式应用程序的数据处理方法及装置,所述方法包括:对微控制单元的代码进行编译,得到MAP文件;获取MAP文件中各个变量的变量信息,并根据源代码得到各个变量的结构信息,通过变量信息和结构信息得出变量内存中的布局;变量信息包括变量地址和变量长度;将变量内存中的布局和目标变量的变量信息发送给微控制单元,并接收微控制单元发送来的与变量内存中的布局和目标变量的变量信息对应的数据。上述方法可以对任意微控制单元进行任意数据查看,而无需修改上位机代码,具有较强的易用性和实用性。
Description
技术领域
本发明属于数据处理技术领域,尤其涉及一种嵌入式应用程序的数据处理方法及装置。
背景技术
目前嵌入式调试观测MCU(Microcontroller Unit,微控制单元)内部数据主要有两种方式:
第一种方式通过编译器自带的仿真软件来观测,但需购买昂贵的工具,且只能针对特定的MCU型号进行调试,而且还需要源码才能进行调试;
第二种方式通过串口打印数据,但需要编写特定代码上传相关数据,当变量发生变化需要修改上传数据代码,增加程序员工作量,容易让软件产生BUG(漏洞),进而降低了产品的稳定性;且采用通用助手工具上传显示数据不够直观,需要针对不同的代码开发特定的上位机以进行显示。
发明内容
有鉴于此,本发明实施例提供了一种嵌入式应用程序的数据处理方法及装置,以解决现有技术中对嵌入式应用程序的数据处理实现困难的问题。
本发明实施例的第一方面,提供了一种嵌入式应用程序的数据处理方法,包括:
对微控制单元的源代码进行编译,得到MAP文件;
获取所述MAP文件中各个变量的变量信息,并根据源代码得到各个变量的结构信息,通过所述变量信息和所述结构信息得出变量内存中的布局;所述变量信息包括变量地址和变量长度;
将变量内存中的布局和目标变量的变量信息发送给所述微控制单元,并接收所述微控制单元发送来的与变量内存中的布局和所述目标变量的变量信息对应的数据。
本发明实施例的第二方面,提供了一种嵌入式应用程序的数据处理装置,包括:
编译模块,用于对微控制单元的代码进行编译,得到MAP文件;
变量信息获取模块,用于获取所述MAP文件中各个变量的变量信息,并根据源代码得到各个变量的结构信息,通过所述变量信息和所述结构信息得出变量内存中的布局;所述变量信息包括变量地址和变量长度;
信息处理模块,用于将变量内存中的布局和目标变量的变量信息发送给所述微控制单元,并接收所述微控制单元发送来的与变量内存中的布局和所述目标变量的变量信息对应的数据。
本发明实施例相对于现有技术所具有的有益效果:本发明实施例对微控制单元的代码进行编译得到MAP文件,并获取所述MAP文件中各个变量的变量信息,并根据源代码得到各个变量的结构信息,通过所述变量信息和所述结构信息得出变量内存中的布局,将变量内存中的布局和目标变量的变量信息发送给所述微控制单元,并接收所述微控制单元发送来的与变量内存中的布局和所述目标变量的变量信息对应的数据,可以对任意MCU进行任意数据查看,而无需修改上位机代码,MCU部分只需将特定模块放入工程以后无论代码怎么变动,均可自动通过识别MAP文件变动来看代码中任何全局变量,而达到对嵌入式应用程序的数据处理实现方便的目的。本发明实施例操作方便、实现简单,对硬件的要求低,从而有利降低产品成本,使产品适用面更广,具有较强的易用性和实用性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例一提供的嵌入式应用程序的数据处理方法的流程图;
图2是本发明实施例一提供的将变量内存中的布局和所述目标变量的变量信息发送给所述微控制单元的流程图;
图3是本发明实施例二提供的嵌入式应用程序的数据处理装置的结构框图;
图4是本发明实施例二提供的信息处理模块的结构框图;
图5是本发明实施例三提供的嵌入式应用程序的数据处理装置的示意框图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本发明实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本发明。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本发明的描述。
为了说明本发明所述的技术方案,下面通过具体实施例来进行说明。
实施例一:
图1示出了本发明实施例一提供的嵌入式应用程序的数据处理方法的实现流程,详述如下:
步骤S101,对微控制单元的源代码进行编译,得到MAP文件。
本步骤中,对微控制处理单元中的代码进行编译后,相应生成MAP文件。其中,MAP文件用于描述代码的变量信息、MCU的内存信息及其它编译信息等。另外,对微控制处理单元中的代码进行编译后,还会相应生成HEX文件。其中,HEX文件对应MCU可执行代码。以上可以通过MCU编译器对微控制单元的代码进行编译,并生成MAP文件,但并不以此为限。在其他实施例中,还可以通过其他方式对微控制单元的代码进行编译,生成MAP文件。
本实施例中,微控制处理单元中的代码可以为C语言代码或C++语言代码,但并不以此为限。在其他实施例中,微控制处理单元中的代码还可以为其他语言代码。
以MCU编译器对MCU的代码进行编译为例进行说明。本实施例中,可以将MCU编译器与MCU连接,然后MUC编译器读取MCU的C语言代码或C++语言代码,并对读取MCU的C语言代码或C++语言代码进行编译,得到相应的MAP文件。具体的,MAP文件中包含MCU代码的变量信息、MCU的内存信息及其它编译信息等。
步骤S102,获取所述MAP文件中各个变量的变量信息,并根据所述源代码得到各个变量的结构信息,通过所述变量信息和所述结构信息得出变量内存中的布局。
其中,所述变量信息包括变量地址和变量长度。在步骤S101中对微控制单元的代码进行编译,得到MAP文件之后,本步骤中对MAP文件进行处理,提取MAP文件中各个变量的变量信息。其中,变量为对微控制单元的代码进行编译之后,得到的变量。
进一步的,变量信息还可以包括变量名称等信息。即,本步骤中还可以获取所述MAP文件中各个变量的变量名称等信息。优选的,在获取到所述MAP文件中各个变量的变量信息后,可以将各个变量显示出来,以便于用户选择。具体的,可以根据各个变量的变量名称进行显示,显示出的每个变量对应一个变量地址和一个变量长度。用户在根据变量名称选择其中一个变量时,即会对应选择一个变量地址和一个变量长度。通常情况下,不同的变量对应的变量地址不同,不同的变量对应的变量长度不尽相同。
步骤S103,将变量内存中的布局和目标变量的变量信息发送给所述微控制单元,并接收所述微控制单元发送来的与变量内存中的布局和所述目标变量的变量信息对应的数据。
本实施例中,所述变量信息包括变量名称、变量地址和变量长度。参见图2,步骤S103中“将变量内存中的布局和目标变量的变量信息发送给所述微控制单元”可以通过以下过程实现:
步骤S201,接收输入信息,并从所述输入信息中提取变量名称。
其中,输入信息为用户输入的信息,可以为用户输入的文本信息,也可以为用户根据显示页面显示的变量名称进行选择而对应生成的输入信息,对此不做限制。例如,用户可以根据相应规则输入表征某种变量名称的信息。用户也可以根据显示界面显示出的变量名称进行点击选择,进行生成包含该变量名称的输入信息。在本步骤中,接收到的输入信息中会对应包括变量名称,即用户想要观测的变量的名称。因此,可以从接收到的输入信息中提取出该变量名称,以用于后续处理。
步骤S202,将所提取到的变量名称对应的变量作为目标变量,并将变量内存中的布局和所述目标变量的变量信息发送给所述微控制单元。
本步骤中,将步骤S201中提取到的变量名称作为步骤S103中所述的目标变量,然后将变量内存中的布局和所述目标标量对应的变量信息发送给所述微控制单元。
可以理解的,用户想要观测某个变量的相关数据时,可以输入包含变量名称的信息,然后通过步骤S201中提取到变量的变量信息,再通过步骤S202将所提取到的变量名称对应的变量作为目标变量,并将变量内存中的布局和所述目标变量的变量信息发送给所述微控制单元。微控制单元接收到变量内存中的布局和所述目标变量的变量信息以后,将与变量内存中的布局和所述变量信息对应的数据发送回来,以供用户观测。
另外,步骤S103中将变量内存中的布局和变量信息的发送给微控制单元,以及接收微控制单元发送回的与变量内存中的布局和所述变量信息对应的数据的具体方式为:
通过RS232接口、RS485接口、控制器局域网络(Controller Area Network,CAN)或SOCKET将变量内存中的布局和目标变量的变量信息发送给所述微控制单元,以及接收所述微控制单元发送来的与变量内存中的布局和所述目标变量的变量信息对应的数据。即,可以通过RS232接口、RS485接口、控制器局域网络和SOCKET中的任一种形式,实现将变量内存中的布局和变量信息发送到微控制单元,以及接收微控制单元发送来的与变量内存中的布局和所述变量信息对应的数据。其中,网络上的两个应用程序通过一个双向的通信连接实现数据的交换,这个连接的一端就称为一个SOCKET。
在步骤S103之后,嵌入式应用程序的数据处理方法还可以包括:
步骤S104,显示所述微控制单元发送来的与变量内存中的布局和所述目标变量的变量信息对应的的数据。
具体的,可以将与变量内存中的布局和所述目标变量的变量信息对应的数据显示在显示界面上,以供用户观测、分析嵌入式应用程序的数据。优选的,步骤S104具体可以为:将所述微控制单元发送来的与变量内存中的布局和所述目标变量的变量信息对应的数据显示为波形。其中,显示界面的波形显示区域的横坐标可以为时间,纵坐标可以为数据大小。将与变量内存中的布局和所述目标变量的变量信息对应的数据以波形的形式显示,有利于用于用户形象的观测,便于用户更好的理解数据的变化规律。
另外,嵌入式应用程序的数据处理方法还可以包括:存储所述微控制单元发送来的与变量内存中的布局和所述目标变量的变量信息对应的数据,以用于对嵌入式应用程序的数据进行分析,便于为以后对嵌入式应用程序的数据处理提供参考。
进一步的,当重新修改对MCU代码的编译后,MAP文件会自动更新,自动跟随相应变量名的地址,进而可以获取相应变量新的数据。可以达到无论MCU代码怎么更改,均可以查看任意变量的数据的效果,而不需要像传统的方式通过修改底层需要上传的数据获取变量的数据。
以下通过一具体实例进行进一步说明。
1、解析MAP文件。具体过程为:点击加载MAP按钮,选择编译时产生的MAP文件,该软件将会解析相关数据显示在显示界面的一侧,例如左侧(每列都是MCU代码里面的变量)。
2、设置通信类型。设置该软件支持RS232、RS485、CAN、SOCKET(例如WLAN、LAN),并根据MCU底层支持的通信类型选择相应的通讯方式。
3、将需要查看的变量从右侧拖入道左侧变量窗口中(任意窗口都可以),然后点击开始捕获,窗口中将会显示相应变量的数据波形,当修改了MCU程序后重新编译烧录MCU程序,然后点击该软件重载MAP即可继续观测变量数据,可以点击窗口中保存数据,截图功能将捕获的数据存盘。
对于电动车控制器行业,控制器里面具有复杂的算法,如果有BUG不易轻易发现,有些问题是肉眼看不见,有些问题很久才出现一次,软件开发人员都是通过不停测试,不停修改发送回来的变量数据,然后将数据放到EXCEL表格中对比找出BUG。这样不仅不易看出问题所在,还需要不停的修改代码来达到分析数据目的。采用上述嵌入式应用程序的数据处理方法,开发人员可以自由的拖入想看的变量观察相关变量波形,当修改程序后也不用修改上传数据代码,上位机软件自动能识别修改变量的地址及长度类型,而且可以通过WIFI(WIreless-Fidelity,无线保真)不需要任何设备在骑行中可以保存所有数据波形。
上述嵌入式应用程序的数据处理方法,适用于所有的基于C/C++语言开发的嵌入式软件调试、测试和仿真领域,以及包含大量算法的运动嵌入式产品(可穿戴设备(手环,计步器等),无人机,电机控制器等)。上述嵌入式应用程序的数据处理方法,可以正对任意MCU进行任意数据查看,不需修改上位机代码,MCU部分只需将特定模块放入工程以后无论代码怎么变动,上位机自动通过识别MAP文件变动仍然可以查看代码中任何全局变量;可以针对任何MCU或者任何嵌入式产品无需修改代码;不需要购买昂贵的调试器,只需要MCU支持RS232、RS485、CAN中的任意一种通信即可;不需要源代码即可调试,增加的软件保密强度;不需要专业的软件开发人员,上位机软件傻瓜化操作,测试人员或者客户都可以参与该产品调试或测试。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
实施例二:
对应于上文实施例所述的嵌入式应用程序的数据处理方法,图3示出了本发明实施例提供的嵌入式应用程序的数据处理装置的结构框图为了便于说明,仅示出了与本实施例相关的部分。
参照图3,该装置包括:编译模块301、变量信息获取模块302和信息处理模块303。其中:
编译模块301,用于对微控制单元的源代码进行编译,得到MAP文件。
变量信息获取模块302,用于获取所述MAP文件中各个变量的变量信息,并根据所述源代码得到各个变量的结构信息,通过所述变量信息和所述结构信息得出变量内存中的布局;所述变量信息包括变量地址和变量长度。
信息处理模块303,用于将变量内存中的布局和目标变量的变量信息发送给所述微控制单元,并接收所述微控制单元发送来的与变量内存中的布局和所述目标变量的变量信息对应的数据。
优选的,嵌入式应用程序的数据处理装置还可以包括:
显示模块304,用于显示所述微控制单元发送来的与变量内存中的布局和所述目标变量的变量信息对应的数据。
优选的,所述显示模块304具体用于:
将所述微控制单元发送来的与变量内存中的布局和所述目标变量的变量信息对应的数据显示为波形。
优选的,所述信息处理模块303具体用于:
通过RS232接口、RS485接口、控制器局域网络或SOCKET将变量内存中的布局和所述目标变量的变量信息发送给所述微控制单元,以及接收所述微控制单元发送来的与所述变量内存中的布局和所述目标变量的变量信息对应的数据。优选的,所述变量信息还包括变量名称;参见图4,所述信息处理模块303可以包括:提取单元401和处理单元402。其中:
提取单元401,用于接收输入信息,并从所述输入信息中提取变量名称;
处理单元402,用于将所提取到的变量名称对应的变量作为目标变量,并将所述变量内存中的布局和所述目标变量的变量信息发送给所述微控制单元。
实施例三:
参见图5,是本发明实施例四提供的嵌入式应用程序的数据处理装置的示意框图。如图所示的该终端信息交互的装置可以包括:一个或多个处理器501(图中仅示出一个);一个或多个输入设备502(图中仅示出一个),一个或多个输出设备503(图中仅示出一个)和存储器504。上述处理器501、输入设备502、输出设备503和存储器504通过总线505连接。存储器504用于存储指令,处理器501用于执行存储器504存储的指令。其中:
所述处理器501,用于对微控制单元的源代码进行编译,得到MAP文件;所述处理器501,还用于获取所述MAP文件中各个变量的变量信息,并根据所述源代码得到各个变量的结构信息,通过所述变量信息和所述结构信息得出变量内存中的布局;所述变量信息包括变量地址和变量长度;所述处理器501,还用于通过输出设备503将变量内存中的布局和目标变量的变量信息发送给所述微控制单元,并通过输入设备502接收所述微控制单元发送来的与变量内存中的布局和所述目标变量的变量信息对应的数据。
优选的,输出设备503还用于显示所述微控制单元发送来的与变量内存中的布局和所述目标变量的变量信息对应的数据。具体的,输出设备503用于将所述微控制单元发送来的与变量内存中的布局和所述目标变量的变量信息对应的数据显示为波形。
优选的,输入设备502和输出设备503均通过RS232接口、RS485接口、控制器局域网络或SOCKET与微控制单元连接。即,所述处理器501,通过输出设备503以RS232接口、RS485接口、控制器局域网络或SOCKET的通信方式将变量内存中的布局和目标变量的变量信息发送给所述微控制单元,并通过输入设备502以RS232接口、RS485接口、控制器局域网络或SOCKET的通信方式接收所述微控制单元发送来的与变量内存中的布局和所述目标变量的变量信息对应的数据。
可选的,所述处理器501用于接收输入信息,并从所述输入信息中提取变量名称;所述处理器501还用于将所提取到的变量名称对应的变量作为目标变量,并将所述变量内存中的布局和所述目标变量的变量信息发送给所述微控制单元。
所述存储器504,用于存储软件程序、模块和所述网络交互数据,所述处理器501通过运行存储在所述存储器504的软件程序以及单元,从而执行各种功能应用以及数据处理,实现终端的信息交互功能。
应当理解,在本发明实施例中,所称处理器501可以是中央处理单元(CentralProcessing Unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
输入设备502可以包括触控板、指纹采传感器(用于采集用户的指纹信息和指纹的方向信息)、麦克风等,输出设备503可以包括显示器(LCD等)、扬声器等。
该存储器504可以包括只读存储器和随机存取存储器,并向处理器501提供指令和数据。存储器504的一部分还可以包括非易失性随机存取存储器。例如,存储器504还可以存储设备类型的信息。
具体实现中,本发明实施例中所描述的处理器501、输入设备502、输出设备503和存储器504可执行本发明实施例提供的终端信息处理的方法的实施例中所描述的实现方式,也可执行终端信息处理的装置的实施例中所描述的实现方式,在此不再赘述。
综上所述,本发明实施例对微控制单元的代码进行编译得到MAP文件,并获取所述MAP文件中各个变量的变量信息,并根据源代码得到各个变量的结构信息,通过所述变量信息和所述结构信息得出变量内存中的布局,将变量内存中的布局和目标变量的变量信息发送给所述微控制单元,并接收所述微控制单元发送来的与变量内存中的布局和所述目标变量的变量信息对应的数据,可以正对任意MCU进行任意数据查看,而需修改上位机代码,MCU部分只需将特定模块放入工程以后无论代码怎么变动,均可自动通过识别MAP文件变动来看代码中任何全局变量,而达到对嵌入式应用程序的数据处理实现方便的目的。本发明实施例操作方便、实现简单,对硬件的要求低,从而有利降低产品成本,使产品适用面更广,具有较强的易用性和实用性。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的系统实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明实施例各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。
Claims (10)
1.一种嵌入式应用程序的数据处理方法,其特征在于,包括:
对微控制单元的源代码进行编译,得到MAP文件;
获取所述MAP文件中各个变量的变量信息,并根据所述源代码得到各个变量的结构信息,通过所述变量信息和所述结构信息得出变量内存中的布局;所述变量信息包括变量地址和变量长度;
将变量内存中的布局和目标变量的变量信息发送给所述微控制单元,并接收所述微控制单元发送来的与变量内存中的布局和所述目标变量的变量信息对应的数据。
2.根据权利要求1所述的嵌入式应用程序的数据处理方法,其特征在于,还包括:
显示所述微控制单元发送来的与变量内存中的布局和所述目标变量的变量信息对应的数据。
3.根据权利要求2所述的嵌入式应用程序的数据处理方法,其特征在于,所述显示所述微控制单元发送来的与变量内存中的布局和所述目标变量的变量信息对应的数据具体为:
将所述微控制单元发送来的与变量内存中的布局和所述目标变量的变量信息对应的数据显示为波形。
4.根据权利要求1所述的嵌入式应用程序的数据处理方法,其特征在于,所述将变量内存中的布局和所述目标变量的变量信息发送给所述微控制单元,接收所述微控制单元发送来的与变量内存中的布局和所述目标变量的变量信息对应的数据具体为:
通过RS232接口、RS485接口、控制器局域网络或SOCKET将变量内存中的布局和所述目标变量的变量信息发送给所述微控制单元,以及接收所述微控制单元发送来的与所述变量内存中的布局和所述目标变量的变量信息对应的数据。
5.根据权利要求1所述的嵌入式应用程序的数据处理方法,其特征在于,所述变量信息还包括变量名称;所述将变量内存中的布局和所述目标变量的变量信息发送给所述微控制单元包括:
接收输入信息,并从所述输入信息中提取变量名称;
将所提取到的变量名称对应的变量作为目标变量,并将所述变量内存中的布局和所述目标变量的变量信息发送给所述微控制单元。
6.一种嵌入式应用程序的数据处理装置,其特征在于,包括:
编译模块,用于对微控制单元的源代码进行编译,得到MAP文件;
变量信息获取模块,用于获取所述MAP文件中各个变量的变量信息,并根据所述源代码得到各个变量的结构信息,通过所述变量信息和所述结构信息得出变量内存中的布局;所述变量信息包括变量地址和变量长度;
信息处理模块,用于将变量内存中的布局和目标变量的变量信息发送给所述微控制单元,并接收所述微控制单元发送来的与变量内存中的布局和所述目标变量的变量信息对应的数据。
7.根据权利要求6所述的嵌入式应用程序的数据处理装置,其特征在于,还包括:
显示模块,用于显示所述微控制单元发送来的与变量内存中的布局和所述目标变量的变量信息对应的数据。
8.根据权利要求7所述的嵌入式应用程序的数据处理装置,其特征在于,所述显示模块具体用于:
将所述微控制单元发送来的与变量内存中的布局和所述目标变量的变量信息对应的数据显示为波形。
9.根据权利要求6所述的嵌入式应用程序的数据处理装置,其特征在于,所述信息处理模块具体用于:
通过RS232接口、RS485接口、控制器局域网络或SOCKET将变量内存中的布局和所述目标变量的变量信息发送给所述微控制单元,以及接收所述微控制单元发送来的与所述变量内存中的布局和所述目标变量的变量信息对应的数据。
10.根据权利要求6所述的嵌入式应用程序的数据处理装置,其特征在于,所述变量信息还包括变量名称;所述信息处理模块包括:
提取单元,用于接收输入信息,并从所述输入信息中提取变量名称;
处理单元,用于将所提取到的变量名称对应的变量作为目标变量,并将所述变量内存中的布局和所述目标变量的变量信息发送给所述微控制单元。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611048760.5A CN106557351B (zh) | 2016-11-21 | 2016-11-21 | 嵌入式应用程序的数据处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611048760.5A CN106557351B (zh) | 2016-11-21 | 2016-11-21 | 嵌入式应用程序的数据处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106557351A true CN106557351A (zh) | 2017-04-05 |
CN106557351B CN106557351B (zh) | 2019-08-09 |
Family
ID=58443608
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611048760.5A Active CN106557351B (zh) | 2016-11-21 | 2016-11-21 | 嵌入式应用程序的数据处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106557351B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110175124A (zh) * | 2019-05-23 | 2019-08-27 | 深圳前海微众银行股份有限公司 | 一种诊断Spark应用的方法及装置 |
CN110442352A (zh) * | 2019-07-23 | 2019-11-12 | 武汉光迅科技股份有限公司 | 一种dsp的代码下载方法和装置 |
CN110858147A (zh) * | 2018-08-24 | 2020-03-03 | 深圳市优必选科技有限公司 | Mcu信息获取方法及终端设备 |
CN111352742A (zh) * | 2018-12-21 | 2020-06-30 | 北京奇虎科技有限公司 | 一种基于app组件化的信息传递方法及装置 |
CN112187698A (zh) * | 2019-07-01 | 2021-01-05 | 云丁网络技术(北京)有限公司 | 通信方法、业务系统、电子设备及其具有的主mcu |
CN112269579A (zh) * | 2020-11-02 | 2021-01-26 | 中电凯杰科技有限公司 | 一种基于stm32处理器的编译型plc控制器系统及实现方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1558334A (zh) * | 2004-01-16 | 2004-12-29 | 中兴通讯股份有限公司 | 一种单片机后台调试的系统及方法 |
CN104503898A (zh) * | 2014-11-24 | 2015-04-08 | 四川长虹电器股份有限公司 | 一种嵌入式软件调试参数实时查看的方法及系统 |
CN105739992A (zh) * | 2016-02-26 | 2016-07-06 | 珠海煌荣集成电路科技有限公司 | 基于gcc编译器的软件控制内存分拆和映射的方法及系统 |
US20160253120A1 (en) * | 2015-02-27 | 2016-09-01 | Electronics And Telecommunications Research Institute | Multicore programming apparatus and method |
CN106126211A (zh) * | 2016-06-17 | 2016-11-16 | 山东超越数控电子有限公司 | 一种支持调试接口的mcu在线编程系统 |
-
2016
- 2016-11-21 CN CN201611048760.5A patent/CN106557351B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1558334A (zh) * | 2004-01-16 | 2004-12-29 | 中兴通讯股份有限公司 | 一种单片机后台调试的系统及方法 |
CN104503898A (zh) * | 2014-11-24 | 2015-04-08 | 四川长虹电器股份有限公司 | 一种嵌入式软件调试参数实时查看的方法及系统 |
US20160253120A1 (en) * | 2015-02-27 | 2016-09-01 | Electronics And Telecommunications Research Institute | Multicore programming apparatus and method |
CN105739992A (zh) * | 2016-02-26 | 2016-07-06 | 珠海煌荣集成电路科技有限公司 | 基于gcc编译器的软件控制内存分拆和映射的方法及系统 |
CN106126211A (zh) * | 2016-06-17 | 2016-11-16 | 山东超越数控电子有限公司 | 一种支持调试接口的mcu在线编程系统 |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110858147A (zh) * | 2018-08-24 | 2020-03-03 | 深圳市优必选科技有限公司 | Mcu信息获取方法及终端设备 |
CN110858147B (zh) * | 2018-08-24 | 2023-12-29 | 深圳市优必选科技有限公司 | Mcu信息获取方法及终端设备 |
CN111352742A (zh) * | 2018-12-21 | 2020-06-30 | 北京奇虎科技有限公司 | 一种基于app组件化的信息传递方法及装置 |
CN111352742B (zh) * | 2018-12-21 | 2024-02-09 | 三六零科技集团有限公司 | 一种基于app组件化的信息传递方法及装置 |
CN110175124A (zh) * | 2019-05-23 | 2019-08-27 | 深圳前海微众银行股份有限公司 | 一种诊断Spark应用的方法及装置 |
CN112187698A (zh) * | 2019-07-01 | 2021-01-05 | 云丁网络技术(北京)有限公司 | 通信方法、业务系统、电子设备及其具有的主mcu |
CN112187698B (zh) * | 2019-07-01 | 2023-05-16 | 云丁网络技术(北京)有限公司 | 通信方法、业务系统、电子设备及其具有的主mcu |
CN110442352A (zh) * | 2019-07-23 | 2019-11-12 | 武汉光迅科技股份有限公司 | 一种dsp的代码下载方法和装置 |
CN110442352B (zh) * | 2019-07-23 | 2023-11-07 | 武汉光迅科技股份有限公司 | 一种dsp的代码下载方法和装置 |
CN112269579A (zh) * | 2020-11-02 | 2021-01-26 | 中电凯杰科技有限公司 | 一种基于stm32处理器的编译型plc控制器系统及实现方法 |
Also Published As
Publication number | Publication date |
---|---|
CN106557351B (zh) | 2019-08-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106557351A (zh) | 嵌入式应用程序的数据处理方法及装置 | |
CN107247859B (zh) | 逻辑电路设计的验证方法、装置、电子设备及存储介质 | |
US20160371407A1 (en) | Isolated debugging in an fpga based emulation environment | |
US9959375B2 (en) | Efficient emulation and logic analysis | |
CN104407779B (zh) | 图形界面的排列显示方法及装置 | |
CN103631783B (zh) | 一种前端页面的生成方法及系统 | |
CN104915297B (zh) | 一种android设备的APP耗电量的自动化测试方法 | |
JP6600011B2 (ja) | エミュレーションのための効率的波形生成 | |
CN108170425B (zh) | 一种程序代码的修改方法、修改装置及终端设备 | |
US9286424B1 (en) | Efficient waveform generation for emulation | |
Ahmadi-Pour et al. | The MicroRV32 framework: An accessible and configurable open source RISC-V cross-level platform for education and research | |
Genius et al. | Virtual yet precise prototyping: An automotive case study | |
WO2014003945A1 (en) | User events/behaviors and perceptual computing system emulation | |
Tokunaga et al. | IDF-Autoware: Integrated development framework for ROS-based self-driving systems using MATLAB/Simulink | |
De Boeck et al. | High-level modeling of multimodal interaction techniques using nimmit | |
US20230140470A1 (en) | Image processing method and apparatus for smart pen, and electronic device | |
Klöckner | PyCUDA: Even simpler GPU programming with Python | |
CN115794621A (zh) | 代码覆盖测试方法、装置、设备及存储介质 | |
CN104461249B (zh) | 图形界面的排列显示方法及装置 | |
CN109388445B (zh) | 一种软件示波器输入信号处理方法及装置、软件示波器 | |
CN103593139A (zh) | 一种多单元仿真笔迹协同处理方法和装置 | |
CN112394972B (zh) | 一种云应用发布方法、装置、设备及存储介质 | |
CN104461549B (zh) | 图形界面的排列显示方法及装置 | |
CN103246518A (zh) | 一种基于服务组件架构的组态方法及装置 | |
CN106815084B (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 | ||
CP03 | Change of name, title or address | ||
CP03 | Change of name, title or address |
Address after: No. 3 Gongye West Road, Songshan Lake Park, Dongguan City, Guangdong Province, 523000 Patentee after: Guangdong Gaobiao Intelligent Technology Co.,Ltd. Address before: No.3, Gongye West Road, Songshanhu high tech Industrial Development Zone, Dongguan City, Guangdong Province Patentee before: SHENZHEN GOBAO ELECTRONIC TECHNOLOGY Co.,Ltd. |