CN112306948A - 一种双核打印机节省处理器代码空间的方法 - Google Patents

一种双核打印机节省处理器代码空间的方法 Download PDF

Info

Publication number
CN112306948A
CN112306948A CN201910703556.XA CN201910703556A CN112306948A CN 112306948 A CN112306948 A CN 112306948A CN 201910703556 A CN201910703556 A CN 201910703556A CN 112306948 A CN112306948 A CN 112306948A
Authority
CN
China
Prior art keywords
cpu
mcu
printing
data
printer
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
CN201910703556.XA
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.)
Beijing Ingenic Semiconductor Co Ltd
Original Assignee
Beijing Ingenic Semiconductor Co Ltd
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 Beijing Ingenic Semiconductor Co Ltd filed Critical Beijing Ingenic Semiconductor Co Ltd
Priority to CN201910703556.XA priority Critical patent/CN112306948A/zh
Publication of CN112306948A publication Critical patent/CN112306948A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/177Initialisation or configuration control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/17Interprocessor communication using an input/output type connection, e.g. channel, I/O port

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Abstract

本发明提供一种双核打印机节省处理器代码空间的方法,包括以下步骤:S1,在CPU和MCU的处理过程中添加同步机制,用于保持CPU和MCU工作时处理数据的一致性;S2,CPU控制打印机设备初始化,UART及GPIO初始化;S3,CPU装载数据,通知MCU打印;S4,只负责打印的MCU等待打印数据,接收CPU发出的打印通知,进行打印操作,通知CPU打印完毕继续传送数据;S5,CPU等待打印完成,接收MCU的打印完毕通知和数据;S6,重复以上步骤S3‑S5。

Description

