當(dāng)前位置:首頁 > 智能硬件 > 智能硬件
[導(dǎo)讀]文中介紹了該器件的主要特性和工作原理,并以IC卡封裝形式為例,給出了其與單片機的接口電路及相應(yīng)的讀寫程序。

   摘要:SSF1101是存儲容量為4Mbit的SPI串行接口FLASH存儲器,其IC卡封裝形式可作為單片機系統(tǒng)的大容量數(shù)據(jù)存儲卡。文中介紹了該器件的主要特性和工作原理,并以IC卡封裝形式為例,給出了其與單片機的接口電路及相應(yīng)的讀寫程序。

    關(guān)鍵詞:串行FLASH 單片機 IC卡

1 概述

對于野外移動工作或不便與上位機通信的單片機數(shù)據(jù)采集系統(tǒng),使用一個大容量、可插拔、便于更換和攜帶的智能卡來存儲采集到的數(shù)據(jù),是一個較好的數(shù)據(jù)存儲方案。SSF1101是上海新茂半導(dǎo)體有限公司生產(chǎn)的4Mbit串行接口可編程閃速存儲器,該器件采用SPI串口模式與單片機或微機通信,無需任何外圍元件。利用該器件提供的IC卡封裝形式,可非常方便地和單片機系統(tǒng)進行接口以構(gòu)成大容量的數(shù)據(jù)存儲裝置。同時,該芯片具有封裝尺寸小、集成度高、電壓低、存儲容量大、接口方式簡單等優(yōu)點,在商業(yè)和工業(yè)領(lǐng)域具有廣泛的應(yīng)用前景。

2 性能特點

SSF1101是一個4Mbit的串行FLASH存儲器,具有4根器件識別腳,可在一個系統(tǒng)中最多能擴展16片,其總存儲容量可達8M字節(jié),該器件的性能特點如下:

●SPI串行數(shù)據(jù)接口符合SPI標(biāo)準(zhǔn);

●器件內(nèi)具有4M Bit 閃速存儲器,512頁,每頁1024字節(jié);

●內(nèi)置4位器件地址譯碼電路,可直接并聯(lián)擴展存儲容量,最多可連接16片;

●帶有雙1k字節(jié)的數(shù)據(jù)緩沖器,可在編程期間寫入或讀取數(shù)據(jù),且讀取/寫入地址自動遞增;

●高速頁面編程,典型時間為20ms;

●高速頁面到數(shù)據(jù)緩沖器的傳輸?shù)湫蜁r間為100μs;

●頁面擦除典型時間為10ms;

●器件擦除典型時間為2s;

●內(nèi)置擦除/編程時序邏輯;

●可硬件寫保護;

●時鐘頻率最高達10MHz;

●采用單5V電源工作,并有低電壓2.7~3.5V可供選擇;

●低功耗,休眠電流典型值為18μA;

●與CMOS電平和TTL輸入/輸出電平兼容;

●工作溫度很寬(商用);

●內(nèi)置上電復(fù)位電路;

●在數(shù)據(jù)緩沖器和主Flash之間進行傳送或比較時,可對未用的數(shù)據(jù)緩沖器和狀態(tài)寄存器進行操作。

SSF1101采用32腳TSOP封裝和IC卡封裝兩種形式,其TSOP封裝外形及引腳排列如圖1(a)所示,IC卡的觸點配置如圖1(b)所示。器件的引腳功能說明見表1所列。

表1 SSF110引腳說明

序  號 引腳名 I/O

描      述

1 RDY/BUSY O 閑/忙指示,此腳為低時表示器件忙,不能閃存進行操作
2 RST I 復(fù)位,低有效
3 WP I 寫保護,高有效。此信號有效時不能對閃存進行寫擦除操作
6 Vcc I 電源
7,8 GND I
4,5,9,10 ID0~ID3 I 芯片地址A0~A3,只有命令中的Device ID和ID0~ID3引腳電平一致時,命令才會被器件接受
11 TM I 測試引腳,正常使用時接地
12 CS I 片選,低有效,命令輸入后應(yīng)重新置為高電平
13 SCK I 串行輸入數(shù)據(jù)時鐘
14 SI I 數(shù)據(jù)輸入,命令和數(shù)據(jù)都由此腳串行輸入
15 SO O/Z 串行數(shù)據(jù)輸出,三態(tài)
16~32 NC Z 空腳

3 工作原理

