亚洲春色中文字幕久久久-三上亚,一吻二脱三床四吻胸,国产真实伦对白视频全集,在线毛片观看,精品成品入口黄网,国产毛aⅴ片久久久,亚洲AV色香蕉一区二区三区老师,萧皇后A级艳片,色情日本视频更新,99久久亚洲精品日本无码

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 442|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

第13章 DS18B20溫度傳感器和Flash存儲(chǔ)器13.3、13.4

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
13.3 Flash存儲(chǔ)器
Flash存儲(chǔ)器又名閃存,也是一種掉電后可以存儲(chǔ)數(shù)據(jù)的存儲(chǔ)器,按主要類型分為NOR FlashNAND FlashFlash存儲(chǔ)器在現(xiàn)代電子設(shè)備中扮演者重要角色,廣泛應(yīng)用于手機(jī)、平板。數(shù)碼相機(jī)等消費(fèi)電子產(chǎn)品,以及汽車、工業(yè)控制、航空航天等領(lǐng)域,主流單片機(jī)的程序存儲(chǔ)空間也是Flash
為了更好的理解Flash,將FlashEEPROM的主要特點(diǎn)進(jìn)行對(duì)比。
1、相較于EEPROMFlash存儲(chǔ)器能夠提供較高的存儲(chǔ)密度,容量更大,適合需要大容量存儲(chǔ)的應(yīng)用場(chǎng)景。比如Kingst51開(kāi)發(fā)板上的Flash型號(hào)為W25Q32,是一個(gè)32Mbit大小的Flash存儲(chǔ)器。而24C02的僅有256個(gè)字節(jié),也就是2Kbit存儲(chǔ)空間,存儲(chǔ)空間上是16000倍,價(jià)格上僅23倍。
2、相較于EEPROMFlash存儲(chǔ)器的讀寫速度更快,尤其在讀取速度方面,NOR Flash的讀取速度非常快,適應(yīng)于需要頻繁讀取操作的應(yīng)用。
3、相較于FlashEEPROM允許按照字節(jié)進(jìn)行寫操作,可以靈活地修改單個(gè)字節(jié)的數(shù)據(jù)。而Flash要修改某個(gè)數(shù)據(jù)前,通常需要對(duì)整個(gè)扇區(qū)(4096字節(jié))進(jìn)行擦除后(整個(gè)扇區(qū)初始化為1)才能重新寫入。因此EEPROM更適合需要頻繁更新數(shù)據(jù)的應(yīng)用場(chǎng)景,而Flash更適合讀寫大量數(shù)據(jù)而不需要頻繁改變數(shù)據(jù)的場(chǎng)景。
4、Flash的讀寫比EEPROM的讀寫略微,用戶每次操作之前需要通知Flash具體操作指令,比如是“讀”還是“寫”,寫的話是“寫寄存器”還是“寫數(shù)據(jù)”。寫之前要先寫使能等等操作。
當(dāng)然這些指令在手冊(cè)里有列表說(shuō)明,每一條指令也都有詳細(xì)解釋,如表13-1所示。

Flash流程:
1、檢測(cè)是否“忙”。
2、使能引腳,寫入“讀數(shù)據(jù)”指令。
3、發(fā)送Flash讀數(shù)據(jù)起始地址,需要注意的是W25Q32這顆Flash的存儲(chǔ)空間是32Mbit,即4M字節(jié),因此他的地址是24位地址。
4、根據(jù)當(dāng)前地址讀取相應(yīng)數(shù)量的數(shù)據(jù)。
Flash流程:
1、檢測(cè)是否“忙”。
2、使能引腳,寫入“寫使能”指令。
3、發(fā)送“頁(yè)寫”指令。
4、發(fā)送Flash寫數(shù)據(jù)起始地址。
5、連續(xù)發(fā)送要寫入的數(shù)據(jù),寫入到Flash中去。
值得注意的是,如果寫Flash的數(shù)據(jù)牽扯到跨頁(yè)寫入,需要對(duì)跨頁(yè)進(jìn)行操作處理。
寫一個(gè)簡(jiǎn)單的程序,從某一地址讀出連續(xù)的2個(gè)數(shù)據(jù),第一個(gè)字節(jié)加1,第二個(gè)字節(jié)加2,分別重新寫回到flash中去。
flash.c程序的最開(kāi)始把特殊指令和頁(yè)大小、扇區(qū)大小進(jìn)行宏定義。
SPIWrite:將單字節(jié)按照SPI時(shí)序發(fā)送。
SPIRead:按照SPI協(xié)議讀取一個(gè)字節(jié)數(shù)據(jù)。
FlashBusyWait:檢測(cè)Flash是否“忙”狀態(tài)。Flash在跨頁(yè)寫入、扇區(qū)擦除、塊擦除等操作中都需要一定的時(shí)間,這段時(shí)間flash都處于“忙”狀態(tài),讀寫指令均不響應(yīng),因此讀寫之前要使用這個(gè)函數(shù)進(jìn)行“忙”檢測(cè)。
FlashReadFlash連續(xù)讀數(shù)據(jù)指令。
FlashSectorEraseFlash扇區(qū)擦除。Kingst51開(kāi)發(fā)板所采用的W25Q32這個(gè)Flash最小擦除單位就是扇區(qū)擦除。因此除非擦除后沒(méi)有寫入數(shù)據(jù),否則要改變已經(jīng)寫入的數(shù)據(jù),必須進(jìn)行擦除動(dòng)作,最小擦除單元為扇區(qū)。
FlashPageWrite:由于連續(xù)寫入數(shù)據(jù)有可能遇到跨頁(yè)的情況,本函數(shù)不提供跨頁(yè)判斷,一旦發(fā)現(xiàn)無(wú)法寫入后,將返回寫入的字節(jié)長(zhǎng)度,跨頁(yè)判斷可以在上層應(yīng)用函數(shù)中實(shí)現(xiàn)。
將使用SPI協(xié)議讀寫Flash的時(shí)序用邏輯分析儀抓出來(lái),并且分別用SPI協(xié)議進(jìn)行解析,如圖13-1013-11所示。

