CN102981860A - 一种嵌入式无线通信终端上执行Lua脚本的方法及装置 - Google Patents

一种嵌入式无线通信终端上执行Lua脚本的方法及装置 Download PDF

Info

Publication number
CN102981860A
CN102981860A CN 201210523794 CN201210523794A CN102981860A CN 102981860 A CN102981860 A CN 102981860A CN 201210523794 CN201210523794 CN 201210523794 CN 201210523794 A CN201210523794 A CN 201210523794A CN 102981860 A CN102981860 A CN 102981860A
Authority
CN
China
Prior art keywords
communication terminal
lua script
script
radio communication
wireless communication
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.)
Pending
Application number
CN 201210523794
Other languages
English (en)
Inventor
秦鹏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Priority to CN 201210523794 priority Critical patent/CN102981860A/zh
Publication of CN102981860A publication Critical patent/CN102981860A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

本发明涉及嵌入式无线通信终端,公开了一种嵌入式无线通信终端上执行Lua脚本的方法及装置。本发明通过在嵌入式无线通信终端上增加Lua脚本处理模块;并在终端启动的时候检测初始化FALSH是否成功,启动Bootloader和执行C语言系统库的main函数进行初始化C语言运行环境;然后检测当前是否需要加载Lua脚本,对Lua脚本进行语法检查后再执行Lua脚本。这样就实现了在嵌入式无线通信终端中执行Lua脚本的方法及其装置,使得开发人员对嵌入式无线通信终端编程处理更加灵活。

Description

一种嵌入式无线通信终端上执行Lua脚本的方法及装置
技术领域
本发明涉及无线嵌入式无线通信终端,特别涉及一种嵌入式无线通信终端上执行Lua脚本的方法及装置。
背景技术
目前国内对嵌入式系统的普遍定义为:以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗等严格要求的专用计算机系统。
这些年来,随着芯片技术的飞速发展,单个芯片具有越来越强的处理能力,而且使集成多种接口成为可能。
同时由于应用需求的增加,嵌入式系统也逐渐从早期的纯硬件实现转变为越来越多的软硬件结合,甚至越来越多的依赖于软件的实现。
现有技术中,一个典型的嵌入式系统架构主要包括三个部分:
底层硬件:通常需要一个微处理器(可能是单片机、ARM或者DSP等)、存储、调试接口以及应用所需的其他硬件(如键盘、LED等);
系统软件层:通常包括一个实时操作系统、设备的驱动程序、可选的TCP/IP通讯协议栈、以及一些标准的C系统库;
应用程序层:通常是客户根据实际应用需求而自行开发的软件。
现有技术下的系统框架图如图1所示:
整个系统包括上层应用程序、操作系统、C语言系统库、驱动程序、TCP/IP协议栈和底层硬件等模块。
上层应用程序完成终端用户的各种应用任务;操作系统模块完成基本的控制指令和数据指令的执行;C语言系统库负责和驱动程序交互操作底层硬件,TCP/IP协议栈完成通信协议的解析和执行。
考虑到嵌入式系统资源的限制(存储少、功耗要求高、CPU能力有限),通常上层应用程序的开发都是由汇编或者C语言来完成。
但是由C语言开发的程序一旦固化在芯片上,出厂后不方便修改,无法像脚本语言一样被加载执行。
发明内容
本发明的目的在于提供一种嵌入式无线通信终端上执行Lua(Lua是一个小巧的脚本语言)脚本的方法,以及提供执行该方法的装置。
为解决上述技术问题,本发明的实施方式提供了一种嵌入式无线通信终端上执行Lua脚本的方法及装置,在现有嵌入式无线通信终端组成结构的基础上增加Lua脚本处理程序来处理Lua脚本,如图2所示。
该方法中的嵌入式无线通信终端的组成包括:各种完成用户交互的上层应用程序;承载终端运行的操作系统层;C语言系统库负责终端开机和完成各种指令的执行;Lua脚本处理程序负责完成加载嵌入式无线通信终端中的Lua脚本并执行Lua脚本;终端中的TCP/IP协议栈承担嵌入式无线通信终端的通信任务;驱动程序负责完成与底层硬件的交互。
在嵌入式无线通信终端开机时,先初始化终端FLASH,确保FLASH初始化成功时,启动终端的BootLoader程序;然后执行C语言系统库的main函数;在main函数中检测当前是否存在Lua脚本指针回调函数,当发现存在Lua脚本时,对脚本代码进行语法检查并执行此脚本;当执行完脚本后返回C语言系统库继续执行嵌入式无线通信终端的其他指令和数据。
 
