日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁(yè) > 電源 > 數(shù)字電源
[導(dǎo)讀]介紹在TMS320C5410環(huán)境下對(duì)Am29LV200B Flash存儲(chǔ)器進(jìn)行程序燒寫(xiě),并且實(shí)現(xiàn)了TMS320C5410上電后用戶程序并行自舉引導(dǎo)。

摘要:介紹在TMS320C5410環(huán)境下對(duì)Am29LV200B Flash存儲(chǔ)器進(jìn)行程序燒寫(xiě),并且實(shí)現(xiàn)了TMS320C5410上電后用戶程序并行自舉引導(dǎo)。

    關(guān)鍵詞:Am29LV200B Flash DSP 并行自舉引導(dǎo) 自舉表

  Flash是一種可在線進(jìn)行電擦寫(xiě),掉電后信息不丟失的存儲(chǔ)器。它具有低功耗、大容量、擦寫(xiě)速度快等特點(diǎn),并且內(nèi)部嵌入算法完成對(duì)芯片的操作,因而在數(shù)字信號(hào)處理系統(tǒng)中得到了廣泛的應(yīng)用。本文通過(guò)一個(gè)完整的實(shí)例,介紹Am29LV200B Flash存儲(chǔ)器的燒寫(xiě)方法,實(shí)現(xiàn)TMS320C5410(以下簡(jiǎn)稱C5410)上電后用戶程序的并行自舉引導(dǎo)。

1 Am29LV200B Flash存儲(chǔ)器

1.1 Flash存儲(chǔ)器簡(jiǎn)介

  Am29LV200B是AMD公司生產(chǎn)的Flash存儲(chǔ)器,其主要特點(diǎn)有:3 V單電源供電,可使內(nèi)部產(chǎn)生高電壓進(jìn)行編程和擦除操作;支持JEDEC單電源Flash存儲(chǔ)器標(biāo)準(zhǔn);只需向其命令寄存器寫(xiě)入標(biāo)準(zhǔn)的微處理器指令,具體編程、擦除操作由內(nèi)部嵌入的算法實(shí)現(xiàn),并且可以通過(guò)查詢特定的引腳或數(shù)據(jù)線監(jiān)控操作是否完成;可以對(duì)任一扇區(qū)進(jìn)行讀、寫(xiě)或擦除操作,而不影響其它部分的數(shù)據(jù)。本文中128K×16位Am29LV200B Flash 映射為C5410的片外數(shù)據(jù)存儲(chǔ)空間,地址為:0x8000~0xFFFF,數(shù)據(jù)總線16位,用于16位方式的并行引導(dǎo)裝載。128K的Flash ROM用32K地址分四頁(yè)進(jìn)行訪問(wèn),上電加載程序時(shí)使用Flash ROM的第3頁(yè)。

1.2 Flash存儲(chǔ)器的操作命令

  向Flash存儲(chǔ)器的特定寄存器寫(xiě)入地址和數(shù)據(jù)命令,就可對(duì)Flash存儲(chǔ)器編程,但要按一定的順序操作,否則就會(huì)導(dǎo)致Flash存儲(chǔ)器復(fù)位。由于編程指令不能使"0"寫(xiě)為"1",只能使"1"變?yōu)?0",而擦除命令可使"0"變?yōu)?1",所以正確順序是先擦除,后編程。下面就介紹幾個(gè)常用的操作命令:編程命令、擦除命令、讀數(shù)據(jù)命令、復(fù)位命令。

 ?、?編程命令。該命令向Flash的指定地址中寫(xiě)入數(shù)據(jù),需要四個(gè)總線周期,前兩個(gè)是解鎖周期,第三個(gè)是建立編程命令,最后一個(gè)周期完成向編程地址中寫(xiě)入編程數(shù)據(jù),如表1所列。

表1 編程命令

周期 1(解鎖) 2(解鎖) 3(建立) 4(編程)
地址 0x555 0x2AA 0x555 pa(編程地址)
數(shù)據(jù) 0xAA 0x55 0xA0 pa(編程數(shù)據(jù))

  由于向每個(gè)編程地址寫(xiě)入數(shù)據(jù)都需要四個(gè)周期,所以在循環(huán)寫(xiě)Flash時(shí)使用宏比較簡(jiǎn)單。Flash ROM的首地址為0x8000,故偏移地址0x555對(duì)應(yīng)物理地址就為0x8555。編程程序如下:

_WRITECOMMAND .macro pa,pd ;單一周期編程的寫(xiě)命

;令宏,pa是編程地址,pd是編程數(shù)據(jù)

PSHM AR1

STM pa,AR1 ;AR1指向編程地址

LD pd,A

STL A,*AR1 ;把編程數(shù)據(jù)放入AR1的編程地址中

RPT #12

NOP

POPM AR1

.endm

_WRITEFlash .macro par,pdr ;編程宏,par是編程地址寄存

;器,pdr是存放編程數(shù)據(jù)的寄存器

_WRITECOMMAND #8555H,#0AAH ; 周期1(解鎖)

_WRITECOMMAND #82AAH,#055H ; 周期2(解鎖)

_WRITECOMMAND #8555H, #0A0H ; 周期3(建立)

LD pdr, A ; 周期4(編程)

STL A, par ; 把pdr寄存器中數(shù)據(jù)放入par

;寄存器的地址中

RPT #12

NOP

_JUDGE par, pdr ;檢測(cè)編程是否正確,見(jiàn)Flash

;的操作檢測(cè)

.endm

_WRITECOMMAND是實(shí)現(xiàn)一個(gè)周期編程的寫(xiě)命令宏,而_WRITEFlash是完成對(duì)指定地址編程的四個(gè)完整周期。

表2 擦除命令

周期 1(解鎖) 2(解鎖) 3(建立) 4(解鎖) 5(解鎖) 6(片擦除) 6(扇區(qū)擦除)
地址 0x555 0x2AA 0x555 0x555 0x2AA 0x555 SA(扇區(qū)地址)
數(shù)據(jù) 0xAA 0x55 0x80 0xAA 0x55 0x10 0x30

 ?、?擦除命令。該命令有片擦除和扇區(qū)擦除兩種,都需要6個(gè)總線周期,前兩個(gè)解鎖周期,第三個(gè)建立周期,四、五兩個(gè)解鎖周期,最后是片擦除或扇區(qū)擦除周期,如表2所列。一旦執(zhí)行編程或擦除命令后,就啟動(dòng)Flash的內(nèi)部編程或擦除算法,自動(dòng)完成編程或擦除操作。擦除程序如下:

_ERASEFlash .macro ;擦除宏

_WRITECOMMAND #8555H,#0AAH ; 周期1(解鎖)

_WRITECOMMAND #82AAH,#055H ; 周期2(解鎖)

_WRITECOMMAND #8555H,#080H ; 周期3(建立)

_WRITECOMMAND #8555H,#0AAH ; 周期4(解鎖)

_WRITECOMMAND #82AAH,#055H ; 周期5(解鎖)

_WRITECOMMAND #8555H,#010H ; 周期6(片擦除)

STM #8555H,AR3

LD #010H ,A

STL A,*AR5

_JUDGE *AR3,*AR5 ;檢測(cè)是擦除結(jié)束,見(jiàn)Flash的

;操作檢測(cè)

.endm

  ③ 讀數(shù)據(jù)命令。上電或內(nèi)部編程、擦除操作結(jié)束后就進(jìn)入讀數(shù)據(jù)狀態(tài),寫(xiě)入要讀取的地址即可讀出該地址的數(shù)據(jù)。

 ?、?復(fù)位命令。它使存儲(chǔ)器復(fù)位,進(jìn)入讀數(shù)據(jù)狀態(tài),向任何一個(gè)地址寫(xiě)入數(shù)據(jù)0xF0就能使Flash存儲(chǔ)器復(fù)位。在進(jìn)行編程、擦除之前,都應(yīng)先復(fù)位,在編程或擦除等正常操作中出現(xiàn)錯(cuò)誤時(shí)也要復(fù)位。復(fù)位程序如下:

_RESETFlash .macro

_WRITECOMMAND #8001H,#0F0H

;向8001H寫(xiě)入0F0H使Flash復(fù)位

RPT #12

NOP

.endm