SSF1101具有4194304位主存儲單元,分成512頁面、每頁面1024個字節(jié)。此外SSF1101還包含有2個SRAM緩沖器,每個緩沖器有1024個字節(jié),當(dāng)主存儲器內(nèi)的1頁正被編程時,緩沖器照樣能接收輸入數(shù)據(jù)。SSF1101使用SPI串口訪問它的數(shù)據(jù),因而硬件設(shè)計十分方便,系統(tǒng)可靠性很強,并可把開關(guān)噪聲降到最低。該芯片在編程期間,不需要高電壓,而編程電壓仍為電源電壓。 圖2所示是SSF1101存儲器的內(nèi)部結(jié)構(gòu)框圖。

SSF1101通過簡單的SPI串行口進行數(shù)據(jù)存取,器件的操作由主機發(fā)出的指令控制,一個有效指令包括一字節(jié)4位操作碼、4位器件地址以及目的緩沖器或主儲器地址位置。當(dāng)CS為0時,主機向器件SCK端發(fā)送時鐘信號,以引導(dǎo)操作碼和地址從SI端寫入到器件中。所有指令地址和數(shù)據(jù)都是先送高位。SSF1101的操作命令如表2所列。表中的X可取任意值,它對器件操作沒有影響。

表2 SSF1101操作命令表

操     作 命  令 器件地址 頁面地址 緩沖區(qū)地址
讀緩沖區(qū)1 1110 dddd XXXXXXXXXXXX BA11-BA0
讀緩沖區(qū)2 1111 dddd XXXXXXXXXXXX BA11-BA0
寫緩沖區(qū)1 0110 dddd XXXXXXXXXXXX BA11-BA0
寫緩沖區(qū)2 0111 dddd XXXXXXXXXXXX BA11-BA0
使用內(nèi)建擦除周期的從緩沖區(qū)1到閃存?zhèn)魉?/TD> 1010 dddd PA11-PA0 XXXXXXXXXXXX
使用內(nèi)建擦除周期的從緩沖區(qū)2到閃存?zhèn)魉?/TD> 1011 dddd PA11-PA0 XXXXXXXXXXXX
不使用內(nèi)建擦除周期的從緩沖區(qū)1到閃存?zhèn)?/TD> 0010 dddd PA11-PA0 XXXXXXXXXXXX
不使用內(nèi)建擦除周期的從緩沖2到內(nèi)存?zhèn)魉?/TD> 0011 dddd PA11-PA10 XXXXXXXXXXXX
閃存到緩沖區(qū)1的傳送 1100 dddd PA11-PA0 XXXXXXXXXXXX
閃存到緩沖區(qū)2的傳送 1101 dddd PA11-PA0 XXXXXXXXXXXX
比較閃存頁面和緩沖區(qū)1 0100 dddd PA11-PA0 BA11-BA0
比較閃存頁面和緩沖區(qū)2 0101 dddd PA11-PA0 BA11-BA0
閃存直接讀 0001 dddd PA11-PA0 BA11-BA0
狀態(tài)寄存器讀 0000 dddd XXXXXXXXXXXX XXXXXXXXXXXX
片擦除 1001 dddd XXXXXXXXXXXX XXXXXXXXXXXX

3.1 狀態(tài)寄存器(SR)

SSF1101具有一個8bit的狀態(tài)寄存器,可用于指示器件的工作狀態(tài)。該寄存器可通過“狀態(tài)寄存器讀”命令讀出寄存器中的內(nèi)容。寄存器內(nèi)容及定義如下:

BF: 忙標(biāo)志,為1時,表示器件忙,無法執(zhí)行對閃存的操作命令;

CF:比較標(biāo)志,為1時,表示緩沖區(qū)中的內(nèi)容和指定的被比較的閃存頁面不一致;

WPF:寫保護標(biāo)志,為1表示器件處于硬件寫保護狀態(tài);

Bit2~Bit0:容量指示位,為全1表示閃存容量為4Mbit;

Res:保留位,暫為01;

當(dāng)器件正確上電復(fù)位后,SR為 00001111B。

3.2 命令操作說明

(1)緩沖區(qū)傳送

緩沖區(qū)傳送分為三種,首先通過閃存到緩沖區(qū)的傳送命令可把指定閃存頁面中的內(nèi)容拷貝到緩沖區(qū)1或緩沖區(qū)2中,傳送到緩沖區(qū)1的命令碼為:1100dddd PA11-PA0 XXXXXXXXXXXX,共32位, 并繼續(xù)保持SCK到至少第35個周期。其中的PA11 - PA0為指定被傳送的閃存頁面, 如果超出器件的范圍,則自動取模。當(dāng)CS被置高后,傳送操作開始, 同時狀態(tài)寄存器中的BF位有效。 完成傳送操作大約需要100μs, 完成后,BF標(biāo)志清零(下述命令中,如沒有特別指出,其命令碼含義及操作時序均與此相同,此外針對緩沖區(qū)2的操作僅命令不同,其余部分完全相同,下述命令均相同)。