一种双核打印机节省处理器代码空间的方法
技术领域
本发明涉及打印机领域,特别涉及一种双核打印机节省处理器代码空间的方法。
背景技术
随着科技的不断发展,越来越多的智能电子产品在人们的日常生活中。热敏小票打印机是一种常见的打印机设备,通常基于单片机来控制打印头来实现打印功能。目前的技术也有存在双核即双处理器的打印机及相关技术,但是现有技术中双核打印机是存在两个CPU,两个CPU所占用的空间以及完成操作等工作均类似,这样就存在浪费资源和较高成本的问题。
发明内容
为了解决上述现有技术中存在的问题,本发明的目的在于:提供一种方便快捷、具有双核处理器的打印机节省处理器代码空间的方法,从而解决了目前双核打印机在处理、打印作业时,双处理器占用较多空间,影响运行速度,成本较高的问题。
本发明提供一种双核打印机节省处理器代码空间的方法,包括以下步骤:
S1,在CPU和MCU的处理过程中添加同步机制,用于保持CPU和MCU工作时处理数据的一致性;
S2,CPU控制打印机设备初始化,UART及GPIO初始化;
S3,CPU装载数据,通知MCU打印;
S4,只负责打印的MCU等待打印数据,接收CPU发出的打印通知,进行打印操作,通知CPU打印完毕继续传送数据;
S5,CPU等待打印完成,接收MCU的打印完毕通知和数据;
S6,重复以上步骤S3-S5。
还包括将非重复的流程从MCU剥离和迁移到CPU执行。
所述的非重复的流程包括打印机设备初始化,UART及GPIO初始化,打印机卸载,UART及GPIO释放。
所述的CPU操作包括打印机卸载,UART及GPIO释放的控制。
所述添加同步机制,使得MCU的编译文件大小降低一倍。
所述MCU的编译文件大小降低一倍是从400K降低到200K,代码大小优化50%。
本申请的优势在于:可以大幅降低成本,节约资源和空间,速度更快,节省双核其中一核的空间。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,并不构成对本发明的限定。
图1是本发明的方法的流程示意框图。
图2是本发明所涉及方法应用的系统的示意框图。
具体实施方式
目前,本技术领域常用的技术术语包括:
同步:一种计算机术语,一般指的是在两个或多个数据库、文件、模块、线程之间用来保持数据内容一致性的机制。
同步机制:在并发程序设计中,各进程对公共变量的访问必须加以制约,这种制约称为同步。进程的同步是通过同步机制实现的。
UART:通用异步收发传输器,用于通信的一种接口。
GPIO:通用输入输出的简称。
CPU:中央处理器(Central Processing Unit)是一块超大规模的集成电路,是一台计算机的运算核心(Core)和控制核心(Control Unit)。它的功能主要是解释计算机指令以及处理计算机软件中的数据。
MCU:微控制单元(Microcontroller Unit),又称单片微型计算机(Single ChipMicrocomputer)或者单片机,是把中央处理器(Central Process Unit;CPU)的频率与规格做适当缩减,可将内存(memory)、计数器(Timer)、USB、A/D转换、UART、PLC、DMA等周边接口,甚至LCD驱动电路都整合在单一芯片上,形成芯片级的计算机,为不同的应用场合做不同组合控制。
北京君正推出的一款针对物联网的双核(大小核)嵌入式芯片X1000E。北京君正芯片X1000E内部君正芯片X1000E的可编程的MCU:,简称”小核”。北京君正芯片X1000E的主CPU,简称”大核”
例如,北京君正的X1000E芯片是针对物联网领域的一款芯片,针对热敏打印机市场,北京君正开发了一套基于君正芯片的打印机驱动。X1000E芯片有两个处理器核心,分为大小核,即主CPU(大核)和MCU(小核)。CPU负责准备和传输数据,MCU负责打印。双核协作来共同完成打印任务。
本申请涉及的双核打印机操作方法,可以包括:
1)MCU主要工作流程是:打印机设备初始化,UART及GPIO初始化,等待打印数据,打印,通知主CPU打印完毕继续传送数据,打印机卸载,UART及GPIO释放。
2)主CPU主要工作流程是:装载数据,通知MCU打印,等待打印完成,继续装载数据。
但由于MCU代码段空间只有4K,打印机控制流程及算法又非常复杂,而编译出来的烧录文件超出了4K,导致无法使用,因此必须对代码进行重新架构设计。
为了减少MCU的代码使用空间,对打印代码进行了重新组织,把MCU的打印机设备初始化,UART及GPIO初始化,打印机卸载,UART及GPIO释放等非重复的流程剥离和迁移到主CPU执行,这样可以大大减少MCU代码段的大小,使代码可以在小于4K的空间上实现打印的功能,同时添加了同步机制,可以把MCU的编译文件大小从400多k降低到200多k,代码大小优化了50%。
为了实现双核打印机节省处理器代码空间的目的,如图1所示,本申请提出了一种双核打印机节省处理器代码空间的方法,包括以下步骤:
S1,在CPU和MCU的处理过程中添加同步机制,用于保持CPU和MCU工作时处理数据的一致性;
S2,CPU控制打印机设备初始化,UART及GPIO初始化;
S3,CPU装载数据,通知MCU打印;
S4,只负责打印的MCU等待打印数据,接收CPU发出的打印通知,进行打印操作,通知CPU打印完毕继续传送数据;
S5,CPU等待打印完成,接收MCU的打印完毕通知和数据;
S6,重复以上步骤S3-S5。
还包括将非重复的流程从MCU剥离和迁移到CPU执行。
所述的非重复的流程包括打印机设备初始化,UART及GPIO初始化,打印机卸载,UART及GPIO释放。
所述的CPU操作包括打印机卸载,UART及GPIO释放的控制。
所述添加同步机制,使得MCU的编译文件大小降低一倍。
所述MCU的编译文件大小降低一倍是从400K降低到200K,代码大小优化50%。
如图2所示,为使用上述方的对应系统的示意框图,所述系统包括控制模块、机械模块、功能按键、设备电路、打印机头、耗材和介质,所述设备电路与机械模块、控制模块、功能按键、打印机头、耗材和介质连接,还包括两个处理器,一个是负责准备和传输数据的CPU,另外一个是只负责打印操作的MCU,其中CPU和MCU连接并协作共同完成打印任务,且将与打印过程无关的准备过程代码从MCU中剥离出来迁移到CPU执行,CPU和MCU连接各自对应的介质和接口。
所述的准备过程包括设备初始化,GPIO初始化、UART初始化、设置。
还包括将非重复的流程从MCU剥离和迁移到CPU执行。
所述的非重复的流程包括打印机设备初始化,UART及GPIO初始化,打印机卸载,UART及GPIO释放。
所述的MCU的工作流程是:等待打印数据,打印,通知CPU打印完毕继续传送数据。
所述的CPU的工作流程是:打印机设备初始化,UART及GPIO初始化,装载数据,通知MCU打印,等待打印完成,继续装载数据,打印机卸载,UART及GPIO释放。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明实施例可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (6)