1.3 Flash的操作檢測(cè)

  Flash內(nèi)部的編程或擦除算法可自動(dòng)完成編程或擦除操作,但我們必須了解其內(nèi)部的操作檢測(cè)機(jī)制,以便知道操作是否完成或正確。常用檢測(cè)的狀態(tài)位有:跳變位(DQ6)、超時(shí)標(biāo)志位(DQ5)、數(shù)據(jù)查詢位(DQ7)和Ready/Busy引腳(RY/)。檢測(cè)的方法有三種。第一種是判斷引腳RY/的狀態(tài),在編程、擦除或擦除掛起操作過(guò)程中,RY/引腳一直為"0",操作完成后變?yōu)?1"。 第二種是檢測(cè)跳變位DQ6,在編程或擦除時(shí)對(duì)任何地址進(jìn)行連續(xù)的讀均引起DQ6連續(xù)跳變,直至操作結(jié)束才停止跳變。最后一種是使用數(shù)據(jù)線的DQ7、DQ5:DQ7位在編程或擦除過(guò)程中輸出的數(shù)是寫(xiě)入該位數(shù)據(jù)的反碼,當(dāng)操作完成時(shí)輸出才變?yōu)閷?xiě)入該位的數(shù)據(jù);DQ5的狀態(tài)為"1"時(shí)表示操作超時(shí),此時(shí)應(yīng)再讀一次DQ7的狀態(tài),若DQ7輸出仍不是寫(xiě)入的數(shù)據(jù),則操作失敗,復(fù)位Flash,其流程如圖1所示。

  檢測(cè)程序如下:

_JUDGE .macro par,pdr;檢測(cè)宏程序。par是編程地址寄存

;器,pdr是存放編程數(shù)據(jù)的寄存器

_JUDGEBEGIN?: PSHM AR1

LD pdr,B ;獲取寫(xiě)入的數(shù)據(jù)

AND #00FFh,B ;取被寫(xiě)入數(shù)據(jù)的DQ7~DQ0

LD par,A ;讀被燒寫(xiě)地址的數(shù)據(jù)

AND #00FFh,A ;取DQ7~DQ0

STL A ,TEMP ;保存

LD A,-7,A ;讀DQ7狀態(tài)

XOR B,-7,A ;是否是反碼?

BC _JUDGESUCCESS?,AEQ

; DQ7不是反碼而是寫(xiě)入數(shù)據(jù)表示操作成功

BITF TEMP,#20h

BC _JUDGEBEGIN?,ntc

;DQ5=1表示操作超時(shí)

LD par,A ;再讀被燒寫(xiě)地址的數(shù)據(jù)

AND #00FFh,A

LD A,-7,A

XOR B,-7,A

BC _JUDGESUCCESS?,AEQ

; DQ7不是寫(xiě)入數(shù)據(jù),表示操作失敗

_JUDGEERRO?

_RESETFlash ;復(fù)位Flash

_JUDGESUCCESS?

POPM AR1

.endm

2 C5410 的自舉引導(dǎo)

  脫離仿真器獨(dú)立運(yùn)行程序一般有兩種方式:一種是上電后用戶程序直接在Flash存儲(chǔ)器中運(yùn)行,這種運(yùn)行速度比較慢;另一種是上電或復(fù)位后將用戶程序從Flash存儲(chǔ)器引導(dǎo)到高速數(shù)據(jù)存儲(chǔ)器中運(yùn)行,此方法最常用,可以較低的成本實(shí)現(xiàn)高速的運(yùn)行。為了實(shí)現(xiàn)這個(gè)過(guò)程就必須運(yùn)用DSP自舉引導(dǎo)功能。

 ?。?)自舉引導(dǎo)

  C5410上電復(fù)位后,首先檢查MP/MC狀態(tài):如果為高電平,說(shuō)明DSP處于微處理器工作方式,即從外部程序存儲(chǔ)器0FF80H地址開(kāi)始執(zhí)行用戶程序;若為低電平,說(shuō)明DSP被設(shè)置為微計(jì)算機(jī)工作方式,從片內(nèi)ROM的0FF80H地址開(kāi)始執(zhí)行程序。0FF80H地址存放的是中斷向量表,它實(shí)為一條分支轉(zhuǎn)移指令(BD 0F800H),使程序跳轉(zhuǎn)至0F800H執(zhí)行自舉引導(dǎo)程序(Bootloader)。Bootloader是固化在DSP芯片內(nèi)ROM中的一段程序代碼,其功能是將用戶程序從外部加載至片內(nèi)RAM或擴(kuò)展的RAM中,使其高速運(yùn)行。在搬運(yùn)程序之前,Bootloader首先完成初始化工作:使中斷無(wú)效,內(nèi)部RAM映射到程序/數(shù)據(jù)區(qū)(OVLY=1),對(duì)程序和數(shù)據(jù)區(qū)均設(shè)置7個(gè)等待狀態(tài)等。C5410有以下幾種自舉引導(dǎo)方式:主機(jī)接口HPI、并行口(8/16位)、標(biāo)準(zhǔn)串行口(MCBSP0是16位引導(dǎo)模式,MCBSP2是8位引導(dǎo)模式)以及I/O口(8/16位)自舉引導(dǎo)方式。

 ?。?)并行自舉引導(dǎo)

  這種方式是比較常用的一種,外部存儲(chǔ)器的字寬為8位或16位。在自舉引導(dǎo)時(shí),通過(guò)外部并行接口總線將這些代碼從數(shù)據(jù)存儲(chǔ)空間傳送到程序存儲(chǔ)空間,而且可以重新設(shè)置SWWSR及BSCR寄存器的內(nèi)容。并行自舉引導(dǎo)方式首先從地址為0FFFFH的I/O口讀取自舉表首地址的內(nèi)容,如果此內(nèi)容不符合8位或16位的引導(dǎo)方式,就從地址為0FFFFH的數(shù)據(jù)存儲(chǔ)器讀取,進(jìn)行8位或16位并行自舉引導(dǎo)。所以,在燒寫(xiě)Flash數(shù)據(jù)的同時(shí),也要在0FFFFH燒入自舉表的首地址。引導(dǎo)流程如圖2所示。