使用內(nèi)建擦除周期的從緩沖區(qū)到閃存?zhèn)魉兔顣r,一般先使用內(nèi)建的擦除周期擦除指定的閃存頁面,然后把緩沖區(qū)中的內(nèi)容拷貝到指定的閃存頁面中。

不使用內(nèi)建擦除周期的從緩沖區(qū)到閃存?zhèn)魉兔顣r,可直接把緩沖區(qū)中的內(nèi)容拷貝到指定的閃存頁面中。

(2)讀寫緩沖區(qū)

讀緩沖區(qū)命令用于讀取緩沖區(qū)1(或2)中的一個或多個字節(jié)數(shù)據(jù),命令碼為:

1110ddddXXXXXXXXXXXXBA11-BA0。

其中,BA11-BA0 用于指定從緩沖區(qū)中讀取數(shù)據(jù)的開始地址,如果超出緩沖區(qū)大小則自動取模。器件在第35個SCK的下降沿開始從SO引腳輸出數(shù)據(jù),且高位在前。讀取一個字節(jié)后,緩沖區(qū)地址自動加1,然后繼續(xù)輸出下一地址的數(shù)據(jù)。如到達緩沖區(qū)的尾部, 則自動返回到緩沖區(qū)的起始地址。輸出最后一個字節(jié)后需額外的3~7個脈沖。

寫緩沖區(qū)命令用于將一個或多個字節(jié)數(shù)據(jù)寫入緩沖區(qū)1(或2)中,命令碼為:

0110ddddXXXXXXXXXXXXBA11-BA0

其中,BA11-BA0用來指定寫入緩沖區(qū)的開始地址,如果地址超出緩沖區(qū)大小則自動取模。器件在第33個SCK的上升沿開始從SI引腳接收數(shù)據(jù)(高位在前),接收一個字節(jié)后寫入緩沖區(qū), 并自動對緩沖區(qū)地址加1后繼續(xù)接收下一地址的數(shù)據(jù)。如果到達緩沖區(qū)的頁尾,則自動返回到緩沖區(qū)的起始地址。輸出最后一個字節(jié)后需額外的3~7個脈沖。

(3)閃存直接讀

閃存直接讀命令用于直接從閃存頁面中讀取數(shù)據(jù),而不通過緩沖區(qū),也不影響緩沖區(qū)中的內(nèi)容。其命令碼為:

0001dddd PA11-PA0 BA11-BA0。

其中,PA11-PA0用于指定被操作的閃存頁面, 如果超出器件的范圍,則自動取模;BA11-BA0則用來指定從頁面內(nèi)讀取數(shù)據(jù)的開始地址,同樣, 如果超出頁面大小則自動取模。器件在第35個SCK的下降沿開始從SO引腳輸出數(shù)據(jù), 高位在前。 輸出一個字節(jié)后頁面內(nèi)數(shù)據(jù)地址自動加1,然后繼續(xù)輸出下一地址的數(shù)據(jù)。如果到達頁尾,則自動返回到頁初地址。

(4)比較閃存頁面和緩沖區(qū)

此命令用于比較指定的閃存頁面和緩沖區(qū)內(nèi)的數(shù)據(jù)是否相同,在被置高后開始比較, 同時BF被置1。如果比較結(jié)果為不相同,則狀態(tài)寄存器的CF位被置1, 否則CF清零, 比較結(jié)束后BF清零。

(5)讀狀態(tài)寄存器

狀態(tài)寄存器讀命令用于讀出器件內(nèi)狀態(tài)寄存器的值。

(6)片擦除

片擦除命令用于擦除閃存所有頁面的數(shù)據(jù),一個擦除周期大約需要2s。

4 具體應(yīng)用

SSF1101由于具有512kbyte的大存儲容量,因此可廣泛應(yīng)用于數(shù)字語音存儲、圖象存儲和數(shù)據(jù)存儲等應(yīng)用領(lǐng)域,以構(gòu)成大容量的單片機數(shù)據(jù)采集系統(tǒng)。由AT89C52單片機與SSF1101構(gòu)成的IC卡讀寫電路如圖3所示。