本发明通过在嵌入式无线通信终端上增加Lua脚本处理模块;并在终端启动的时候检测初始化FALSH是否成功,启动Bootloader和执行C语言系统库的main函数进行初始化C语言运行环境;然后检测当前是否需要加载Lua脚本,对Lua脚本进行语法检查后再执行脚本。
这样就实现了在嵌入式无线通信终端中执行Lua脚本的方法及其装置,使得开发人员对嵌入式无线通信终端编程处理更加灵活。
附图说明
图1是现有技术中的系统框图;
图2是根据本发明实施方式的系统框图;
图3是根据本发明实施方式中的终端启动流程的流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明的实施方式进行详细的阐述。然而,本领域的普通技术人员可以理解,在本发明实施方式中,为了使读者更好地理解本申请而提出了许多技术细节。但是,即使没有这些技术细节和基于以下实施方式的种种变化和修改,也可以实现本申请各权利要求所要求保护的技术方案。
本发明的实施方式涉及一种嵌入式无线通信终端上执行Lua脚本的装置,具体如图2所示:
该方法中的嵌入式无线通信终端的组成包括:各种完成用户交互的上层应用程序;承载终端运行的操作系统层;C语言系统库负责终端开机和完成各种指令的执行;Lua脚本处理程序负责完成加载在嵌入式无线通信终端中的Lua脚本;终端中的TCP/IP协议栈承担嵌入式无线通信终端的通信任务;驱动程序负责完成与底层硬件的交互。
本发明的实施方式还涉及一种嵌入式无线通信终端上执行Lua脚本的方法,具体如图3所示,包含以下步骤:
步骤301,嵌入式无线通信终端开机。
步骤302,初始化终端FALSH系统。
由于终端FALSH系统中保存了整个终端所有的指令和用户数据,同样也保存这Lua脚本。
所以必须初始化成功才能执行下一步步骤。
步骤303,判断终端FLASH系统是否初始化成功。
如果初始化成功,执行步骤304进行后续流程;否则返回步骤302重试。
步骤304,启动终端的Bootloader搬运开机数据。
步骤305,执行C系统库main函数。
由于嵌入式无线通信终端的底层语言都是由C语言实现的,所以嵌入式无线通信终端最初都要执行C系统库的main函数准备C语言环境,为后续执行指令做准备。
步骤306,检测Lua脚本回调函数。
当嵌入式无线通信终端需要执行Lua脚本时,会把Lua脚本放在FLASH上的一个固定的内存地址上,此时该地址会被设置成一个回调函数,该回调函数指向Lua脚本的入口。
步骤307,判断嵌入式无线通信终端中是否存放Lua脚本?如果有Lua脚本,执行步骤308;否则执行步骤311。
步骤308,当发现嵌入式无线通信终端FLASH中存在Lua脚本时,对Lua脚本进行语法检查。
只有当脚本的语法没有错误时,此脚本才能够被正确执行。
步骤309,判断Lua脚本的语法是否符合规则。
如果符合脚本规则,执行步骤310;否则执行步骤311。
步骤310,经判断发现Lua脚本的语法符合规则时,在此步骤中执行Lua脚本。
步骤311,当在步骤310中执行完脚本,或者在步骤309中发现脚本语法错误不能执行脚本时,执行到此步骤。
在此步骤中,继续执行终端其他C语言指令。
上述步骤,即完成了在嵌入式无线通信终端上增加Lua脚本处理模块;并在终端启动的时候检测初始化FALSH是否成功,启动Bootloader和执行C语言系统库的main函数进行初始化C语言运行环境;然后检测当前是否需要加载Lua脚本,对Lua脚本进行语法检查后再执行Lua脚本。这样就实现了在嵌入式无线通信终端中执行Lua脚本的方法及其装置,使得开发人员对嵌入式无线通信终端编程处理更加灵活。
上面各种方法的步骤划分,只是为了描述清楚,实现时可以合并为一个步骤或者对某些步骤进行拆分,分解为多个步骤,只要包含相同的逻辑关系,都在本专利的保护范围内;对算法中或者流程中添加无关紧要的修改或者引入无关紧要的设计,但不改变其算法和流程的核心设计都在该专利的保护范围内。
值得一提的是,本实施方式中所涉及到的各模块均为逻辑模块,在实际应用中,一个逻辑单元可以是一个物理单元,也可以是一个物理单元的一部分,还可以以多个物理单元的组合实现。此外,为了突出本发明的创新部分,本实施方式中并没有将与解决本发明所提出的技术问题关系不太密切的单元引入,但这并不表明本实施方式中不存在其它的单元。本领域的普通技术人员可以理解,上述各实施方式是实现本发明的具体实施例,而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和范围。