(3)建立自舉表

  自舉表內(nèi)容不僅包括欲加載的各段代碼,而且包括各段代碼長(zhǎng)度、各代碼段存放的目標(biāo)地址、程序入口地址等信息。若要完成自舉引導(dǎo)功能,必須建立正確的自舉表。自舉表可以由hex500格式轉(zhuǎn)換器自動(dòng)生成;也可以手動(dòng)建立自舉表,就是把被燒寫(xiě)的程序直接放在燒寫(xiě)程序中,根據(jù)被燒寫(xiě)程序的相關(guān)信息手動(dòng)建立自舉表。

3 C5410 燒寫(xiě)Flash和并行自舉引導(dǎo)

  下面通過(guò)一個(gè)Flash燒寫(xiě)實(shí)例,介紹怎樣將用戶程序燒寫(xiě)進(jìn)Flash,以及怎樣手動(dòng)建立自舉表,并且脫離仿真器以并行自舉引導(dǎo)方式使用戶程序獨(dú)立運(yùn)行。被燒寫(xiě)和燒寫(xiě)程序如下:

  .title "FLASH"

  .mmregs

SWCR .set 002BH

TEMP .set 0060H

  .data

  .sect ".BOOT"

  .label BOOTTABLE ; 自舉表開(kāi)始

  .word 10AAH ; 16位自舉標(biāo)記

  .word 7FFFH ; 7個(gè)等待周期(SWWSR)

  .word 0F000H ; 塊轉(zhuǎn)換寄存器(BSCR)

  .word 0000h ; 程序入口XPC

  .word 0200h ; 程序入口地址(MAIN_START)

  .word LOADEND - LOADSTART

  ; 程序塊長(zhǎng)度(0116H)

  .word 0000h ; 存放目標(biāo)XPC

  .word 0100h ; 存放目標(biāo)地址

LOADSTART: ;中斷向量表開(kāi)始地址

  .copy "vector.asm";復(fù)位處跳轉(zhuǎn)MAIN_START

MAIN_START: ;被燒寫(xiě)的主程序

  STM #0F7h,SP

  STM #012Ch,PMST

  ;IPTR=01(中斷向量指針為100,指向目標(biāo)地址),MP/MC=0,OVLY=1,AVIS=0,DROM=1, CLKOFF=1

LOOPF:RSBX XF ;XF置低

  CALL DELAY ;延時(shí)

  SSBX XF ;XF置高

  CALL DELAY

  B LOOPF

DELAY:PSHM AR6

  STM #0090H,AR6

DELAY_LOOP:

  RPT #0FF0h

  NOP

  BANZ DELAY_LOOP,*AR6-

  POPM AR6

  RET

LOADEND ; 被燒寫(xiě)的程序結(jié)束

  .space 20h

  .mmregs

  .label FINDTABLE

  .word 8000h

  .text

ERASE_WRITE_Flash: ;燒寫(xiě)程序開(kāi)始

  STM #0FFA0H,PMST

  STM #07FFFH,SWWSR

  STM #0FFFFH,SWCR

  _RESETFlash ; Flash復(fù)位

  _ERASEFlash ;擦除Flash