13-10 SPI配置信息      
                                                                                                                                                         

13-11 SPI通信時(shí)序圖
軟件的SPI的配置信息,必須和實(shí)際通信一致,才能正確解析數(shù)據(jù)。除了使用SPI進(jìn)行解析外,由于這是個(gè)flash器件,還可以使用特有的QSPI-flash解析器直接將指令解析出來(lái),如圖13-12和圖13-13所示。

13-12 QSPI-flash配置信息

                                                                                                                                                              
13-13 QSPI-flash解析結(jié)果
由于程序中存在扇區(qū)擦除操作,扇區(qū)擦除的時(shí)候flash會(huì)一直處于“忙”狀態(tài)無(wú)法響應(yīng)再次寫入,因此程序中間段存在一些忙檢測(cè)波形。將解析結(jié)果導(dǎo)出到excel表格中,截取一部分進(jìn)行觀察,如圖13-14所示,一共403個(gè)字節(jié)的數(shù)據(jù),圖片左側(cè)為前16個(gè)字節(jié),圖片右側(cè)為后17個(gè)字節(jié),中間字節(jié)全部為“忙檢測(cè)”。

13-14 QSPI-flash數(shù)據(jù)導(dǎo)出
從解析的數(shù)據(jù)可以看出,第一個(gè)字節(jié)是讀狀態(tài)寄存器,了解Flash是否在忙,第二個(gè)字節(jié)讀到了0x00,說(shuō)明Flash處于不忙的狀態(tài)。第三個(gè)字節(jié)0x03為讀數(shù)據(jù)命令,第四個(gè)字節(jié)是要讀取0x000000這個(gè)地址的連續(xù)數(shù)據(jù),讀到的2個(gè)字節(jié)數(shù)據(jù)是0x050x0B。而后再次進(jìn)行忙檢測(cè),由于剛剛進(jìn)行的是讀操作,所以Flash還是處于不忙的狀態(tài)。然后使用0x06這個(gè)寫使能命令,寫入了0x20指令進(jìn)行了從0x00地址開(kāi)始的單個(gè)扇區(qū)擦除(4096字節(jié))。擦除命令結(jié)束后程序進(jìn)入循環(huán)檢測(cè)flash的“忙”信號(hào),此時(shí)在一段時(shí)間內(nèi),發(fā)送0x05,回復(fù)的都是0x03,說(shuō)明flash都處于忙狀態(tài),一直到解析后數(shù)據(jù)的第398行再次檢測(cè)到0x00的不忙信號(hào),發(fā)送0x06這個(gè)寫使能指令,發(fā)送0x02的頁(yè)寫入指令,從地址0x000000開(kāi)始,寫入的2個(gè)字節(jié)分別為0x060x0D
W25Q32這個(gè)Flash的頁(yè)寫入、扇區(qū)擦除、塊擦除等各種操作所需要的大概時(shí)間在手冊(cè)里都有標(biāo)注,如圖13-15所示。
13-5  W25Q32時(shí)序要求
13.4練習(xí)題
1、掌握 DS18B20的時(shí)序過(guò)程,能夠理解1-wrie總線讀寫的時(shí)序。
2、理解SPI的通信原理,SPI通信過(guò)程的四種模式配置。
3理解flash存儲(chǔ)器的基本原理和操作方式,能獨(dú)立完成flash的讀寫操作。

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表