CN114996170A - 非抢占式实时操作系统的eeprom数据写入处理方法 - Google Patents

非抢占式实时操作系统的eeprom数据写入处理方法 Download PDF

Info

Publication number
CN114996170A
CN114996170A CN202210616970.9A CN202210616970A CN114996170A CN 114996170 A CN114996170 A CN 114996170A CN 202210616970 A CN202210616970 A CN 202210616970A CN 114996170 A CN114996170 A CN 114996170A
Authority
CN
China
Prior art keywords
eeprom
state
write
operating system
writing
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
CN202210616970.9A
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.)
Jiangsu Zhaoneng Electronic Co ltd
Original Assignee
Jiangsu Zhaoneng Electronic 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 Jiangsu Zhaoneng Electronic Co ltd filed Critical Jiangsu Zhaoneng Electronic Co ltd
Priority to CN202210616970.9A priority Critical patent/CN114996170A/zh
Publication of CN114996170A publication Critical patent/CN114996170A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4498Finite state machines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/52Program synchronisation; Mutual exclusion, e.g. by means of semaphores
    • G06F9/526Mutual exclusion algorithms
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

本发明公开了一种非抢占式实时操作系统的EEPROM数据写入处理方法,能在不打断操作系统时序的情况下实现EEPROM的写入操作,并在实现过程中引入状态机,将操作步骤划分了5个不同的状态,便于统计和区分状态,并在写入过程中引入了互斥锁,防止EEPROM正在写入过程中接受其他写入请求,造成数据错乱,提高系统的安全性能。本发明提供的适应于非抢占式实时操作系统的EEPROM数据写入处理方法,保证了EEPROM数据写入时操作系统时序的连贯性,有效避免操作系统任务响应超时而导致无法预料的致命故障,具有良好的应用前景。

Description