WRIFlashSTART: ;開(kāi)始編程Flash

  SSBX SXM

  RSBX OVM

  _RESETFLASH ; Flash復(fù)位

  STM #8000H,AR0 ;Flash起始地址8000H

  STM BOOTTABLE,AR5 ;被燒寫(xiě)的源地址(自舉

  ;表首地址)

  STM #( LOADEND- BOOTTABLE),AR4

  ; 寫(xiě)入011E個(gè)字

WRI_RPT

  _WRITEFlash *AR0,*AR5 ;調(diào)入編程宏

  LD *AR0+,A

  LD *AR5+,A ;完成AR0和AR5地址自動(dòng)加1

  BANZ WRI_RPT,*AR4-

  STM #0FFFFH,AR0; AR0指向數(shù)據(jù)空間的FFFF

 ??;地址

  STM FINDTABLE,AR5

  _WRITEFlash *AR0,*AR5 ; 向數(shù)據(jù)空間的FFFF

;地址寫(xiě)入自舉表的首地址8000H

ENDD: NOP

  B ENDD

  .end

  被燒寫(xiě)的主程序是從MAIN_START開(kāi)始,一直到LOADEND。程序的主要功能是不斷改變XF引腳的狀態(tài)。LOADSTART是中斷向量文件(vector.asm)的開(kāi)始,在中斷復(fù)位(RESET)處放入一條跳轉(zhuǎn)到MAIN_START指令(BD MAIN_START)。ERASE_WRITE_FLASH是燒寫(xiě)程序的開(kāi)始,只要程序指針( PC)指向ERASE_WRITE_FLASH,開(kāi)始運(yùn)行就可以完成對(duì)Flash的燒寫(xiě)操作。從自舉表首地址BOOTTABLE (0F8H)到LOADEND(0216H)存放的數(shù)據(jù)就是要寫(xiě)入Flash的內(nèi)容,從LOADSTART到LOADEND的數(shù)據(jù)是DSP自舉程序從Flash搬運(yùn)到片內(nèi)RAM的程序,具體如下:

00F8H: BOOTTABLE ; 自舉表開(kāi)始

0100H: LOADSTART ;中斷向量表首地址

0100H: RESET :BD MAIN_START

... ;中斷向量表的內(nèi)容

0178H: RESERVED

0200H: MAIN_START

... ;主程序

0216H: LOADEND

  被燒寫(xiě)的程序只需一個(gè)段,根據(jù)以上信息就可以完成自舉表的內(nèi)容,如表3所列。

表1 自舉表

數(shù)據(jù)區(qū)地址 內(nèi)   容 含    義
8000H 10AA 16位自舉標(biāo)記
8001H 7FFF SWWSR
8002H F000 BSCR
8003H 0000 程序入口XPC
8004H 0200 程序入口地址
8005H 0123 程序段長(zhǎng)度
8006H 0000 存放目標(biāo)XPC
8007H 0100 存放目標(biāo)地址
8008H F273 程序代碼1
8009H 0200 程序代碼2
…… …… ……
811DH FC00 程序代碼
811EH 0000 結(jié)束
…… …… ……
FFFFH 8000 自舉表存放首地址

  整個(gè)并行自舉引導(dǎo)過(guò)程為:C5410上電復(fù)位后,判斷MP/MC=0 處于微計(jì)算機(jī)工作方式,從片內(nèi)ROM的0FF80H處執(zhí)行中斷向量表的分支轉(zhuǎn)移指令(BD 0F800H),使程序跳轉(zhuǎn)至0F800H處執(zhí)行自舉引導(dǎo)程序。自舉引導(dǎo)程序完成初始化后,讀取數(shù)據(jù)空間的0FFFFH地址的內(nèi)容,找到自舉表首地址8000H,從8000H處開(kāi)始讀取內(nèi)容。首先,是16位自舉標(biāo)記(10AA)。然后分別是寄存器SWWSR及BSCR的內(nèi)容,程序入口地址、代碼段長(zhǎng)度、存放代碼段的目標(biāo)地址等信息。最后,根據(jù)這些信息把Flash的8008H到811EH的程序搬運(yùn)到片內(nèi)RAM的100H開(kāi)始的地址中,跳轉(zhuǎn)至片內(nèi)RAM 100H、即PC為100H、XPC為0,開(kāi)始執(zhí)行用戶程序,完成用戶程序的并行自舉過(guò)程。

