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

正文內(nèi)容

基于linux的eeprom的讀寫控制畢業(yè)設(shè)計論文-資料下載頁

2025-06-18 16:47本頁面
  

【正文】 (2) 寫操作: 在寫 EEPROM 之前,同樣先要設(shè)置準(zhǔn)備要寫到的 EEPROM 內(nèi)部的數(shù)據(jù)地址,然后再執(zhí)行寫操作。寫操作一次最多可以寫入一個頁的數(shù)據(jù),一次寫入超過頁邊界的數(shù)據(jù)會被丟棄。每執(zhí)行一次寫操作,根據(jù)不同的 EEPROM 器件,需要適當(dāng)做一些延時。使 EEPROM 器件把剛剛接收到的數(shù)據(jù)寫入非易失性記憶體中,AT24C04華中科技大學(xué)文華學(xué)院畢業(yè)設(shè)計 (論文 )18需要延時 5~10MS。程序代碼如下:/*設(shè)置器件的內(nèi)部數(shù)據(jù)訪問地址 */Ioct1(fd, I2C_SET_DATA_ADDR,0)。Write(fd,amp。w_buf,PAGE_SIZE)。/* 延時 */Usleep(10*1000)。(3)關(guān)閉設(shè)備: 讀/ 寫操作完成后,需要關(guān)閉設(shè)備,關(guān)閉設(shè)備與關(guān)閉普通文件的操作類似,執(zhí)行 close()即可。程序代碼如下: Close(fd)。 設(shè)計參考程序/************************************************************文件:*說明:iic bus test example,read from or write to EEPORM*注釋:program modify,Embest .************************************************************include include include include include linux/include linux//* control code */define I2C_SET_DATA_ADDR 0X0601define I2C_SET_BUS_CLOCK 0X0602/* AT24C04N EEPROM definition */define SLAVE_ADDR 0X50define PAGE_NUM 1define PAGE_SIZE 16/* buffer*/Char w_buf[PAGE_NUM* PAGE_SIZE]。Char r_buf[PAGE_NUM* PAGE_SIZE]。Int main(int argc,char* * argv){ int 。華中科技大學(xué)文華學(xué)院畢業(yè)設(shè)計 (論文 )19 static char * driver =”/dev/i2c/0”。 printf(“EEPROM Read/Write Example base on Linux.\n”)。/* open device */fd= open(driver,0_RDWR)。/* set AT24C04N slave address (0xa0 1)*/Ioct1(fd,I2C_SLAVE_FORCE,SLAVE_ADDR)。/* set i2c bus clock 250KHZ */Ioct1(fd,I2C_SET_BUS_CLOCK,250*1000)。/* initialize write buffer */Printf(“write random date…\n”)。Srand(time(NULL))。For (i=0。i PAGE_NUM* PAGE_SIZE。i++){ w_buf[i]=rand()%oxff。}for (i=0。i PAGE_NUM* PAGE_SIZE。i++){ Printf(“%d”, w_buf[i])。}Printf(“\n”)。/* write date to AT24C04N EEPROM */for (i= PAGE_NUM1。I=0。i){ /* AT24C04N inner data access address */ Ioct1(fd, I2C_SET_DATA_ADDR,i*PAGE_SIZE)。 Write(fd,amp。w_buf[i*PAGE_SIZE],PAGE_SIZE)。/* delay some time for write nonvolatile memory. */ Usleep(10*1000)。}/* read data from AT24CO4N EEPROM */Printf(“Read date…\n”)。for (i=0。i iPAGE_NUM。i++){/* AT24C04N inner data access address */Ioct1(fd, I2C_SET_DATA_ADDR,i*PAGE_SIZE)。華中科技大學(xué)文華學(xué)院畢業(yè)設(shè)計 (論文 )20Read (fd,amp。r_buf[i*PAGE_SIZE],PAGE_SIZE)。}/* printf data */for (i=0。i PAGE_NUM* PAGE_SIZE。i++){ Printf(“%d”, w_buf[i])。}Printf(“\n”)。/* pare data */If(memcmp(w_buf,r_buf,PAGE_NUM*PAGE_SIZE)= =0){ Printf(“Very date successful\n”)。}Else{ Printf(“Very date failed\n”)。}Close(fd)。Return 0。} 實驗結(jié)果分析由于已編譯的內(nèi)核沒有安裝 IIC 驅(qū)動,所以運行程序前需要安裝 IIC 算法驅(qū)動程序。對于 EduKit2410 系統(tǒng),提供了兩個動態(tài)模塊文件 ,使用 TFTP 下載文件到開發(fā)板后,安裝運行: tftpg ..11r.././insmod lsmod Module size used by Not taintedI2c 2672 0(unused) 然后,再執(zhí)行下載到 linux 系統(tǒng)的 testiic 測試程序,并在輸入終端觀察結(jié)果。本程序是通過往 EEPROM 里寫入一頁 16 字節(jié)數(shù)據(jù),并讀出比較,檢測是否一致。程序如果正確運行,可以看到以下信息輸出:./ testiic./ testiiceeprom read/Write Example base on Linux.華中科技大學(xué)文華學(xué)院畢業(yè)設(shè)計 (論文 )21Write random date...Read date...__Very date successful__華中科技大學(xué)文華學(xué)院畢業(yè)設(shè)計 (論文 )22 結(jié)束語本設(shè)計是基于 linux 應(yīng)用程序設(shè)計的 ARM9 嵌入式開發(fā)實驗。通過在 EduKit2410實驗平臺,Windows 98/2022/NT/XP 以及 windows 平臺下的 cygwin 環(huán)境以及通過查詢資料,詢問老師以及和同學(xué)的交流完成了此次在 LINUX 的 EEPROM 的讀寫控制的設(shè)計。在本次的開發(fā)過程中,我意識到最重要的環(huán)節(jié)在于對 IIC 總線的讀/ 寫控制邏輯以及 EEPROM 器件等方面的把握和設(shè)計。然后在深入理解 IIC 總線的讀/ 寫控制的基礎(chǔ)上,如何正確的把握和觀察設(shè)計結(jié)果成為整個設(shè)計成功與否的關(guān)鍵環(huán)節(jié)。在這方面我可以說是深有體會。同時,在這次的系 linux 設(shè)計環(huán)節(jié)中中我也看到了自己在新知識的學(xué)習(xí),新工具的應(yīng)用方面的不足。開始時,我對 linux 的了解是停留在書面上的了解,還不夠深入透徹。本次設(shè)計的過程也就成為我對 linux 的深入透徹學(xué)習(xí)的過程。正因為這樣,所以在設(shè)計過程中往往會被一些問題卡住。在原地徘徊了一段時間后,我通過查找參考資料,和同學(xué)交流,利用互聯(lián)網(wǎng)向有經(jīng)驗的編程人員請教等各種方式試著克服在設(shè)計過程中遇到的困難。隨著開發(fā)設(shè)計的深入,我也逐漸掌握了一部分設(shè)計技巧,了解了一些關(guān)于設(shè)計方面的規(guī)律,一些困難也就迎刃而解了。總之,本設(shè)計對我來說不僅僅是一次畢業(yè)設(shè)計,這也是我一次有意義的學(xué)習(xí)、提高的過程。通過這次系統(tǒng)開發(fā),我不但初步掌握了 linux 開發(fā)工具,也讓我看到了自己知識結(jié)構(gòu)、知識儲備、學(xué)習(xí)和應(yīng)用能力上的不足。我想,在今后的學(xué)習(xí)和工作中,我將針對這些發(fā)現(xiàn)的問題,不斷努力和提高自身各方面的素質(zhì),為社會做出自己應(yīng)有的貢獻(xiàn)。華中科技大學(xué)文華學(xué)院畢業(yè)設(shè)計 (論文 )23 參考文獻(xiàn)[1] Linux 設(shè)計與應(yīng)用[M].北京:清華大學(xué)出版社, [2] Linux 系統(tǒng)設(shè)計與應(yīng)用[M].北京:清華大學(xué)出版社,[3] Linux 的嵌入式系統(tǒng)在測控系統(tǒng)中的設(shè)計與應(yīng)用[M].貴州工業(yè)大學(xué)出版社,[4]waynewolf [M].:機械工業(yè)出版社,[5]田澤. ARM9 嵌入式 Linux 開發(fā)實驗與實踐[M].北京:北京航空航天大學(xué)出版社,[6] Yodaiken.Real-Time press,2022.[7]Victor Yodaiken. Michael Barabanov.A Real-Time press,2022. [8]陳莉君.Linux 操作系統(tǒng)內(nèi)核分析[M].北京:人民郵電出版社,[9]殷茜,溫平川,應(yīng)俊.嵌入式軟件調(diào)試環(huán)境的對等協(xié)議的設(shè)計與實現(xiàn)[M].重慶:重慶郵電學(xué)院學(xué)報(自然科學(xué)版) ,[10] 魏永明,駱剛, 設(shè)備驅(qū)動程序[M].第 2 :中國電力出版社,105[11]唐建東,盧貴主. 嵌入式操作系統(tǒng) Linux 中的串口應(yīng)用編程[M]. 北京:機械工業(yè)出版社,2022. 8284[12]馬忠梅,馬廣云,徐英慧等. ARM 嵌入式處理器結(jié)構(gòu)與應(yīng)用基礎(chǔ)[M].北京:北京航空航天大學(xué)出版社,[13]王田苗.嵌入式系統(tǒng)設(shè)計與實例開發(fā)[M].北京:清華大學(xué)出版社,[14]杜春偉. ARM 體系結(jié)構(gòu)與編程[M].北京:清華大學(xué)出版社,[15] (英國)弗伯著. ARM SOC 體系結(jié)構(gòu)[M]. :北京航空航天大學(xué)出版,華中科技大學(xué)文華學(xué)院畢業(yè)設(shè)計 (論文 )24致 謝在本次畢業(yè)設(shè)計中,我從指導(dǎo)老師戴老師身上學(xué)到了很多東西,取人之長,補已之短。指導(dǎo)老師認(rèn)真負(fù)責(zé)的工作態(tài)度,嚴(yán)謹(jǐn)?shù)闹螌W(xué)精神和深厚的理論水平都使我受益匪淺。他無論在理論上還是在實踐中,都給與我很大的幫助,使我得到不少的提高這對于我以后的工作和學(xué)習(xí)都是一種巨大的幫助和財富,忠心感謝指導(dǎo)老師的耐心輔導(dǎo)。在此我向他們至以最高的敬意
點擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1