1.一种双核打印机节省处理器代码空间的方法,其特征在于,包括以下步骤:
S1,在CPU和MCU的处理过程中添加同步机制,用于保持CPU和MCU工作时处理数据的一致性;
S2,CPU控制打印机设备初始化,UART及GPIO初始化;
S3,CPU装载数据,通知MCU打印;
S4,只负责打印的MCU等待打印数据,接收CPU发出的打印通知,进行打印操作,通知CPU打印完毕继续传送数据;
S5,CPU等待打印完成,接收MCU的打印完毕通知和数据;
S6,重复以上步骤S3-S5。
2.根据权利要求1所述的一种双核打印机节省处理器代码空间的方法,其特征在于,还包括将非重复的流程从MCU剥离和迁移到CPU执行。
3.根据权利要求2所述的一种双核打印机节省处理器代码空间的方法,其特征在于,所述的非重复的流程包括打印机设备初始化,UART及GPIO初始化,打印机卸载,UART及GPIO释放。
4.根据权利要求1所述的一种双核打印机节省处理器代码空间的方法,其特征在于,所述的CPU操作包括打印机卸载,UART及GPIO释放的控制。
5.根据权利要求1所述的一种双核打印机节省处理器代码空间的方法,其特征在于,所述添加同步机制,使得MCU的编译文件大小降低一倍。
6.根据权利要求5所述的一种双核打印机节省处理器代码空间的方法,其特征在于,所述MCU的编译文件大小降低一倍是从400K降低到200K,代码大小优化50%。
CN201910703556.XA 2019-07-31 2019-07-31 一种双核打印机节省处理器代码空间的方法 Pending CN112306948A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910703556.XA CN112306948A (zh) 2019-07-31 2019-07-31 一种双核打印机节省处理器代码空间的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910703556.XA CN112306948A (zh) 2019-07-31 2019-07-31 一种双核打印机节省处理器代码空间的方法

Publications (1)

Publication Number Publication Date
CN112306948A true CN112306948A (zh) 2021-02-02

Family

ID=74486341

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910703556.XA Pending CN112306948A (zh) 2019-07-31 2019-07-31 一种双核打印机节省处理器代码空间的方法

Country Status (1)

Country Link
CN (1) CN112306948A (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5317726A (en) * 1987-11-09 1994-05-31 Tandem Computers Incorporated Multiple-processor computer system with asynchronous execution of identical code streams
CN101398804A (zh) * 2007-09-29 2009-04-01 深圳迈瑞生物医疗电子股份有限公司 一种具有打印驱动功能的设备及实现打印驱动的方法
CN109284074A (zh) * 2018-07-25 2019-01-29 百富计算机技术(深圳)有限公司 一种基于多核系统的打印驱动方法、多核系统及终端设备

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5317726A (en) * 1987-11-09 1994-05-31 Tandem Computers Incorporated Multiple-processor computer system with asynchronous execution of identical code streams
CN101398804A (zh) * 2007-09-29 2009-04-01 深圳迈瑞生物医疗电子股份有限公司 一种具有打印驱动功能的设备及实现打印驱动的方法
CN109284074A (zh) * 2018-07-25 2019-01-29 百富计算机技术(深圳)有限公司 一种基于多核系统的打印驱动方法、多核系统及终端设备

Similar Documents

Publication Publication Date Title
CN1240019C (zh) 将usb设备连接至usb总线的单连接点的装置和方法
KR101664322B1 (ko) 컴퓨팅 디바이스 및 그 시동 방법
US20110122436A1 (en) Printing apparatus and processing method therefor
EP1337922B1 (en) Extension for the advanced microcontroller bus architecture (amba)
US7467308B2 (en) Method for transmitting the system command of a computer system
US9552050B2 (en) Information processing device, printing device, and control method
US7398378B2 (en) Allocating lower priority interrupt for processing to slave processor via master processor currently processing higher priority interrupt through special interrupt among processors
US5905912A (en) System for implementing peripheral device bus mastering in a computer using a list processor for asserting and receiving control signals external to the DMA controller
CN117321580A (zh) 无缝集成的微控制器芯片
CN112131176A (zh) 一种基于pcie的fpga快速局部重构方法
CN107463224B (zh) 显卡扩展板及应用其的主机、计算设备
CN110704116A (zh) 基于嵌入式处理器的一机多屏系统的实现方法
CN114328357A (zh) 用于裸芯的互联通信方法、系统和集成合封芯片
CN112306948A (zh) 一种双核打印机节省处理器代码空间的方法
US20200225722A1 (en) Power management of discrete communication port components
CN112306423A (zh) 一种双处理单元实现打印机操作的系统
CN112306422A (zh) 一种优化热敏小票打印机的打印解决方法
CN110401939B (zh) 一种低功耗蓝牙控制器链路层装置
CN111427806A (zh) 一种双核amp系统共用串口的方法、存储介质及智能终端
CN104981814A (zh) 安全协处理器引导性能
US7945919B2 (en) Information processing apparatus and device controller driving/controlling method
US7293167B2 (en) Method and apparatus for driving a non-native SATA hard disk
US8643861B2 (en) Image processing apparatus, data processing method of image processing apparatus, and storage medium for performing multitask processing and single task processing while interpreting PDL data
CN112631975B (zh) 基于Linux的SPI传输方法
KR20070024600A (ko) 호스트 제어기 및 그 동작 방법

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