結(jié) 語(yǔ)

  把程序燒寫(xiě)入Flash后,復(fù)位C5410,使其處于微計(jì)算機(jī)工作方式;使用示波器測(cè)試XF引腳,觀察程序運(yùn)行正確與否。通過(guò)上述方法可完成C5410對(duì)Am29LV200B Flash 的燒寫(xiě),很好地實(shí)現(xiàn)了C5410上電后的用戶程序自舉引導(dǎo)功能。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

中國(guó)北京(2025年9月10日)—— 業(yè)界領(lǐng)先的半導(dǎo)體器件供應(yīng)商兆易創(chuàng)新GigaDevice(股票代碼 603986)亮相于深圳國(guó)際會(huì)展中心舉辦的第26屆中國(guó)國(guó)際光電博覽會(huì)(展位號(hào):12C12),全面展示GD25 SPI...

關(guān)鍵字: 光通信 MCU Flash

在嵌入式系統(tǒng)中,F(xiàn)lash存儲(chǔ)器因其非易失性、高密度和低成本特性,成為代碼存儲(chǔ)和關(guān)鍵數(shù)據(jù)保存的核心組件。然而,MCU驅(qū)動(dòng)Flash讀寫(xiě)時(shí),開(kāi)發(fā)者常因?qū)τ布匦岳斫獠蛔慊虿僮髁鞒淌韬觯萑胄阅芟陆怠?shù)據(jù)損壞甚至硬件損壞的陷...

關(guān)鍵字: MCU驅(qū)動(dòng) Flash

深圳2025年4月24日 /美通社/ -- 4月23日,2025上海國(guó)際車展盛大啟幕,全球汽車產(chǎn)業(yè)的目光聚焦于這場(chǎng)科技與創(chuàng)新的盛宴。在眾多展示亮點(diǎn)中,汽車AI+應(yīng)用無(wú)疑是最大的熱點(diǎn)之一,“駕控超級(jí)大腦”技術(shù)概念、車機(jī)交互...

關(guān)鍵字: GB EMMC Flash PS

在自動(dòng)駕駛、機(jī)器人與工業(yè)檢測(cè)領(lǐng)域,激光雷達(dá)作為環(huán)境感知的核心傳感器,其技術(shù)路線正從機(jī)械式向固態(tài)化演進(jìn)。MEMS、OPA與Flash作為固態(tài)激光雷達(dá)的三大主流架構(gòu),分別通過(guò)微機(jī)電系統(tǒng)、光學(xué)相控陣與泛光面陣技術(shù)實(shí)現(xiàn)掃描與探測(cè)...

關(guān)鍵字: MEMS OPA Flash

在嵌入式系統(tǒng)開(kāi)發(fā)中,外部存儲(chǔ)介質(zhì)的選擇和管理至關(guān)重要。SPI Flash以其高容量、低功耗、高速率等特點(diǎn),成為眾多嵌入式設(shè)備的首選存儲(chǔ)方案。然而,如何高效管理SPI Flash存儲(chǔ),避免數(shù)據(jù)丟失、提高讀寫(xiě)性能,是開(kāi)發(fā)者必...

關(guān)鍵字: 嵌入式SPI Flash LittleFS

STM32單片機(jī)作為一種高性能、低功耗的嵌入式微控制器,廣泛應(yīng)用于各種電子設(shè)備中。在實(shí)際應(yīng)用中,為了擴(kuò)展存儲(chǔ)空間或?qū)崿F(xiàn)數(shù)據(jù)的持久化存儲(chǔ),經(jīng)常需要使用外部FLASH存儲(chǔ)器。本文將詳細(xì)介紹STM32單片機(jī)如何讀寫(xiě)外部FLAS...

關(guān)鍵字: STM32 Flash

在嵌入式系統(tǒng)和存儲(chǔ)設(shè)備領(lǐng)域,F(xiàn)lash和EEPROM(電可擦可編程只讀存儲(chǔ)器)因其非易失性存儲(chǔ)特性而被廣泛應(yīng)用。這些存儲(chǔ)設(shè)備能夠在斷電后保持?jǐn)?shù)據(jù),對(duì)于需要長(zhǎng)期保存配置參數(shù)、程序代碼或用戶數(shù)據(jù)的應(yīng)用來(lái)說(shuō)至關(guān)重要。然而,關(guān)于...

關(guān)鍵字: Flash EEPROM
關(guān)閉