freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于i2c協(xié)議的eeprom讀寫功能實(shí)現(xiàn)(存儲(chǔ)版)

  

【正文】 2 基于 I2C協(xié)議的 EEPROM 讀寫功能實(shí)現(xiàn) 一.設(shè)計(jì)要求 1)通過(guò)軟件基于 I2C 協(xié)議對(duì) EEPROM 讀寫功能的實(shí)現(xiàn) 。在一個(gè) EEPROM 中,當(dāng)計(jì)算機(jī)在使用的時(shí)候是可頻繁地重編程的, EEPROM 的壽命是一個(gè)很重要的設(shè)計(jì)考慮參數(shù)。主器件和從器件皆可作為發(fā)送器或接收器,但 必須由主器件決定采取何種工作模式。一個(gè)主控能夠控制信號(hào)的傳輸和時(shí)鐘頻率。 4) 數(shù)據(jù)傳送 /數(shù)據(jù)有效 ( D) 數(shù)據(jù)線的狀態(tài)表明數(shù)據(jù)何時(shí)有效。在確認(rèn)時(shí)鐘的高電平期間, SDA 線以這種方式保持穩(wěn)定的低電平。隨后的 3 位為存儲(chǔ)塊選擇位 ( B B B0)。 2)帶功能性地址輸入引腳的器件尋址 在起始條件之后,從主器件接收的第一個(gè)字節(jié)是控制字節(jié)。一旦接收到 ‘ 1010’碼、器件片選位和 R/W 位,從器件輸出確認(rèn)信號(hào)到 SDA 總線。 對(duì)于 24XX00 器件,只使用地址字節(jié)的低 4 位。 (注:圖中控制字節(jié)指器件地址碼和讀寫控制位;地址字節(jié)指器件內(nèi)部的儲(chǔ)存器地址。對(duì)于字節(jié)寫操作,一旦接收到停止條件,內(nèi)部寫周期開(kāi)始。這包括在主器件發(fā)出起始條件后,再發(fā)送用于寫命令( R/W = 0)的控制字節(jié)。 24XX 內(nèi)置一個(gè)自動(dòng)加‘ 1’地址計(jì)數(shù)器,該計(jì)數(shù)器保留最后一次訪問(wèn)的地址。主器件再次發(fā)送控制字節(jié),而該字節(jié)中 R/W 位設(shè)置為‘ 1’。地址指針允許一次操作連續(xù)讀取整個(gè)存儲(chǔ)器的內(nèi)容。 char myarray2[8]。 Write_A_Page(myarray2,0x18)。 DELAY(DELAY_TIME)。 SDA=1。 DELAY(DELAY_TIME)。 基于 I2C 協(xié)議 EEPROM 讀寫功能的實(shí)現(xiàn) 17 DELAY(DELAY_TIME/2)。 for(i=0。i++) { SDA=1。} Else b=b1。 WriteI2CByte(thedata)。 acktemp=Check_Acknowledge()。 } char Read_One_Byte(char addr) { bit acktemp=1。 WriteI2CByte(0xa1)。 /*read 8 bytes from mem*/ I2C_Start()。 for(i=0。 char myarray[8]。 基于 I2C 協(xié)議 EEPROM 讀寫功能的實(shí)現(xiàn) 23 Write_A_Page(myarray,0x10)。最后, 關(guān)于這個(gè)程序的調(diào)試,由于現(xiàn)在水平和時(shí)間的限制,一時(shí)還無(wú)法實(shí)現(xiàn),但是對(duì)于程序的實(shí)現(xiàn)過(guò)程,我都懂了! 在這次課程設(shè)計(jì)中,我基本上完成了 本 次設(shè)計(jì)的任務(wù),使我學(xué)到了課本之外的東西,同時(shí)也讓我明白了,任何 人 在搞課程設(shè)計(jì)前,對(duì)自己搞的東西都不可能很懂,但是通過(guò)自己查資料,能一步一步弄懂的,在這其中得到的喜悅也是不言而喻的。首先,時(shí)間的分配方面,由于現(xiàn)在離考研的日子越來(lái)越近了,所以白天根本沒(méi)時(shí)間可以用來(lái)搞課程設(shè)計(jì),于是晚上 11 點(diǎn)后則成了我搞課程設(shè)計(jì)的時(shí)間,說(shuō)實(shí)在話, 在那樣艱苦的環(huán)境下, 我更感到任務(wù)的艱巨。 myarray2[i]=i+0x08。 } void main() { int i。 WriteI2CByte(0xa1)。 } void Read_N_Bytes(char *buffer,char n,char addr) { bit acktemp=1。/*address*/ acktemp=Check_Acknowledge()。 if(!Check_Acknowledge()) {I2C_Stop()。 /*write a page to at24c02*/ I2C_Start()。 WriteI2CByte(addr)。 if(F0==1) {b=b1。 for(i=0。 return TRUE。 } bit Check_Acknowledge(void) {/*發(fā)送完一個(gè)字節(jié)后檢驗(yàn)設(shè)備的應(yīng)答信號(hào) */ SDA=1。 DELAY(DELAY_TIME)。 SCL=1。 } void I2C_Start(void) 基于 I2C 協(xié)議 EEPROM 讀寫功能的實(shí)現(xiàn) 15 { /*啟動(dòng) I2C 總線的函數(shù),當(dāng) SCL 為高電平時(shí)使 SDA產(chǎn)生一個(gè)負(fù)跳變 */ SDA=1。 基于 I2C 協(xié)議 EEPROM 讀寫功能的實(shí)現(xiàn) 14 } Write_One_Byte(0x20,0x28)。 char mybyte。在 24器件向主器件發(fā)送完最后一個(gè)字節(jié)后,主器件不會(huì)產(chǎn)生確認(rèn)信號(hào),而是產(chǎn)生停止條件。字節(jié)地址發(fā)送完后 ,主器件一接收到確認(rèn)信號(hào)即產(chǎn)生起始條件。有 三種基本的讀操作:當(dāng)前地址的讀操作、隨機(jī)讀操作和連續(xù)讀操作 。如果主器件已經(jīng)發(fā)出寫命令的停止條件,器件將啟動(dòng)內(nèi)部定時(shí)寫周期。每接收一個(gè)字,內(nèi)部地址計(jì)數(shù)器加一。寫命令為一個(gè)字節(jié),在發(fā)送寫命令后,內(nèi)部地址計(jì)數(shù)器增加,指向下一個(gè)要尋址的位置。從器件在第九個(gè)時(shí)鐘周期產(chǎn)生一個(gè)確認(rèn)位, 主器件發(fā)送的第二個(gè)字節(jié)是地址字節(jié)或高位地址字節(jié) 。實(shí)際上這些位是字地址中 3 個(gè)最高有效位。 一旦接收到 ‘ 1010’碼、存儲(chǔ)塊選擇位和 R/W 位,從器件輸出確認(rèn)信號(hào)到 SDA 總線??刂谱止?jié)以 4 位控制碼開(kāi)始。主器件必須提供一個(gè)額外的時(shí)鐘以傳輸確認(rèn)位。 3) 停止數(shù)據(jù)傳輸( C) 時(shí)鐘( SCL)為高電平時(shí), SDA 從低電平變?yōu)楦唠娖奖硎就V箺l件產(chǎn)生??偩€的長(zhǎng)度可高達(dá) 25 英尺,并且能夠以 10Kbps 的最大傳輸速率支持 40個(gè)組件??偩€由主器件控制, 24XX 作為從器件。 EEPROM 即電可擦寫可編程只讀存儲(chǔ)器,其可通過(guò)高于普通電壓的作用來(lái)擦除和重編程(重寫)。 2)需要有 EEPROM 讀寫功能的具體實(shí)現(xiàn)過(guò)程 。 EEPROM 的一種特殊形式是閃存,其應(yīng) 用通常是個(gè)人電腦中的電壓來(lái)擦寫和重編程。 基于 I2C 協(xié)議 EEPROM 讀寫功能的實(shí)現(xiàn) 3 四. I2C 協(xié)議的介紹 1. I2C協(xié)議總線特征 總線協(xié)議定義如下: ? 只有在總線空閑時(shí)才可啟動(dòng)數(shù)據(jù)傳輸。當(dāng)然,在任何時(shí)間點(diǎn)上只能有一個(gè)主控。在起始條件之后,數(shù)據(jù)線在時(shí)鐘處于高電平期 間保基于 I2C 協(xié)議 EEPROM 讀寫功能的實(shí)現(xiàn) 4 持穩(wěn)定。當(dāng)然,還必須考慮建立時(shí)間和保持時(shí)間。主器件用它們來(lái)選擇將要訪問(wèn)的大小為 256 字的存儲(chǔ)塊??刂谱止?jié)以 4 位控
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計(jì)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1