Claims (2)

1.一种嵌入式无线通信终端上执行Lua脚本的方法,其特征在于,包含以下步骤:
嵌入式无线通信终端在执行完C系统main函数后,检查当前终端FALSH中是否存在Lua脚本;
如果存在Lua脚本,则检查该脚本的语法是否正确;
执行语法正确的脚本,不执行语法错误的脚本;
返回C语言系统环境继续执行后续指令。
2.一种嵌入式无线通信终端上执行Lua脚本的装置,其特征在于:在现有嵌入式无线通信终端的基础上增加Lua脚本处理模块。
CN 201210523794 2012-12-08 2012-12-08 一种嵌入式无线通信终端上执行Lua脚本的方法及装置 Pending CN102981860A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 201210523794 CN102981860A (zh) 2012-12-08 2012-12-08 一种嵌入式无线通信终端上执行Lua脚本的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 201210523794 CN102981860A (zh) 2012-12-08 2012-12-08 一种嵌入式无线通信终端上执行Lua脚本的方法及装置

Publications (1)

Publication Number Publication Date
CN102981860A true CN102981860A (zh) 2013-03-20

Family

ID=47855924

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 201210523794 Pending CN102981860A (zh) 2012-12-08 2012-12-08 一种嵌入式无线通信终端上执行Lua脚本的方法及装置

Country Status (1)

Country Link
CN (1) CN102981860A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109358839A (zh) * 2017-12-29 2019-02-19 广州Tcl智能家居科技有限公司 一种嵌入式单片机软件开发的方法及存储介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109358839A (zh) * 2017-12-29 2019-02-19 广州Tcl智能家居科技有限公司 一种嵌入式单片机软件开发的方法及存储介质
CN109358839B (zh) * 2017-12-29 2022-09-02 深圳Tcl新技术有限公司 一种嵌入式单片机软件开发的方法及存储介质

Similar Documents

Publication Publication Date Title
US8555280B2 (en) Terminal device of non-android platform for executing android applications, and computer readable recording medium for storing program of executing android applications on non-android platform
US7805707B2 (en) System and method for preparing runtime checks
CN110046479B (zh) 一种基于安卓操作系统的链接库文件反调试方法及装置
CN105204913A (zh) 一种在Android操作系统上运行Linux应用程序的方法及系统
US8464230B2 (en) Methods and systems to implement non-ABI conforming features across unseen interfaces
CN102915247A (zh) Apk插件化管理方法
CN109358839B (zh) 一种嵌入式单片机软件开发的方法及存储介质
CN106796521B (zh) 独立于产品发布的api版本控制
CA2376327C (en) Executing native code in place of non-native code
US8141042B2 (en) Extending portability of java code through the use of AOP
CN101267623A (zh) 一种手机启动引导的构建方法
US20060252406A1 (en) System and method for providing bundle group termination in an OSGi service platform
US20170102955A1 (en) Software platform for embedded systems
CN106598647A (zh) 一种智能装置开发平台
CN104598267A (zh) 应用的调起方法及装置
CN112631915B (zh) 一种pcie设备软件仿真的方法、系统、设备及介质
CN111381816A (zh) 应用程序的获取方法、装置、设备及存储介质
CN102981860A (zh) 一种嵌入式无线通信终端上执行Lua脚本的方法及装置
CN112596751B (zh) 应用程序安装包的编译方法、终端、服务器及存储介质
CN112559336B (zh) 自适应调试异构计算芯片的方法、装置、系统及主板芯片
WO2017128589A1 (zh) 可运行文件生成方法、art虚拟机运行方法和装置
CN109947476B (zh) 一种运行时栈空间的统计方法及系统
CN104281443B (zh) 利用tcm实现代码、数据替换的方法
CN112463262A (zh) 一种安卓系统gps模块自适应方法及终端
CN106919436B (zh) Dalvik虚拟机实现多任务的方法、装置及虚拟机

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20130320