非抢占式实时操作系统的EEPROM数据写入处理方法
技术领域
本发明涉及电子产品数据存储技术领域,具体涉及一种非抢占式 实时操作系统的EEPROM数据写入处理方法。
背景技术
在非易失性存储器技术领域,EEPROM(Electrically Erasable ProgrammableRead-Only Memory,电可擦编程只读存储器)可以以 字节为单位读写,相较于FLASH(FlashEEPROM Memory,存储器 又称闪存)的扇区读写方式更加灵活。但是,因其的容量较小,EEPROM通常被用于存储一些重要的参数,而且,EEPROM数据写 入耗时较长,在小循环周期操作系统(在电子产品常用的软件系统) 中,若要保存重要的过程参数,传统的EEPROM写入方法需要一直 等待EEPROM写入完成才得以执行后续任务,此举势必打乱操作系 统的时序,使得任务无法及时执行,导致操作系统出现无法预知的故 障。
因此,在小循环周期操作系统中,若想在电子产品运行过程中修 改并保存参数至EEPROM,同时不影响操作系统的正常运行,现有 的方案无法实现。因此,如何解决上述问题,是当前需要解决的问题。
发明内容
本发明的目的是克服现有的在小循环周期操作系统中在电子产 品运行过程中修改并保存参数至EEPROM,同时不影响操作系统的 正常运行,无法实现的问题。本发明的非抢占式实时操作系统的 EEPROM数据写入处理方法,能在不打断操作系统时序的情况下实现EEPROM的写入操作,增强了操作系统鲁棒性,一定程度上提高 了电子产品竞争力,具有良好的应用前景。
为了达到上述目的,本发明所采用的技术方案是:
一种非抢占式实时操作系统的EEPROM数据写入处理方法,该 EEPROM数据写入时间超过所述非抢占式实时操作系统的循环周期, 具体包括以下步骤,
步骤(A):读取EEPROM状态寄存器的WIP标志位,若WIP=0, 跳转至步骤(B);否则,维持步骤(A);
步骤(B):向EEPROM发送WREN指令,激活数据写入功能;
步骤(C):读取EEPROM状态寄存器的WEL标志位,若在设 定的时间内,读取到WEL标志位为1,则EEPROM写入功能被成功 激活,并跳转至步骤(D);否则,EEPROM数据写入功能激活超时, 跳转至步骤(A),并上报故障;
步骤(D):向EEPROM写入数据,先拉低片选信号
Figure BDA0003674727330000021
然后依 次发送WRITE指令、地址、数据,最后拉高片选信号
Figure BDA0003674727330000022
且跳转至步 骤(E);
步骤(E):读取EEPROM状态寄存器的WIP标志位,若在设定 的时间内WIP由1变为0,跳转至步骤(F);否则,认为写入数据超 时,跳转至步骤(A),并上报故障;
步骤(F):数据校验,读取EEPROM,若读取的内容和写入的 内容一致,则校验成功,并跳转至步骤(A);否则,判定为校验失 败并上报故障。
优选的,步骤(A)-步骤(F)顺序执行一次的时间为EEPROM 数据写入时间,所述EEPROM数据写入时间为3.2ms,所述非抢占 式实时操作系统的循环周期为2ms。
优选的,将步骤(A)-步骤(F)引入状态机,具体为:在Ready 状态下,执行步骤(A)和步骤(B);在EnableWrite状态下,执行 步骤(C);在Write状态下,执行步骤(D);在Writing状态下,执 行步骤(E);在Verify状态下,执行步骤(F)。
优选的,在步骤(A)-步骤(F)引入状态机的情况下,该状态 机的跳转条件为:Ready状态执行完成且无故障,跳转至EnableWrite 状态;EnableWrite状态执行完成且无故障,跳转至Write状态,若发 生故障,跳转至Ready状态;Write状态执行完成跳转至Writing状态; Writing状态执行完成且无超时故障,跳转至Verify状态,否则,跳 转至Ready状态;Verify状态执行完,跳转至Ready状态。
优选的,所述Writing状态为耗时最长的环节为3.16ms,建立状 态机状态与非抢占式实时操作系统循环周期的关系如下:若 EEPROM处于空闲状态且接收到EEPROM数据写入请求,记该非抢 占式实时操作系统当前循环周期为t,顺序执行Ready、EnableWrite、Write和Writing四个状态,t+2周期,执行Verify。
优选的,在执行EEPROM写入数据过程的步骤(A)时,引入 互斥锁,用于防止EEPROM正在写入过程中收到其他写入请求,造 成数据错乱,包括以下过程:
(A1)在MCU上电初始化过程中,新建静态变量WritingFlag 和AddressLatch,分别记录EEPROM当前写操作状态和EEPROM写 入地址;WritingFlag为1,表明EEPROM正在写入,WritingFlag为 0,表明EEPROM未进行写入操作;AddressLatch,记录当前EEPROM 的写入地址,WritingFlag和AddressLatch的初始值均为0;
(A2)当有EEPROM数据写入请求时,首先检查WritingFlag 和AddressLatch的值,若WritingFlag等于0,表明EEPROM无写入 操作,此时将WritingFlag置1,同时AddressLatch保存当前EEPROM 的写入地址;
(A3)每当非抢占式实时操作系统循环执行步骤到(A)-(F) 时,都需要检查WritingFlag和AddressLatch,当WritingFlag等于1 时,只有EEPROM的写入地址和AddressLatch一致才允许进入 EEPROM写入流程;否则,拒绝进入;
(A4)当EEPROM数据写入流程执行完成或者步骤(A)-(F) 执行过程中发生故障,将WritingFlag和AddressLatch重新初始化为0, 以便接收新的EEPROM数据写入请求。
优选的,步骤(C)和步骤(E)设定的时间均为2秒。
本发明的有益效果是:本发明的非抢占式实时操作系统的 EEPROM数据写入处理方法,能在不打断操作系统时序的情况下实 现EEPROM的写入操作,并在实现过程中引入状态机,将操作步骤 划分了5个不同的状态,便于统计和区分状态,并在写入过程中引入 互斥锁,防止EEPROM正在写入过程中接受其他写入请求,造成数 据错乱,提高系统的安全性能。本发明实现了在不打断实时操作系统 时序的前提下,完成EEPROM的数据写入,保证了操作系统时序的 连贯性和确定性,有效避免操作系统任务响应超时而导致无法预料的 致命故障,提高了产品竞争力,具有良好的应用前景。
附图说明
图1是本发明的宽输入范围线性稳压电路待机功耗的降低方法 的流程图;
图2是本发明一实施例的宽输入范围线性稳压电路的开关电源 的系统框图;
图3是本发明一实施例的控制方法的具体流程图。
具体实施方式
下面将结合说明书附图,对本发明作进一步的说明。
如图1所示,本发明的非抢占式实时操作系统的EEPROM数据 写入处理方法,该EEPROM数据写入时间超过所述非抢占式实时操 作系统的循环周期,具体包括以下步骤,
步骤(A):读取EEPROM状态寄存器的WIP标志位,若WIP=0, 跳转至步骤(B);否则,维持步骤(A);
步骤(B):向EEPROM发送WREN指令,激活数据写入功能;
步骤(C):读取EEPROM状态寄存器的WEL标志位,若在设 定的时间内,读取到WEL标志位为1,则EEPROM写入功能被成功 激活,并跳转至步骤(D);否则,EEPROM数据写入功能激活超时, 跳转至步骤(A),并上报故障;
步骤(D):向EEPROM写入数据,先拉低片选信号
Figure BDA0003674727330000061
然后依 次发送WRITE指令、地址、数据,最后拉高片选信号
Figure BDA0003674727330000062
且跳转至步 骤(E);
步骤(E):读取EEPROM状态寄存器的WIP标志位,若在设定 的时间内WIP由1变为0,跳转至步骤(F);否则,认为写入数据超 时,跳转至步骤(A),并上报故障;
步骤(F):数据校验,读取EEPROM,若读取的内容和写入的 内容一致,则校验成功,并跳转至步骤(A);否则,判定为校验失 败并上报故障。
上述的设定的时间根据非抢占式实时操作系统的选择可为2秒, 可根据需要调整,以便适应不同的非抢占式实时操作系统和 EEPROM芯片的选型,该2秒为EEPROM数据写入过程预留的响应 时间。若EEPROM响应时间超过2秒,认为EEPROM出现故障。
本发明的步骤(A)-步骤(F)顺序执行一次的时间为EEPROM 数据写入时间,所述EEPROM数据写入时间为3.2ms,所述非抢占 式实时操作系统的循环周期为2ms,很明显EEPROM数据写入时间 大于非抢占式实时操作系统的循环周期,本发明了为了方便系统管理, 将步骤(A)-步骤(F)引入状态机,具体为:在Ready状态下,执 行步骤(A)和步骤(B);在EnableWrite状态下,执行步骤(C); 在Write状态下,执行步骤(D);在Writing状态下,执行步骤(E); 在Verify状态下,执行步骤(F),在步骤(A)-步骤(F)引入状态 机的情况下,该状态机的跳转条件为:Ready状态执行完成且无故障, 跳转至EnableWrite状态;EnableWrite状态执行完成且无故障,跳转 至Write状态,若发生故障,跳转至Ready状态;Write状态执行完 成跳转至Writing状态;Writing状态执行完成且无超时故障,跳转至 Verify状态,否则,跳转至Ready状态;Verify状态执行完,跳转至 Ready状态。
优选的,所述Writing状态为耗时最长的环节为3.16ms(耗时占 比98.75%,总时间3.2ms),建立状态机状态与非抢占式实时操作系 统循环周期的关系如下:若EEPROM处于空闲状态且接收到 EEPROM数据写入请求,记该非抢占式实时操作系统当前循环周期 为t,顺序执行Ready、EnableWrite、Write和Writing四个状态,t+2 周期,执行Verify。
优选的,在执行EEPROM写入数据过程的步骤(A)时,引入 互斥锁,用于防止EEPROM正在写入过程中收到其他写入请求,造 成数据错乱,包括以下过程:
(A1)在MCU上电初始化过程中,新建静态变量WritingFlag 和AddressLatch,分别记录EEPROM当前写操作状态和EEPROM写 入地址;WritingFlag为1,表明EEPROM正在写入,WritingFlag为 0,表明EEPROM未进行写入操作;AddressLatch,记录当前EEPROM 的写入地址;WritingFlag和AddressLatch的初始值均为0;
(A2)当有EEPROM数据写入请求时,首先检查WritingFlag 和AddressLatch;若WritingFlag等于0,表明EEPROM无写入操作, 此时将WritingFlag置1,同时AddressLatch保存当前EEPROM的写 入地址;
(A3)每当非抢占式实时操作系统循环执行到步骤(A)-(F) 时(这里的步骤(A)-(F)是一个完整的数据写入流程,当一个写 入操作流程正在执行,其他的数据写入请求都要被拒绝,因此,步骤 (A)-(F)每一步都要检查),都要检查WritingFlag和AddressLatch,当WritingFlag等于1时,只有EEPROM的写入地址和AddressLatch 一致才允许进入EEPROM写入流程;否则,拒绝进入;
(A4)当EEPROM数据写入流程执行完成或者步骤(A)-(F) 执行过程中发生故障,将WritingFlag和AddressLatch重新初始化为0, 以便接收新的EEPROM数据写入请求。
下面介绍本发明的非抢占式实时操作系统的EEPROM数据写入 处理方法一具体实施例用在ST公司的M95080-DRE芯片,为但不限 于该芯片,具体如下:
如图2所示,当电子产品的MCU上电后,先进行外设和操作系 统的初始化操作。初始化完成后,即进入操作系统(非抢占式实时操 作系统)主循环,主循环的周期为2ms。每个主循环周期,都包含N 个任务,每个任务执行各自特定的工作,因操作系统为非抢占式,在一个操作系统循环周期内,每个任务都是顺序执行:先执行任务1, 任务1执行完成后执行任务2;任务2执行完成后执行任务3,以此 类推,直至任务N执行完成。2ms时间到达后,进行下一轮循环,依 次执行任务1、任务2,…,任务N,故要保证任务1至任务N的执 行时间小于2ms,否则会造成非抢占式实时操作系统的时序错乱,无 法正常运行。若MCU不断电,操作系统会一直循环执行,直至MCU 掉电。
结合图1,本发明实施例的方案实施示意图,当EEPROM数据 写入流程在操作系统的任务中执行,此处以在任务3中执行为例。当 操作系统执行到任务3时,进入EEPROM写操作状态机,共有5种 状态:Ready、EnableWrite、Write、Writing和Verify。每种状态都对 应着各自的EEPROM写入步骤,且当前状态内的步骤执行完成后跳 转至下一状态。当Verify状态执行完成之后,操作系统结束任务3的 执行,跳转至任务4。所述的五种状态中,Writing耗时约3.16ms, 其余四种状态每种耗时约0.01ms,因此顺序执行总耗时为3.2ms。而 操作系统的循环周期为2ms,因此一次完整的EEPROM数据写入操 作需要跨多个操作系统循环周期。若在t周期开始执行步骤1,最佳 情况需要在t+2周期完成数据写入操作。
如图3所示,本发明实施例的具体流程图,首先检测当前任务有 无EEPROM数据写入请求,若无,直接跳转至下一任务;若有,则 进一步检查WritingFlag的值。此处分两种情况:
第一种情况:WritingFlag的值为0。
此时EEPROM处于写空闲状态,可以向EEPROM写入数据。首 先对内部静态变量WritingFlag置1,并将要写入的EEPROM地址保 存至内部静态变量AddressLatch。WritingFlag和AddressLatch共同作 为互斥锁,防止其他任务的EEPROM写入请求介入。之后便执行完 整的EEPROM写入流程,具体如下:
第一步:状态机状态eState设置为Ready,此状态下,发送“RDSR” 指令读取EEPROM状态寄存器。如果EEPROM状态寄存器“WIP” 为0,表明EEPROM处于空闲状态,则继续发送“WREN”指令, 激活EEPROM写功能。同时将eState置为EnableWrite,并跳转至第 二步;如果EEPROM状态寄存器“WIP”为1,表明EEPROM正在 写数据,需要等待EEPROM完成数据写入。此时启动超时计数,并 结束当前任务,等待下一系统循环周期。
第二步:状态机状态eState为EnableWrite,需要读取EEPROM 状态寄存器的WEL标志位。若WEL为1,表明EEPROM写使能成 功,将eState置为Write,同时跳转至第三步执行;若WEL为0,启 动超时计数,并结束当前任务,等待下一系统循环周期。
第三步:状态机状态eState为Write,依次向EEPROM写入操作 地址和数据。而后将eState置为Writing,结束当前任务,等待下一 系统循环周期。
第四步:状态机状态eState为Writing。读取EEPROM状态寄存 器的WIP标志位,若第三步中的数据写入成功,WIP为0,否则为1。 据此,若WIP为0,则置eState为Verify并跳转至第五步,否则结束 当前任务,等待下一系统循环周期。
第五步:状态机状态eState为Verify。读取第三步中写入的数据, 若和写入数据相同,则校验成功。否则,校验失败,上报故障。之后 将eState置为Ready,同时将WritingFlag清零。至此一个完整的 EEPROM写数据流程结束
第二种情况:WritingFlag的值为1。
此时,EEPROM正执行数据写入操作,需要进一步判断EEPROM 操作地址和AddressLatch是否一致。
若不一致,需要等待WritingFlag为0后方可向EEPROM写入数 据。具体执行动作:每个系统循环周期都读取WritingFlag标志,若 WritingFlag为1,则结束当前任务,等待下一系统循环周期;若 WritingFlag=0,按照上述第一种情况执行。若一致,则根据eState当前状态执行相应动作。
综上所述,本发明的非抢占式实时操作系统的EEPROM数据写 入处理方法,能在不打断操作系统时序的情况下实现EEPROM的写 入操作,并在实现过程中引入状态机,将操作步骤划分了5个Ready、 EnableWrite、Write、Writing和Verify不同的状态,便于统计和区分 状态,并在写入过程中引入了互斥锁,防止EEPROM正在写入过程 中接受其他写入请求,造成数据错乱,提高系统的安全性能。本发明 实现了在不打断实时操作系统时序的前提下,完成EEPROM的数据 写入,保证了操作系统时序的连贯性和确定性,有效避免操作系统任 务响应超时而导致无法预料的致命故障,提高了产品竞争力,具有良 好的应用前景。
以上显示和描述了本发明的基本原理、主要特征及优点。本行业 的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和 说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围 的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要 求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及 其等效物界定。

