CN112486894A - 一种基于4g+mcu双系统的数据高速处理方法 - Google Patents
一种基于4g+mcu双系统的数据高速处理方法 Download PDFInfo
- Publication number
- CN112486894A CN112486894A CN202011510752.4A CN202011510752A CN112486894A CN 112486894 A CN112486894 A CN 112486894A CN 202011510752 A CN202011510752 A CN 202011510752A CN 112486894 A CN112486894 A CN 112486894A
- Authority
- CN
- China
- Prior art keywords
- mcu
- data
- processing method
- method based
- dual system
- 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
- 230000009977 dual effect Effects 0.000 title claims abstract description 20
- 238000003672 processing method Methods 0.000 title claims abstract description 18
- 238000004891 communication Methods 0.000 claims abstract description 20
- 230000005540 biological transmission Effects 0.000 claims description 7
- 238000000034 method Methods 0.000 claims description 7
- 238000011010 flushing procedure Methods 0.000 claims description 3
- 230000004044 response Effects 0.000 abstract description 3
- 238000012545 processing Methods 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 7
- 230000002457 bidirectional effect Effects 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 230000000903 blocking effect Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations 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/163—Interprocessor communication
- G06F15/17—Interprocessor 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)
- Communication Control (AREA)
Abstract
一种基于4G+MCU双系统的数据高速处理方法,涉及车载控制器的数据处理技术领域。本发明是为了解决TBOX利用MCU进行CAN通信会导致4G通信与CAN刷写在双系统上响应速度慢的问题。本发明所述的一种基于4G+MCU双系统的数据高速处理方法,采用SPI+UART双通道的方式进行通信,MCU依序向每个存储部分存储数据,判断第i个部分的数据是否存满,是则MCU通过CAN总线对第i个部分中存储的数据进行刷写,否则等待1ms之后再判断。当刷写完成后,判断i是否等于N,是则继续返回第一个部分进行存储,否则使i=i+1,然后继续判断第i个部分的数据是否存满。
Description
技术领域
本发明属于车载控制器的数据处理技术领域。
背景技术
FOTA(远程固件升级)近几年在车载领域的应用越来越广泛,功能也越来越重要。FOTA解决了整车控制器一旦出现问题,只能回4S店维修的难题。还能够通过云端对整车控制器进行升级,从而修复产品故障。上述功能主要集成在TBOX(远程信息处理箱)产品上,TBOX从云端将需要升级的程序下载,然后通过CAN总线对控制器进行程序升级。TBOX使用的方案一般是主CPU自带CAN总线,这样既方便利用4G下载数据,也方便数据的CAN刷写。随着整车成本的降低,TBOX为了节省一颗CPU,利用4G模组进行软件开发,但是由于4G模组没有CAN总线接口,所以只能再选取一颗MCU进行CAN通信。CPU变成了MCU成本大幅降低,可是由此会导致4G通信与CAN刷写在双系统上很难做到高速响应。
发明内容
本发明是为了解决TBOX利用MCU进行CAN通信会导致4G通信与CAN刷写在双系统上响应速度慢的问题,现提供一种基于4G+MCU双系统的数据高速处理方法。
一种基于4G+MCU双系统的数据高速处理方法,4G模组CPU与MCU之间利用UART+SPI双通道的通信方式进行通信,数据高速处理方法具体如下:
初始化:将MCU中的RAM区域分为有序的N个存储部分,N大于等于2,
步骤一:MCU依序向每个存储部分存储数据,
步骤二:判断第i个部分的数据是否存满,其中i的初始值为1,是则执行步骤三,否则执行步骤四,
步骤三:MCU通过CAN总线对第i个部分中存储的数据进行刷写,当刷写完成后执行步骤五,
步骤四:等待1ms,然后返回步骤二,
步骤五:判断i是否等于N,是则使i=1,然后返回步骤一,否则使i=i+1,然后返回步骤二。
上述SPI通道用于将数据从MCU发送至4G模组CPU,UART通道用于将数据从4G模组CPU发送至MCU。
本发明所述的一种基于4G+MCU双系统的数据高速处理方法,采用SPI+UART双通道的方式进行通信,实测数据通信量比SPI与UART同时工作时,效率提高1.2倍。
附图说明
图1为4G与CAN总线都在CPU上的TBOX框图;
图2为4G与CAN总线分别在CPU和MCU上的TBOX框图;
图3为基于UART+SPI双通道的TBOX框图;
图4为匹配电阻20欧姆时UART传输示意图;
图5为MCU的数据存储及刷写示意图;
图6为具体实施方式一所述一种基于4G+MCU双系统的数据高速处理方法流程图。
具体实施方式
图1是高成本TBOX的框图,其中4G与CAN总线都在CPU系统内;图2是低成本TBOX的框图,其中4G与CAN总线分别在CPU和MCU上。低成本TBOX引入的问题是4G下载的程序需要传达到MCU端,再由MCU把程序刷写到CAN总线上。在刷写过程中要求总线延迟不能超过50ms,否则会导致总线错误,最终刷写失败。除去MCU自身的延迟10ms左右,就要求MCU与CPU之间的数据交互不能超过40ms,这给数据交互带来了极大的难度。
由于MCU自身只有64K的RAM用于数据存储,而一个控制器的程序一般在200M左右。由于存储空间不足,MCU无法一次全部接收控制器程序,所以只能采取部分接收原则,即:收到一部分再通过CAN刷写一部分。然后继续接收,继续CAN刷写,直到刷写结束。这就需要将200M的程序分成多段进行发送,MCU收到单独段的程序后,用CAN总线刷写控制器,刷写完毕后再通知CPU,继续获取下一段程序。整个过程需要连续无间断,且延迟小于40ms。
为了解决上述问题,参照图3至图6具体说明本实施方式,本实施方式所述的一种基于4G+MCU双系统的数据高速处理方法,4G模组CPU与MCU之间利用UART+SPI双通道的通信方式进行通信。SPI通道与UART通道都是双向的,两者都可以做到MCU与CPU之间的双向交互,但由于数据量大,而且要求延时极低,所以本实施方式采用SPI+UART双通道的方式进行通信,如图3所示。
SPI的特点是双向同时通信,而且通信速度远高于UART;缺点是SPI属于主从方式通信,而由于硬件固有限值,MCU端只能做主栈,带来的问题就是无法第一时间获得来自4G模组CPUCPU的数据,因此必须定时去CPU端取,这样就无法满足通信的实时性要求。由于数据读取不及时,就会导致CPU侧(从栈)数据阻塞甚至丢数据。为此,本实施方式中SPI通道用于将数据从MCU发送至4G模组CPU;UART通道用于将数据从4G模组CPU发送至MCU。将UART波特率开到MCU极限2M,通过实验得到匹配电阻20欧姆时稳定性最高,如图4所示。
经过上述改造后,实测数据通信量比SPI与UART同时工作时,效率提高1.2倍,稳定性也大幅提高,解决了SPI从栈数据阻塞的问题。实测24小时通信错误包小于千分之一,满足使用需求。
进一步的,在数据的传输过程中,采用分段、连续发送数据的模式,并进行阶段缓存。缓存的数据通过CAN刷写到总线上,即:将刷写完毕的时候,继续收取分段数据并进行缓存和刷写,如此循环,直到刷写完成。如图5所示。
经测试,使用3块数据存储的方式可以在节约RAM的同时,提高数据通信和刷写效率。如图6所示,数据高速处理方法具体如下:
初始化:将MCU中的RAM区域分为有序的3个存储部分,每个存储部分的存储容量均为16K,UART通道和SPI通道均按照16K的传输量进行数据传输,
步骤一:MCU依序向每个存储部分存储数据,
步骤二:判断第i个部分的数据是否存满,其中i=1,2,3,是则执行步骤三,否则执行步骤四,
步骤三:MCU通过CAN总线按照16K对第i个部分中存储的数据进行刷写,当刷写完成后执行步骤五,
步骤四:等待1ms,然后返回步骤二,
步骤五:判断i是否等于3,是则使i=1,然后返回步骤一,否则使i=i+1,然后返回步骤二。
Claims (6)
1.一种基于4G+MCU双系统的数据高速处理方法,其特征在于,4G模组CPU与MCU之间利用UART+SPI双通道的通信方式进行通信,
数据高速处理方法具体如下:
初始化:将MCU中的RAM区域分为有序的N个存储部分,N大于等于2,
步骤一:MCU依序向每个存储部分存储数据,
步骤二:判断第i个部分的数据是否存满,其中i的初始值为1,是则执行步骤三,否则执行步骤四,
步骤三:MCU通过CAN总线对第i个部分中存储的数据进行刷写,当刷写完成后执行步骤五,
步骤四:等待1ms,然后返回步骤二,
步骤五:判断i是否等于N,是则使i=1,然后返回步骤一,否则使i=i+1,然后返回步骤二。
2.根据权利要求1所述的一种基于4G+MCU双系统的数据高速处理方法,其特征在于,N等于3,每个存储部分的存储容量为16K。
3.根据权利要求2所述的一种基于4G+MCU双系统的数据高速处理方法,其特征在于,UART通道和SPI通道均按照16K的传输量进行数据传输。
4.根据权利要求2所述的一种基于4G+MCU双系统的数据高速处理方法,其特征在于,CAN总线的刷写量为16K。
5.根据权利要求1、2、3或4所述的一种基于4G+MCU双系统的数据高速处理方法,其特征在于,
SPI通道用于将数据从MCU发送至4G模组CPU,
UART通道用于将数据从4G模组CPU发送至MCU。
6.根据权利要求5所述的一种基于4G+MCU双系统的数据高速处理方法,其特征在于,UART通道的波特率为2M。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011510752.4A CN112486894A (zh) | 2020-12-18 | 2020-12-18 | 一种基于4g+mcu双系统的数据高速处理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011510752.4A CN112486894A (zh) | 2020-12-18 | 2020-12-18 | 一种基于4g+mcu双系统的数据高速处理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112486894A true CN112486894A (zh) | 2021-03-12 |
Family
ID=74914876
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011510752.4A Pending CN112486894A (zh) | 2020-12-18 | 2020-12-18 | 一种基于4g+mcu双系统的数据高速处理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112486894A (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102456240A (zh) * | 2010-10-30 | 2012-05-16 | 比亚迪股份有限公司 | 基于can总线的车载记录装置及其存储数据的控制方法 |
CN102830680A (zh) * | 2012-09-11 | 2012-12-19 | 安徽江淮汽车股份有限公司 | 一种混合动力汽车的远程监控控制器 |
CN107368327A (zh) * | 2016-05-12 | 2017-11-21 | 广州汽车集团股份有限公司 | 对芯片进行刷写的方法以及系统 |
CN108024116A (zh) * | 2016-10-28 | 2018-05-11 | 腾讯科技(深圳)有限公司 | 一种数据缓存方法及装置 |
CN110111791A (zh) * | 2019-05-21 | 2019-08-09 | 扬州航盛科技有限公司 | 一种基于车载智能网联的语音识别系统 |
CN110244966A (zh) * | 2019-06-18 | 2019-09-17 | 广东戈兰玛汽车系统有限公司 | 一种基于uds的bootloader程序在线更新方法 |
CN111420277A (zh) * | 2020-04-09 | 2020-07-17 | 北京品驰医疗设备有限公司 | 植入式神经刺激设备 |
CN111459518A (zh) * | 2020-03-30 | 2020-07-28 | 北京经纬恒润科技有限公司 | 一种车辆ecu升级方法及系统 |
CN111722864A (zh) * | 2020-06-24 | 2020-09-29 | 深圳市元征科技股份有限公司 | 一种ecu数据刷写方法及相关装置 |
-
2020
- 2020-12-18 CN CN202011510752.4A patent/CN112486894A/zh active Pending
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102456240A (zh) * | 2010-10-30 | 2012-05-16 | 比亚迪股份有限公司 | 基于can总线的车载记录装置及其存储数据的控制方法 |
CN102830680A (zh) * | 2012-09-11 | 2012-12-19 | 安徽江淮汽车股份有限公司 | 一种混合动力汽车的远程监控控制器 |
CN107368327A (zh) * | 2016-05-12 | 2017-11-21 | 广州汽车集团股份有限公司 | 对芯片进行刷写的方法以及系统 |
CN108024116A (zh) * | 2016-10-28 | 2018-05-11 | 腾讯科技(深圳)有限公司 | 一种数据缓存方法及装置 |
CN110111791A (zh) * | 2019-05-21 | 2019-08-09 | 扬州航盛科技有限公司 | 一种基于车载智能网联的语音识别系统 |
CN110244966A (zh) * | 2019-06-18 | 2019-09-17 | 广东戈兰玛汽车系统有限公司 | 一种基于uds的bootloader程序在线更新方法 |
CN111459518A (zh) * | 2020-03-30 | 2020-07-28 | 北京经纬恒润科技有限公司 | 一种车辆ecu升级方法及系统 |
CN111420277A (zh) * | 2020-04-09 | 2020-07-17 | 北京品驰医疗设备有限公司 | 植入式神经刺激设备 |
CN111722864A (zh) * | 2020-06-24 | 2020-09-29 | 深圳市元征科技股份有限公司 | 一种ecu数据刷写方法及相关装置 |
Non-Patent Citations (1)
Title |
---|
李岩;张晓谦;孙忠刚;刘超;: "车用电子控制器分页标定软件技术研究与实现", 汽车零部件, no. 02, 28 February 2017 (2017-02-28) * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101866328B (zh) | 一种自动访问的串行总线读写控制方法 | |
CN100483377C (zh) | 一种异步桥及数据传输方法 | |
CN109471824B (zh) | 基于axi总线的数据传输系统及方法 | |
CN109800193B (zh) | 一种ahb总线访问片上sram的桥接装置 | |
CN110990034A (zh) | Ecu升级方法、系统、电子设备及存储介质 | |
CN111506249B (zh) | 一种基于zynq平台的数据交互系统及方法 | |
CN102833348A (zh) | 一种车辆里程数据的同步方法 | |
CN102063747A (zh) | 一种can数据记录仪 | |
CN112486894A (zh) | 一种基于4g+mcu双系统的数据高速处理方法 | |
CN114691578A (zh) | 一种高性能串行通信方法、系统、介质、设备及终端 | |
CN107957971A (zh) | 一种基于fpga的多处理器之间的通信系统及通信方法 | |
CN111224835A (zh) | 串口通讯模式自动切换方法、装置及系统 | |
CN102402200A (zh) | 一种伺服控制系统 | |
CN114138297A (zh) | 一种基于zynq的fpga雷达数据调试系统及调试方法 | |
CN104678918B (zh) | 基于pc104总线的canopen主控设备及控制方法 | |
CN101976472B (zh) | 一种车载数据记录仪 | |
CN117075572A (zh) | 测试系统 | |
CN2653788Y (zh) | 全兼容型机车电台 | |
CN101071308A (zh) | 轮胎一次法三鼓成型机控制系统 | |
CN113741311B (zh) | 具有子周期高频处理功能的总线控制系统及方法 | |
CN115237450A (zh) | 一种一拖二刷写ecu的方法 | |
CN102722143B (zh) | 采用复杂可编程逻辑器件扩展数字信号处理器端口的方法 | |
CN112600711B (zh) | 实车总线数据远端克隆系统及方法 | |
CN111290367B (zh) | 一种无人驾驶牵引车使用的网关控制方法和装置 | |
CN106980474A (zh) | 一种基于pcie接口的数据记录仪 |
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 |