CN108268290A - 基于Linux系统的串口除颤方法 - Google Patents
基于Linux系统的串口除颤方法 Download PDFInfo
- Publication number
- CN108268290A CN108268290A CN201711322366.0A CN201711322366A CN108268290A CN 108268290 A CN108268290 A CN 108268290A CN 201711322366 A CN201711322366 A CN 201711322366A CN 108268290 A CN108268290 A CN 108268290A
- Authority
- CN
- China
- Prior art keywords
- serial ports
- character
- character string
- shell scripts
- defibrillation
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/72—Code refactoring
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Electrotherapy Devices (AREA)
Abstract
本发明揭示了基于Linux系统的串口除颤方法,包括如下步骤:启动依赖配置文件引导系统运行,在Linux系统任意用户的启动依赖配置文件中添加过滤shell脚本,过滤shell脚本位于启动依赖配置文件的末端;重启系统,重启系统后过滤shell脚本生效;Linux系统的串口除颤,过滤Shell脚本过滤掉串口输入的非法字符或非法字符串。本发明采用嵌入式系统中的脚本技术来达到除颤目的,无需采用传统的修改串口驱动的方式,解锁字符或解锁字符串未在代码中固定,可增添修改,灵活性强,适用性强。维护性强,shell语言语法简单,修改后无需重新编译。省去了繁杂的开发过程,不需要对大量的源代码进行修改,节省开发时间及降低开发难度,节省了人力成本。
Description
技术领域
本发明涉及基于Linux系统的串口除颤方法,属于脚本嵌入的技术领域。
背景技术
目前,涉及Linux平台产品较为普及,Linux平台下的串口防干扰成为一个比较紧迫的问题。
现有技术中,是在VxWorks系统下修改VxWorks源码,将串口驱动源程序修改完以后,编译成一个libdrv.a,再在应用程序开发前,将该libdrv.a复制到VxWorks系统的特定路径下替换旧的相应文件,然后和应用程序、bsp等合起来编译成一个可执行程序。
过程复杂,一旦忘记提前将该库函数复制到特定目录下,则生产的程序无法进行串口的防干扰,另外,由于libdrv.a是一个目标文件,只适用于某一种CPU或某一类CPU核,如果产品更新CPU,需要对该库进行重新编译,通用性较差。
发明内容
本发明的目的是解决上述现有技术的不足,传统的除颤方法通用性差的问题,提供基于Linux系统的串口除颤方法。
为了达到上述目的,本发明所采用的技术方案为:
基于Linux系统的串口除颤方法,包括如下步骤:
步骤a,启动依赖配置文件引导系统运行
在Linux系统任意用户的启动依赖配置文件中添加过滤shell脚本,过滤shell脚本位于启动依赖配置文件的末端;
步骤b,重启系统
重启系统后过滤shell脚本生效;
步骤c,Linux系统的串口除颤
过滤Shell脚本过滤掉串口输入的非法字符或非法字符串。
优选地,所述步骤a中,所述过滤shell脚本中具有解锁字符或解锁字符串清单。
优选地,所述步骤c细分如下:
步骤101,系统运行;
步骤102,串口接收到字符串或字符;
步骤103,过滤shell脚本对串口接收到的字符或字符串进行过滤,
如果串口接收到的字符或字符串在解锁字符或解锁字符串清单中,则通过,
如果串口接收到的字符或字符串不在解锁字符或解锁字符串清单中,则丢弃。
本发明的有益效果主要体现在:
1.采用嵌入式系统中的脚本技术来达到除颤目的,无需采用传统的修改串口驱动的方式,解锁字符或解锁字符串未在代码中固定,可增添修改,灵活性强。
2.适用性强,不限于特定的CPU,也不限于其他硬件,也不限定特定的Linux系统,仅需要满足脚本运行即可。
3.维护性强,shell语言语法简单,修改后无需重新编译。
4.省去了繁杂的开发过程,不需要对大量的源代码进行修改,节省开发时间及降低开发难度,节省了人力成本。
附图说明
图1是本发明基于Linux系统的串口除颤方法中过滤shell脚本的植入位置示意图。
图2是本发明基于Linux系统的串口除颤方法的除颤流程示意图。
具体实施方式
本发明提供基于Linux系统的串口除颤方法。以下结合附图对本发明技术方案进行详细描述,以使其更易于理解和掌握。
基于Linux系统的串口除颤方法,包括如下步骤:
步骤a,启动依赖配置文件引导系统运行
首先需要编写过滤shell脚本,过滤shell脚本中具有解锁字符或解锁字符串清单。然后在Linux系统任意用户的启动依赖配置文件中添加过滤shell脚本,过滤shell脚本位于启动依赖配置文件的末端,并且进行相应调试,其中启动依赖配置文件即为.profile。
步骤b,重启系统
当过滤shell脚本调试成功后,重启系统过滤shell脚本即自动生效。
步骤c,Linux系统的串口除颤
过滤Shell脚本过滤掉串口输入的非法字符,所谓非法字符即不在解锁字符或解锁字符串清单中的非法字符或非法字符串。
对步骤c进行细化描述,其包括以下步骤:
步骤101,系统运行;
步骤102,串口接收到字符串或字符;
步骤103,过滤shell脚本对串口接收到的字符或字符串进行过滤,
如果串口接收到的字符或字符串在解锁字符或解锁字符串清单中,则通过,
如果串口接收到的字符或字符串不在解锁字符或解锁字符串清单中,则丢弃。
通过以上描述可以发现,本发明基于Linux系统的串口除颤方法,采用嵌入式系统中的脚本技术来达到除颤目的,无需采用传统的修改串口驱动的方式,解锁字符或解锁字符串未在代码中固定,可增添修改,灵活性强。适用性强,不限于特定的CPU,也不限于其他硬件,也不限定特定的Linux系统,仅需要满足脚本运行即可。维护性强,shell语言语法简单,修改后无需重新编译。省去了繁杂的开发过程,不需要对大量的源代码进行修改,节省开发时间及降低开发难度,节省了人力成本。
以上对本发明的技术方案进行了充分描述,需要说明的是,本发明的具体实施方式并不受上述描述的限制,本领域的普通技术人员依据本发明的精神实质在结构、方法或功能等方面采用等同变换或者等效变换而形成的所有技术方案,均落在本发明的保护范围之内。
Claims (3)
1.基于Linux系统的串口除颤方法,其特征在于包括如下步骤:
步骤a,启动依赖配置文件引导系统运行
在Linux系统任意用户的启动依赖配置文件中添加过滤shell脚本,过滤shell脚本位于启动依赖配置文件的末端;
步骤b,重启系统
重启系统后过滤shell脚本生效;
步骤c,Linux系统的串口除颤
过滤Shell脚本过滤掉串口输入的非法字符或非法字符串。
2.根据权利要求1所述的基于Linux系统的串口除颤方法,其特征在于:
所述步骤a中,所述过滤shell脚本中具有解锁字符或解锁字符串清单。
3.根据权利要求2所述的基于Linux系统的串口除颤方法,其特征在于所述步骤c细分如下:
步骤101,系统运行;
步骤102,串口接收到字符串或字符;
步骤103,过滤shell脚本对串口接收到的字符或字符串进行过滤,
如果串口接收到的字符或字符串在解锁字符或解锁字符串清单中,则通过,
如果串口接收到的字符或字符串不在解锁字符或解锁字符串清单中,则丢弃。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711322366.0A CN108268290A (zh) | 2017-12-13 | 2017-12-13 | 基于Linux系统的串口除颤方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711322366.0A CN108268290A (zh) | 2017-12-13 | 2017-12-13 | 基于Linux系统的串口除颤方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108268290A true CN108268290A (zh) | 2018-07-10 |
Family
ID=62771840
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711322366.0A Pending CN108268290A (zh) | 2017-12-13 | 2017-12-13 | 基于Linux系统的串口除颤方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108268290A (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103049259A (zh) * | 2012-12-07 | 2013-04-17 | 北京百度网讯科技有限公司 | 用于呈现表示输入进度的图形对象的方法、装置与设备 |
CN103064751A (zh) * | 2012-12-27 | 2013-04-24 | 中航(苏州)雷达与电子技术有限公司 | 一种消除航空电子设备rs232串口干扰的方法 |
-
2017
- 2017-12-13 CN CN201711322366.0A patent/CN108268290A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103049259A (zh) * | 2012-12-07 | 2013-04-17 | 北京百度网讯科技有限公司 | 用于呈现表示输入进度的图形对象的方法、装置与设备 |
CN103064751A (zh) * | 2012-12-27 | 2013-04-24 | 中航(苏州)雷达与电子技术有限公司 | 一种消除航空电子设备rs232串口干扰的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103412561A (zh) | 一种汽车控制器的刷新方法及装置 | |
CN102831022B (zh) | 修改系统配置的方法和装置 | |
CN102819442B (zh) | 一种嵌入式设备程序烧写的方法及系统 | |
CN105893090A (zh) | 一种嵌入式系统bootrom和应用程序升级方法 | |
CN102163167A (zh) | 系统拯救的方法及装置 | |
CN104199691A (zh) | 一种基于安卓平台的开机自启动apk的方法及终端 | |
CN107145282A (zh) | 基于安卓操作系统的智能设备的刷机方法和装置 | |
CN111801731B (zh) | 语音控制方法、语音控制装置以及计算机可执行非易失性存储介质 | |
CN110706703A (zh) | 一种语音唤醒方法、装置、介质和设备 | |
CN105912365A (zh) | 一种移动终端系统更新方法及系统 | |
CN108037932B (zh) | Spi-nand的配置文件获取方法和装置 | |
CN107071570A (zh) | 一种机顶盒升级方法及装置 | |
CN104460406A (zh) | 单线通信的方法及基于单线通信的单片机固件升级方法 | |
CN108268290A (zh) | 基于Linux系统的串口除颤方法 | |
CN112930664B (zh) | 地址信息处理方法、装置、电子设备及存储介质 | |
US20150323975A1 (en) | SYNCHRONIZATION OF ACTIVITY OF MULTIPLE SUBSYSTEMS IN A SoC TO SAVE STATIC POWER | |
CN110851297A (zh) | 一种接口抖动状态的处理方法、装置、系统及介质 | |
CN102982260A (zh) | 一种Linux操作系统及其安装序列号验证方法 | |
CN110427505A (zh) | 一种批量数据导入图像数据库的方法和装置 | |
CN109165037A (zh) | 一种基于串口处理器的程序在线更新方法及系统 | |
WO2013056555A1 (zh) | 制作用户终端分区的方法、装置和用户终端 | |
JP2000242484A (ja) | 制御プログラムの変更方法 | |
CN113031944B (zh) | 基于模板的业务开通装置及方法 | |
CN103793250B (zh) | 嵌入式系统的快速安全启动装置以及启动方法 | |
CN203102252U (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180710 |
|
RJ01 | Rejection of invention patent application after publication |