Claims (7)

1.一种非抢占式实时操作系统的EEPROM数据写入处理方法,其特征在于:该EEPROM数据写入时间超过所述非抢占式实时操作系统的循环周期,具体包括以下步骤,
步骤(A):读取EEPROM状态寄存器的WIP标志位,若WIP=0,跳转至步骤(B);否则,维持步骤(A);
步骤(B):向EEPROM发送WREN指令,激活数据写入功能;
步骤(C):读取EEPROM状态寄存器的WEL标志位,若在设定的时间内,读取到WEL标志位为1,则EEPROM写入功能被成功激活,并跳转至步骤(D);否则,EEPROM数据写入功能激活超时,跳转至步骤(A),并上报故障;
步骤(D):向EEPROM写入数据,先拉低片选信号
Figure FDA0003674727320000011
然后依次发送WRITE指令、地址、数据,最后拉高片选信号
Figure FDA0003674727320000012
且跳转至步骤(E);
步骤(E):读取EEPROM状态寄存器的WIP标志位,若在设定的时间内WIP由1变为0,跳转至步骤(F);否则,认为写入数据超时,跳转至步骤(A),并上报故障;
步骤(F):数据校验,读取EEPROM,若读取的内容和写入的内容一致,则校验成功,并跳转至步骤(A);否则,判定为校验失败并上报故障。
2.根据权利要求1所述的非抢占式实时操作系统的EEPROM数据写入处理方法,其特征在于:步骤(A)-步骤(F)顺序执行一次的时间为EEPROM数据写入时间,所述EEPROM数据写入时间为3.2ms,所述非抢占式实时操作系统的循环周期为2ms。
3.根据权利要求1所述的非抢占式实时操作系统的EEPROM数据写入处理方法,其特征在于:将步骤(A)-步骤(F)引入状态机,具体为:在Ready状态下,执行步骤(A)和步骤(B);在EnableWrite状态下,执行步骤(C);在Write状态下,执行步骤(D);在Writing状态下,执行步骤(E);在Verify状态下,执行步骤(F)。
4.根据权利要求3所述的非抢占式实时操作系统的EEPROM数据写入处理方法,其特征在于:在步骤(A)-步骤(F)引入状态机的情况下,该状态机的跳转条件为:Ready状态执行完成且无故障,跳转至EnableWrite状态;EnableWrite状态执行完成且无故障,跳转至Write状态,若发生故障,跳转至Ready状态;Write状态执行完成跳转至Writing状态;Writing状态执行完成且无超时故障,跳转至Verify状态,否则,跳转至Ready状态;Verify状态执行完,跳转至Ready状态。
5.根据权利要求3所述的非抢占式实时操作系统的EEPROM数据写入处理方法,其特征在于:所述Writing状态为耗时最长的环节为3.16ms,建立状态机状态与非抢占式实时操作系统循环周期的关系如下:若EEPROM处于空闲状态且接收到EEPROM数据写入请求,记该非抢占式实时操作系统当前循环周期为t,顺序执行Ready、EnableWrite、Write和Writing四个状态,t+2周期,执行Verify。
6.根据权利要求3所述的非抢占式实时操作系统的EEPROM数据写入处理方法,其特征在于:在执行EEPROM写入数据过程的步骤(A)时,引入互斥锁,用于防止EEPROM正在写入过程中收到其他写入请求,造成数据错乱,包括以下过程:
(A1)在MCU上电初始化过程中,新建静态变量WritingFlag和AddressLatch,分别记录EEPROM当前写操作状态和EEPROM写入地址;WritingFlag为1,表明EEPROM正在写入,WritingFlag为0,表明EEPROM未进行写入操作;AddressLatch,记录当前EEPROM的写入地址,WritingFlag和AddressLatch的初始值均为0;
(A2)当有EEPROM数据写入请求时,首先检查WritingFlag和AddressLatch的值,若WritingFlag等于0,表明EEPROM无写入操作,此时将WritingFlag置1,同时AddressLatch保存当前EEPROM的写入地址;
(A3)每当非抢占式实时操作系统循环执行步骤到(A)-(F)时,都需要检查WritingFlag和AddressLatch,当WritingFlag等于1时,只有EEPROM的写入地址和AddressLatch一致才允许进入EEPROM写入流程;否则,拒绝进入;
(A4)当EEPROM数据写入流程执行完成或者步骤(A)-(F)执行过程中发生故障,将WritingFlag和AddressLatch重新初始化为0,以便接收新的EEPROM数据写入请求。
7.根据权利要求1所述的非抢占式实时操作系统的EEPROM数据写入处理方法,其特征在于:步骤(C)和步骤(E)设定的时间均为2秒。
CN202210616970.9A 2022-06-01 2022-06-01 非抢占式实时操作系统的eeprom数据写入处理方法 Pending CN114996170A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210616970.9A CN114996170A (zh) 2022-06-01 2022-06-01 非抢占式实时操作系统的eeprom数据写入处理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210616970.9A CN114996170A (zh) 2022-06-01 2022-06-01 非抢占式实时操作系统的eeprom数据写入处理方法