圖3中,AT89C52的P1.0、P1.1、P1.2分別與SSF1101 SPI的接口SI、SCK及SO端相連以實現(xiàn)簡單的三線串行通信,P1.3與CS相連用于控制對器件的訪問,圖中的C9與C10是IC卡座的接通開關(guān),當(dāng)IC卡插入時開關(guān)閉合,C1端接入+5V電源,SSF1101上電復(fù)位后讀寫電路進入正常的讀寫狀態(tài),當(dāng)IC卡拔出后C1端經(jīng)電阻R2向AT89C52的INT0端發(fā)出中斷請求,從而轉(zhuǎn)向掉卡中斷處理程序。下面的程序代碼為與上述硬件電路配套的讀寫IC卡程序:

;位定義

SI BIT P1.0;串行數(shù)據(jù)輸入

SCK BIT P1.1;串行時鐘

SO BIT P1.2;串行數(shù)據(jù)輸出

CS BIT P1.3;片選控制

;內(nèi)存定義

RCMD EQU 30H;讀卡命令單元

PAH EQU 31H;閃存頁面高位單元

PAL EQU 32H;閃存頁面低位單元

BAH EQU 33H;閃存地址高位單元

BAL EQU 24H;閃存地址低位單元

ICRDATA EQU 20H;讀寫數(shù)據(jù)緩沖區(qū)首址

NUMBER EQU 80H;數(shù)據(jù)塊長度

;讀IC卡子程序,采用閃存直接讀方式

RCARD: SETB CS

SETB SI ;初始化SPI

SETB SO

CLR SCK

MOV RCMD,#10H;“閃存直接讀”命令

MOV DAH,#00H ;00頁面

MOV DAL,#00H

MOV BAH,#00H ;00地址

MOV BAL,#00H

CLR CS ;選中芯片

MOV R0,#RCMD ;指向命令單元

MOV R1,#04H ;4字節(jié)命令

T RCMD: MOV A,@R0

LCALL S OUT ;調(diào)用發(fā)送子程序

INC R0

DJNZ R1,T RCMD

MOV R0,#ICRDATA ;指向讀寫數(shù)據(jù)

緩沖區(qū)首址

MOV R1,#NUMBER

RICDATA: LCALL SIN ;調(diào)用接收子程序

MOV @R0,A ;讀128字節(jié)數(shù)據(jù)到主機

INC R0

DJNZ R1,RICDATA

SETB CS

RET

;寫IC卡子程序;數(shù)據(jù)首先寫入緩沖區(qū),再使用內(nèi)建擦除周期的從緩沖區(qū)1到內(nèi)存?zhèn)魉兔顚懭胫鞔?/P>

WCARD: SETB CS

SETB SI

SETB SO

CLR SCK

MOV RCMD,#60H ;“寫緩沖區(qū)1”命令

MOV BAH,#00H ;寫00H地址

MOV BAL,#00H ;單元

CLR CS

MOV R0,#RCMD

MOV R1,#04H

T RCMD1: MOV A,@R0

LCALL S OUT

INC R0

DJNZ R1,T RCMD

MOV R0,#ICRDATA;指向讀寫緩沖區(qū)

MOV R1,#NUMBER

T RDATA: MOV A,@R0

LCALL S OUT

INC R0

DJNZ R1,T-RDATA

SETB SCK

CLR SCK

SETB SCK

CLR SCK

SETB SCK

CLR SCK

MOV RCMD,#0A0H

MOV DAH,#00H

MOV DAC,#00H

CLR CS

MOV R0,#RCMD

MOV R1,#04H

T RCMD2: MOV A,@R0

LCALL S OUT

INC R0

DJNZ R1,T-RCMD

SETB CS

LCALL DL30MS ;延時30ms

RET

;接收一字節(jié)數(shù)據(jù)程序

S-IN: MOV R6,#8

RSHIFT: MOV C,SO

SETB SCK

RLC A

CLR SCK

DJNZ R6,RSHIFT

RET

;發(fā)送一字節(jié)數(shù)據(jù)子程序

S OUT: MOV R7,#8

TSHIFT: RLC A

MOV SI,C

SETB SCK

NOP

CLR SCK

NOP

CLR SCK

DJNA R7,TSHIFT

RET

5 結(jié)束語

SSF1101串行閃速存儲器的串行IC卡封裝形式非常便于和單片機接口,以便構(gòu)成便攜式數(shù)據(jù)存儲裝置,同時其較大的存儲容量也可滿足數(shù)據(jù)存儲量較大的應(yīng)用系統(tǒng)要求,因而該器件在數(shù)據(jù)存儲領(lǐng)域有著較為廣泛的應(yīng)用前景。

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

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