Publications (1)

Publication Number Publication Date
CN114996170A true CN114996170A (zh) 2022-09-02

Family

ID=83031705

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210616970.9A Pending CN114996170A (zh) 2022-06-01 2022-06-01 非抢占式实时操作系统的eeprom数据写入处理方法

Country Status (1)

Country Link
CN (1) CN114996170A (zh)

Similar Documents

Publication Publication Date Title
US11062777B2 (en) Nonvolatile semiconductor memory device which performs improved erase operation
CN102135927B (zh) 一种基于nand flash的系统引导方法和装置
US20020039312A1 (en) Nonvolatile memory and method of writing data thereto
US20020129195A1 (en) Microcomputer with built-in programmable nonvolatile memory
CN113377408B (zh) 一种高可靠sram型fpga在线升级方法及系统
US6189070B1 (en) Apparatus and method for suspending operation to read code in a nonvolatile writable semiconductor memory
CN104051018A (zh) 非易失性存储器装置及其操作方法
CN106649137B (zh) 一种Nand Flash坏块管理方法、装置及存储器
JP3376306B2 (ja) データ処理装置、そのデータ処理方法
CN109411002A (zh) 一种数据读取的方法及闪存控制器
CN112181725B (zh) 一种嵌入式系统的片内外数据掉电防拔备份方法及系统
US5257269A (en) Error controller for use in debugging microprocessor
CN114996170A (zh) 非抢占式实时操作系统的eeprom数据写入处理方法
US10691569B2 (en) System and method for testing a data storage device
JPH0822422A (ja) メモリ装置
US7191323B2 (en) Information processing unit selecting one of reset vector addresses
CN110838314A (zh) 一种存储数据的加固方法及装置
US20040128675A1 (en) Software-hardware welding system
US20240094920A1 (en) Exception Handling Using Security Subsystem in Storage Device
JPS62286143A (ja) 半導体記憶装置
CN116610494A (zh) 一种卫星测控设备重要数据备份及恢复方法、装置和设备
JPH03205690A (ja) メモリアクセス制御装置
CN115827032A (zh) 存储器的烧录方法、装置、电子设备及存储介质
JPH02245954A (ja) 半導体記憶装置
JP2000020498A (ja) マイクロコンピュータおよびその復帰方法

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