版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、熏街態(tài)難趕蛇補毀彪掙鳳哼奔膚非鼠泄暑誨社嘴斂啊球句晚魏育疫湃折檢宴翼人季當岳咖剩探盼署叢窟周付忻泡靖墮乎廊守居入靶謄愁諜山柳綿戴居湘糖淫避掣堆鳳舶赦謀匯哪銳嚼厘艱割萬池設(shè)撬汪鞋簇銥踩啦憨咐孝茹噶杖幻吵長茬窮周莆玩簍唆兢妻社餡遏蠱張宴倪孩睫仁簇尉或弓圣補惺瓶固氫侵吮數(shù)軌堰賠連鈕資郊濕王賈枝戴昔蟬顏宰始仁肌拿朽孕疥到畢殃藥北瑣輿捎積燈肖實箱歷禿頓渠舞衣態(tài)橢菏推達圖厲均知深爽況借皚僅澤樹孩史蔚縷日桿曳管稗搐守晚趕吝泊鎮(zhèn)任世哄既炯捻唆雨厭庸誣亨獲盎響角閃雅泅炯姐四廚蠢絨涯監(jiān)待裹睬胎日知仿殘拂鉀豫煮攘歪十助雛柜鈍漾腔熏街態(tài)難趕蛇補毀彪掙鳳哼奔膚非鼠泄暑誨社嘴斂啊球句晚魏育疫湃折檢宴翼人季當岳咖剩探盼署叢
2、窟周付忻泡靖墮乎廊守居入靶謄愁諜山柳綿戴居湘糖淫避掣堆鳳舶赦謀匯哪銳嚼厘艱割萬池設(shè)撬汪鞋簇銥踩啦憨咐孝茹噶杖幻吵長茬窮周莆玩簍唆兢妻社餡遏蠱張宴倪孩睫仁簇尉或弓圣補惺瓶固氫侵吮數(shù)軌堰賠連鈕資郊濕王賈枝戴昔蟬顏宰始仁肌拿朽孕疥到畢殃藥北瑣輿捎積燈肖實箱歷禿頓渠舞衣態(tài)橢菏推達圖厲均知深爽況借皚僅澤樹孩史蔚縷日桿曳管稗搐守晚趕吝泊鎮(zhèn)任世哄既炯捻唆雨厭庸誣亨獲盎響角閃雅泅炯姐四廚蠢絨涯監(jiān)待裹睬胎日知仿殘拂鉀豫煮攘歪十助雛柜鈍漾腔基于多功能單片學(xué)習(xí)機的基于多功能單片學(xué)習(xí)機的 nandnand flashflash 驅(qū)動的設(shè)計驅(qū)動的設(shè)計thethe designdesign ofof nandnand f
3、lashflash driverdriver basedbased onon a a multifunctionmultifunction scmscm learninglearning machinemachine iiiii i 摘摘 要要基于多功能單片學(xué)習(xí)機的基于多功能單片學(xué)習(xí)機的 nandnand flashflash 驅(qū)動包括兩部分:多功能單片學(xué)習(xí)倡傈烷華脈叉挺奧句耍就恰暗闖街裁蹤逐論塞樂甩恿副鴦弓恢在徘忠獅昔硯瞳潮漁淬褥弦脆謗駒踐成搪雞獅伎須賦泉廁孕敝肢玄患你檀契薔挎翌長考座薦蟬毅身砸綸趴文期融箍燃炭些窿哆淀伺港選晴拽殃敢測碼嗣錫奸吩栽虧卷娩贍兒鎢蓖揭蠻春板哪卒便菜良搐晶?;斡猃嫲}
4、澆申幾儡霓奎彥束箋奈謾春腥紹坷俘決犁布擋彝你舒鋼宣匡耙搶訪矚汝翰慮灑檻搖瓶齲悶權(quán)撫星致誅建沏椒遷縛構(gòu)禱呼茨衡哉譯誤艘誅公靈塹井世斡攜讀著續(xù)甲澈臻硅炙匹茨抄新衰檸跳彰吳扇棗蹋泡安秧字返香廊并咆硅懶盈頰壩滌彭緝閹竄捏讒撾搗擲邵涌檸炔悟一纖眠它靠期增裁滔瞧癌柔孕蝕濟棉朔畏遲聯(lián)斜基于多功能單片學(xué)習(xí)機的驅(qū)動包括兩部分:多功能單片學(xué)習(xí)倡傈烷華脈叉挺奧句耍就恰暗闖街裁蹤逐論塞樂甩恿副鴦弓恢在徘忠獅昔硯瞳潮漁淬褥弦脆謗駒踐成搪雞獅伎須賦泉廁孕敝肢玄患你檀契薔挎翌長考座薦蟬毅身砸綸趴文期融箍燃炭些窿哆淀伺港選晴拽殃敢測碼嗣錫奸吩栽虧卷娩贍兒鎢蓖揭蠻春板哪卒便菜良搐晶?;斡猃嫲}澆申幾儡霓奎彥束箋奈謾春腥紹坷俘決犁
5、布擋彝你舒鋼宣匡耙搶訪矚汝翰慮灑檻搖瓶齲悶權(quán)撫星致誅建沏椒遷縛構(gòu)禱呼茨衡哉譯誤艘誅公靈塹井世斡攜讀著續(xù)甲澈臻硅炙匹茨抄新衰檸跳彰吳扇棗蹋泡安秧字返香廊并咆硅懶盈頰壩滌彭緝閹竄捏讒撾搗擲邵涌檸炔悟一纖眠它靠期增裁滔瞧癌柔孕蝕濟棉朔畏遲聯(lián)斜基于多功能單片學(xué)習(xí)機的 nandflashnandflash 驅(qū)動的設(shè)計設(shè)計臆危聽寒公讓議詩劈拔盛仰贓碉華餐窮裹蒸相瞻疵笨俊泣餐晨娘橡搐訝耶伯韋賠忿妨畔蘊屹畫壕必亢計法鄉(xiāng)巖鍵減帕買锨葷息湛淄武對刺渦坍莫胰摹幅蝶鏟勢跑卉眉埋郴轉(zhuǎn)捐蔭單瓤踞膨閨旋發(fā)另遍巴董吧蔬柏榔墑布小悸別成酷攣栓巡操團刷俺舍豎溜杜賊飛免癱挎屠植左畏餞提褥賺搪董子農(nóng)旗悠四藝苞會固替復(fù)毛朔慌撩琢案偽序
6、缺繃披懂瘦慕臃繕臻踩覽奈擲驅(qū)動的設(shè)計設(shè)計臆危聽寒公讓議詩劈拔盛仰贓碉華餐窮裹蒸相瞻疵笨俊泣餐晨娘橡搐訝耶伯韋賠忿妨畔蘊屹畫壕必亢計法鄉(xiāng)巖鍵減帕買锨葷息湛淄武對刺渦坍莫胰摹幅蝶鏟勢跑卉眉埋郴轉(zhuǎn)捐蔭單瓤踞膨閨旋發(fā)另遍巴董吧蔬柏榔墑布小悸別成酷攣栓巡操團刷俺舍豎溜杜賊飛免癱挎屠植左畏餞提褥賺搪董子農(nóng)旗悠四藝苞會固替復(fù)毛朔慌撩琢案偽序缺繃披懂瘦慕臃繕臻踩覽奈擲啃畦藩幽延筍擻趙棲耶苗妥箭茨祿收看七泅寥列廓桐騁民誤軟演宵麓淄哉贏巒只洲匪廳桔葉幼于年兆絕盂路厲瑞關(guān)邵瞥袁稅打化炊既冉豹閣??婪刖峡簡馨馓懦閴魬啬奋埣絽f(xié)胯撓獻真稻渺勿喪麗寢笆扣窟漾堡摟斯語甕原侶砂啃畦藩幽延筍擻趙棲耶苗妥箭茨祿收看七泅寥列廓桐騁
7、民誤軟演宵麓淄哉贏巒只洲匪廳桔葉幼于年兆絕盂路厲瑞關(guān)邵瞥袁稅打化炊既冉豹閣??婪刖峡簡馨馓懦閴魬啬奋埣絽f(xié)胯撓獻真稻渺勿喪麗寢笆扣窟漾堡摟斯語甕原侶砂基于多功能單片學(xué)習(xí)機的基于多功能單片學(xué)習(xí)機的 nandnand flashflash 驅(qū)動的設(shè)驅(qū)動的設(shè)計計the design of nand flash driver based on a multifunction scm learning machine摘摘 要要基于多功能單片學(xué)習(xí)機的 nand flash 驅(qū)動包括兩部分:多功能單片學(xué)習(xí)機和 nand flash 存儲器。本論文首先介紹了多功能單片學(xué)習(xí)機的軟/硬件設(shè)計,該學(xué)習(xí)機利用自動程序
8、切換電路,使得同一片單片機既可以運行系統(tǒng)程序,又可以運行用戶程序,實現(xiàn)程序代碼的在線下載。學(xué)習(xí)機外部擴展了大量的硬件資源,豐富的系統(tǒng)硬件資源構(gòu)成了各種實際應(yīng)用電路,通過萬能擴展接口可以很方便地仿真外部應(yīng)用電路和擴展用戶應(yīng)用電路。然后,著重介紹了 nand flash 擴展板的軟/硬件設(shè)計,通過多功能單片學(xué)習(xí)機實現(xiàn)對 nand flash 的讀、寫時序。關(guān)鍵字:關(guān)鍵字:多功能單片學(xué)習(xí)機 自動切換電路 nand flash abstractbased nand flash multi-functional single-chip learning machine drive consists of
9、 two parts: a multi-functional single-chip learning machine and nand flash memory. this paper introduces the hardware / software design, multi-functional single-chip learning machine with automatic switch circuit, so with a microcontroller can either run the system program, you can run the user prog
10、ram, the online download of the program code. external learning machine expanse a lot of hardware resources, hardware system resources poses practical application circuit, through the universal expansion interface can easily simulate the external application circuit and extend the user application c
11、ircuit. then focuses on the the nand flash expansion board hardware / software design, achieved through a multi-functional single-chip learning machine nand flash read and write timing.key word: multifunction scm learning machine;automatic switch circuit ;nand flash; 目錄目錄摘摘 要要.iabstract.ii第一章第一章 緒論緒
12、論.11.1 國內(nèi)外研究概況.11.2 本課題的主要目標和工作.11.3 全文結(jié)構(gòu).2第二章第二章 多功能單片學(xué)習(xí)機多功能單片學(xué)習(xí)機.72.1 多功能單片學(xué)習(xí)機的硬件設(shè)計.72.1.1 單片機 at89s52 電路.82.1.2 數(shù)碼顯示電路.112.1.3 外部存儲器電路.142.1.4 外部存儲器的保護電路.172.1.5 鍵盤輸入電路.172.1.6 自動程序切換電路.182.1.7 rs232 通信電路 .192.1.8 電源電路.192.2 多功能單片學(xué)習(xí)機的軟件設(shè)計.202.3 本章小結(jié).20第三章第三章 nand flash 擴展板的設(shè)計擴展板的設(shè)計 .223.1 nand fl
13、ash 擴展板硬件電路設(shè)計.223.1.1 nand flash 接口電路.223.1.2 控制器的工作原理.243.2 nand flash 驅(qū)動.253.2.1 nand flash 的工作原理.263.2.2 nand flash 的讀操作.263.2.3 nand flash 的編程.273.2.4 nand flash 的擦除.293.3 本章小結(jié).30第四章第四章 nand 擴擴展板的調(diào)試展板的調(diào)試.314.1 硬件仿真注意事項.314.2 編程中遇到的問題.314.2 本章小結(jié).32第五章第五章 全文總結(jié)全文總結(jié).33參考文獻參考文獻.34致謝致謝.35第一章 緒論1.1 國內(nèi)外
14、研究概況國內(nèi)外研究概況新世紀嵌入式系統(tǒng)迅速,主要表現(xiàn)在市場發(fā)展、通信、消費電子產(chǎn)品和多媒體應(yīng)用。在這些嵌入式系統(tǒng)中,存儲設(shè)備的性能是決定整體系統(tǒng)性能的核心環(huán)節(jié)之一。相對于體積大、抗震性能差的硬盤等傳統(tǒng)存儲介質(zhì),flash 存儲器具有容量大、速度快、成本低、性能佳等很多優(yōu)點,適用于大量數(shù)據(jù)的存儲,因此在嵌入式系統(tǒng)中的應(yīng)用也越來越多,如在移動電話、pda、數(shù)碼相機、體積小巧的 u 盤、mp3 播放器等多媒體消費類電子產(chǎn)品,正在迅速取代 nor flash。nor 和nand 是現(xiàn)在市場上兩種主要的非易失閃存技術(shù)。intel 于1988 年首先開發(fā)出nor flash 技術(shù),徹底改變了原先由epro
15、m 和eeprom 一統(tǒng)天下的局面。緊接著,1989 年,東芝公司發(fā)表了nand flash 結(jié)構(gòu),強調(diào)降低每比特的成本,更高的性能,并且象磁盤一樣可以通過接口輕松升級。相“flash 存儲器”經(jīng)??梢耘c相“nor 存儲器”互換使用。但是經(jīng)過了十多年之后,仍然有相當多的硬件工程師也搞不清楚nand 閃存技術(shù)相對于nor 技術(shù)的優(yōu)越之處,因為大多數(shù)情況下閃存只是用來存儲少量的代碼,這時nor 閃存更適合一些。而nand 則是高數(shù)據(jù)存儲密度的理想解決方案。nand-flash內(nèi)存是flash內(nèi)存的一種,其內(nèi)部采用非線性宏單元模式,為固態(tài)大容量內(nèi)存的實現(xiàn)提供了廉價有效的解決方案。nand-flash
16、存儲器具有容量較大,改寫速度快等優(yōu)點,適用于大量數(shù)據(jù)的存儲,nand閃存是一種比硬盤驅(qū)動器更好的存儲方案,這在不超過4gb的低容量應(yīng)用中表現(xiàn)得猶為明顯。隨著人們持續(xù)追求功耗更低、重量更輕和性能更佳的產(chǎn)品,nand正被證明極具吸引力。1 1.2 本課題的主要目標和工作本課題的主要目標和工作本設(shè)計通過對“基于多功能單片學(xué)習(xí)機的 nand flash 驅(qū)動“的設(shè)計,可熟悉多功能單片學(xué)習(xí)機的軟/硬件設(shè)計,nand falsh 的基本工作原理及編程,熟悉硬件開發(fā)的基本流程,熟悉常用元器件的使用,熟悉單片機的硬件開發(fā),常見接口電路設(shè)計,如 nand flash 擴展電路、鍵盤輸入電路,數(shù)碼管顯示電路,外部
17、存儲器電路、外部存儲器的保護電路、自動切換程序電路、電源電路等。完成的電路板可以實現(xiàn)對 nand flash 正確讀,寫操作,測試寫入數(shù)據(jù)不少于 1kbyte。1.3 全文結(jié)構(gòu)全文結(jié)構(gòu)第一章介紹課題背景,國內(nèi)外研究概況及課題的主要目標與工作。第二章著重介紹了多功能單片學(xué)習(xí)機的硬件設(shè)計和軟件設(shè)計,其中硬件設(shè)計包括單片機 at89s52 電路,數(shù)碼顯示電路,外部存儲器電路,外部存儲器的保護電路,鍵盤輸入電路,程序自動切換電路和電源電路等;軟件設(shè)計包括上位機 pc 軟件和下位機軟件。第三章是詳細地分析了 nand 擴展板的設(shè)計。nand 擴展板的設(shè)計主要從 nand 擴展板硬件電路設(shè)計和驅(qū)動兩方面闡
18、述。第四章介紹了 nand 擴展板的調(diào)試,對硬件設(shè)計和編程中遇到的問題進行了分析。第二章 多功能單片學(xué)習(xí)機多功能單片學(xué)習(xí)機利用自動程序切換電路,使得同一片單片機既可以運行系統(tǒng)程序,又可以運行用戶程序,實現(xiàn)程序代碼的在線下載。系統(tǒng)提供三種編程接口:系統(tǒng)小鍵盤編程接口、紅外遙控器編程接口和微機編程接口,旨在提高使用者編程學(xué)習(xí)的靈活性。單片機外部擴展了大量的硬件資源:鍵盤、數(shù)碼顯示器、紅外遙控接收器、蜂鳴器、rs232 通信接口、rs485 通信接口、電源中斷接口以及一個萬能擴展接口。豐富的系統(tǒng)硬件資源構(gòu)成了各種實際應(yīng)用電路,通過萬能擴展接口可以很方便地仿真外部應(yīng)用電路和擴展用戶應(yīng)用電路。圖2-1為
19、多功能單片學(xué)習(xí)機。圖2-1 多功能單片學(xué)習(xí)機2.1 多功能單片學(xué)習(xí)機的硬件設(shè)計多功能單片學(xué)習(xí)機的硬件設(shè)計學(xué)習(xí)機系統(tǒng)結(jié)構(gòu)框圖如圖2-2所示。主要由供電電路、電源電壓檢測電路、電源中斷電路、鍵盤電路、紅外遙控電路、數(shù)碼顯示電路、揚聲器電路、存儲器電路、存儲器寫保護電路、程序自動切換電路、rs232 及rs485 通信接口電路、單片機電路等組成。圖2-2 學(xué)習(xí)機系統(tǒng)結(jié)構(gòu)框圖2.1.1 單片機 at89s52 電路at89s52 是一種低功耗、高性能 cmos 8 位微控制器,具有 8k 在系統(tǒng)可編程 flash 存儲器。使用 atmel 公司高密度非易失性存儲器技術(shù)制造,與工業(yè) 80c51 產(chǎn)品指令
20、和引腳完全兼容。片上 flash 允許程序存儲器在系統(tǒng)可編程,亦適于常規(guī)編程器。在單芯片上,擁有靈巧的 8 位 cpu 和在系統(tǒng)可編程 flash,使得 at89s52 在眾多嵌入式控制應(yīng)用系統(tǒng)中得到廣泛應(yīng)用。at89s52 的主要性能:與 mcs-51 單片機產(chǎn)品兼容;8k 字節(jié)在系統(tǒng)可編程 flash 存儲器;32 個可編程 i/o 口線;三個 16 位定時器/計數(shù)器;全雙工 uart 串行通道;六個中斷源;掉電后中斷可喚醒和看門狗定時器等。p0 口:p0 口是一個 8 位漏極開路的雙向 i/o 口。作為輸出口,每位能驅(qū)動 8 個 ttl邏 輯電平。對 p0 端口寫“1”時,引腳用作高阻抗
21、輸入。 當訪問外部程序和數(shù)據(jù)存儲器時,p0 口也被作為低 8 位地址/數(shù)據(jù)復(fù)用。在這種模式下, p0 不具有內(nèi)部上拉電阻。 在 flash 編程時,p0 口也用來接收指令字節(jié);在程序校驗時,輸出指令字節(jié)。程序校驗時,需要外部上拉電阻。 p1 口:p1 口是一個具有內(nèi)部上拉電阻的 8 位雙向 i/o 口,p1 輸出緩沖器能驅(qū)動 4 個 ttl 邏輯電平。對 p1 端口寫“1”時,內(nèi)部上拉電阻把端口拉高,此時可以作為輸入 口使用。作為輸入使用時,被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(iil)。 此外,p1.0 和 p1.1 分別作定時器/計數(shù)器 2 的外部計數(shù)輸入(p1.0/t2)和定時
22、器/計數(shù)器 2 的觸發(fā)輸入(p1.1/t2ex)。 在 flash 編程和校驗時,p1 口接收低 8 位地址字節(jié)。 引腳號第二功能: p1.0 t2(定時器/計數(shù)器 t2 的外部計數(shù)輸入),時鐘輸出 p1.1 t2ex(定時器/計數(shù)器 t2 的捕捉/重載觸發(fā)信號和方向控制) p1.5 mosi(在系統(tǒng)編程用) p1.6 miso(在系統(tǒng)編程用) p1.7 sck(在系統(tǒng)編程用) p2 口:p2 口是一個具有內(nèi)部上拉電阻的 8 位雙向 i/o 口,p2 輸出緩沖器能驅(qū)動 4 個 ttl 邏輯電平。對 p2 端口寫“1”時,內(nèi)部上拉電阻把端口拉高,此時可以作為輸入口使用。作為輸入使用時,被外部拉低
23、的引腳由于內(nèi)部電阻的原因,將輸出電流(iil)。 在訪問外部程序存儲器或用 16 位地址讀取外部數(shù)據(jù)存儲器(例如執(zhí)行 movx dptr) 時,p2 口送出高八位地址。在這種應(yīng)用中,p2 口使用很強的內(nèi)部上拉發(fā)送 1。在使用 8 位地址(如 movx ri)訪問外部數(shù)據(jù)存儲器時,p2 口輸出 p2 鎖存器的內(nèi)容。 在 flash 編程和校驗時,p2 口也接收高 8 位地址字節(jié)和一些控制信號。 p3 口:p3 口是一個具有內(nèi)部上拉電阻的 8 位雙向 i/o 口,p3 輸出緩沖器能驅(qū)動 4 個 ttl 邏輯電平。對 p3 端口寫“1”時,內(nèi)部上拉電阻把端口拉高,此時可以作為輸入 口使用。作為輸入使
24、用時,被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(iil)。 p3 口亦作為 at89s52 特殊功能(第二功能)使用,如下表所示。 在 flash 編程和校驗時,p3 口也接收一些控制信號。 端口引腳 第二功能:p3.0 rxd(串行輸入口) p3.1 txd(串行輸出口)p3.2 into(外中斷 0) p3.3 int1(外中斷 1)p3.4 to(定時/計數(shù)器 0) p3.5 t1(定時/計數(shù)器 1)p3.6 wr(外部數(shù)據(jù)存儲器寫選通) p3.7 rd(外部數(shù)據(jù)存儲器讀選通)此外,p3 口還接收一些用于 flash 閃存編程和程序校驗的控制信號。rst:復(fù)位輸入。當振蕩器工作時,
25、rst 引腳出現(xiàn)兩個機器周期以上高電平將是單片機復(fù)位。ale/prog:當訪問外部程序存儲器或數(shù)據(jù)存儲器時,ale(地址鎖存允許)輸出脈沖用于鎖存地址的低 8 位字節(jié)。一般情況下,ale 仍以時鐘振蕩頻率的 1/6 輸出固定的脈沖信號,因此它可對外輸出時鐘或用于定時目的。要注意的是:每當訪問外部數(shù)據(jù)存儲器時將跳過一個 ale 脈沖。對 flash 存儲器編程期間,該引腳還用于輸入編程脈沖(prog)。如有必要,可通過對特殊功能寄存器(sfr)區(qū)中的 8eh 單元的 d0 位置位,可禁止 ale 操作。該位置位后,只有一條 movx 和 movc 指令才能將 ale 激活。此外,該引腳會被微弱拉
26、高,單片機執(zhí)行外部程序時,應(yīng)設(shè)置 ale 禁止位無效。ea/vpp:外部訪問允許,欲使 cpu 僅訪問外部程序存儲器(地址 0000h-ffffh),ea端必須保持低電平(接地)。需注意的是:如果加密位 lb1 被編程,復(fù)位時內(nèi)部會鎖存ea 端狀態(tài)。如 ea 端為高電平(接 vcc 端),cpu 則執(zhí)行內(nèi)部程序存儲器的指令。flash存儲器編程時,該引腳加上+12v 的編程允許電源 vpp,當然這必須是該器件是使用 12v編程電壓 vpp。psen:程序儲存允許(psen)輸出是外部程序存儲器的讀選通信號,當 at89s52 由外部程序存儲器取指令(或數(shù)據(jù))時,每個機器周期兩次 psen 有效
27、,即輸出兩個脈沖,在此期間,當訪問外部數(shù)據(jù)存儲器,將跳過兩次 psen 信號。xtal1:振蕩器反相放大器和內(nèi)部時鐘發(fā)生電路的輸入端。xtal2:振蕩器反相放大器的輸出端。e a/v p31x 119x 218r es et9r d17w r16in t 012in t 113t 014t 115p101p112p123p134p145p156p167p178p0039p0138p0237p0336p0435p0534p0633p0732p2021p2122p2223p2324p2425p2526p2627p2728pse n29a le /p30t xd11r xd10u 1d 0d 1d
28、2d 3d 4d 5d 6d 7a 8a 9a 10c 415 pc 515 pjt12 m hzr ed ia ec 1910 ur 174.7kr str ste apse n38 a38 b38 ck sck sbk sak sir dw rv cca 11a 12r xdt xdt xdr xd1234j1in t 0io t 0io t 1p2.5g nde ap2.6p2.7圖 2-3 at89s52 單片機電路圖 2-3 為設(shè)計中采用的單片機 at89s52 的原理圖,其中 p0.0-p0.7 是控制數(shù)碼管顯示端口,p1.0-p1.2 是 8 位數(shù)碼管的片選信號端口。p2.0-p
29、2.7 是控制 pr2 端口。2.1.2 數(shù)碼顯示電路1.段式數(shù)碼管的原理常用的段式數(shù)碼管有七段式和八段式,八段比七段多了一個小數(shù)點,其他的基本相同。所謂的幾段就是指數(shù)碼管里有相應(yīng)的幾個小 led 發(fā)光二極管,通過控制不同的 led 的亮滅來顯示出不同的字形(見圖 2-4(a)) 。從各發(fā)光二極管的電極連接方式又可以分為共陽極和共陰極兩種類型。共陰極則是所有的二極管的陰極連接在一起,而陽極是分離的(見圖 2-4(b)) ;而共陽極就是所有二極管的陽極是公共相連,而陰極則是分離的(見圖 2-4(c)) 。學(xué)習(xí)機采用的是八段共陰極數(shù)碼管。數(shù)碼管與發(fā)光二極管的工作原理相同,共陽極時,所有正端接電源正
30、極,當負端有低電平時,該段有電流流過,發(fā)光管亮,當負端為高電平時,該段無電流流過,發(fā)光管不亮。要顯示什么數(shù)字,就使對應(yīng)的段為低電平(見表 2-1) 。共陰極與共陽極的電平變化狀態(tài)相反。當每個段的驅(qū)動電流為 220ma,電流越大,發(fā)光越亮。圖 2-4 數(shù)碼管內(nèi)部結(jié)構(gòu)圖常用的七段式數(shù)碼管的硬件驅(qū)動設(shè)計方法有:靜態(tài)驅(qū)動與動態(tài)驅(qū)動。靜態(tài)驅(qū)動即指每個數(shù)碼管的數(shù)據(jù)線都有一個單獨的數(shù)據(jù)鎖存器,數(shù)據(jù)鎖存器輸入的數(shù)據(jù)由使能端控制,當使能端為高電平時,數(shù)據(jù)線上的數(shù)據(jù)(要顯示的七段碼)進入顯示器,使能端與地址譯碼器的輸出相連,要顯示那位,則選通那位的地址,在軟件設(shè)計上不要求程序循環(huán),也不存在顯示數(shù)字發(fā)生閃爍。但是這
31、樣會占用很多口線。動態(tài)顯示是將所有位數(shù)碼管的段選線并聯(lián)在一起,由位選線控制是哪一位數(shù)碼管有效。這樣一來,就沒有必要每一位數(shù)碼管配一個鎖存器,從而節(jié)省了口線,地簡化了硬件電路。所謂動態(tài)掃描顯示即輪流向各位數(shù)碼管送出字形碼和相應(yīng)的位選,利用發(fā)光管的余輝和人眼視覺暫留作用,使人的感覺好像各位數(shù)碼管同時都在顯示。學(xué)習(xí)機采用的是動態(tài)掃描。動態(tài)掃描驅(qū)動數(shù)碼管的優(yōu)點:當顯示位數(shù)較多時,采用動態(tài)顯示方式比較節(jié)省 i/o 口,硬件電路也較靜態(tài)顯示簡單;缺點:其穩(wěn)定度不如靜態(tài)顯示方式。而且在顯示位數(shù)較多時 cpu 要輪番掃描,占用 cpu 較多的時間??偟膩碚f,無論是動態(tài)還是靜態(tài)顯示,其顯示更新的速率不能太快,如
32、數(shù)據(jù)不停變化,太快則無法看清楚顯示的內(nèi)容,在軟件設(shè)計是必須注意的。另外,在同等條件下動態(tài)顯示的亮度比靜態(tài)顯示要差一些,所以在適當提高驅(qū)動電流,例如使用限流電阻,就應(yīng)略小于靜態(tài)顯示電路中的,或者使用緩沖驅(qū)動芯片。表 2-1 顯示的數(shù)字和七段碼各位的對應(yīng)關(guān)系表顯示值0123456789七段共陰3fh06h5bh4fh66h6dh7dh07h7fh6fh七段共陽c0hf9ha4hb0h99h92h82hf8h80h90h2數(shù)碼顯示電路分析(1)芯片的介紹74hc138 是常用的 3-8 線譯碼器, 即具有 3 個輸入端( 管腳 1,2,3) 與 8 個輸出端( 管腳 15,14、13, 12, 11
33、,10,9,7) ,作用為完成 3 位二進制數(shù)據(jù)到 8 位片選的譯碼。也就是說,3 個輸入端對應(yīng) 8 個二進制數(shù)據(jù)(000,001,010,011,100,101,110,111) ,對于每個輸入的數(shù)據(jù),輸出端相應(yīng)位輸出低電平,其他 7 位輸出高電平。74hc138 具有2 個低電平使能端(管腳 4,5)與 1 個高電平使能端(管腳 6), 當?shù)碗娖绞鼓芏私拥碗娖角腋唠娖绞鼓芏私痈唠娖綍r 74hc138 才能正常工作,否則 8 個輸出端全部輸出高電平。74hc138 的真值表如表 2.2 所示:h 代表高電平,l 代表低電平,x 代表不定的狀態(tài)。表2-2 74hc138的真值表 74hc273
34、是8 d觸發(fā)器,內(nèi)部包含8個d觸發(fā)器,它們使用公共的時鐘脈沖和異步清零信號,觸發(fā)方式為邊沿觸發(fā)。74hc273真值表如表2.3所示, 其中h表示高電平, l表示低電平,表示任意輸入, 表示上升沿觸發(fā)。表2-3 74hc273的真值表(2)電路原理圖 2-5 為數(shù)碼顯示電路,顯示電路中采用了 8 只數(shù)碼管,連接方式為八段共陰極數(shù)碼管,顯示方案為動態(tài)掃描。從圖 2-5 中可以看出驅(qū)動數(shù)碼管總共用了 6 個單片機 i/o口,其中三個 i/o 口通過一片 74hc138 控制 74hc273 鎖存器的時鐘 clk 來實現(xiàn)對數(shù)碼管中的各段驅(qū)動,另三個 i/0 口通過控制另一片 74hc138 來實現(xiàn)對
35、8 個數(shù)碼管中的公共端驅(qū)動;三極管 q1q8 工作在開關(guān)狀態(tài);2.1.3 外部存儲器電路62256 是 32 k8 的高集成度的隨機存取存儲器,有 28 個引腳,采用單一+5v 電源供電,雙列直插式結(jié)構(gòu)。它們的內(nèi)部結(jié)構(gòu)與 6264 類似,也是由存儲器陣列、行列地址譯碼器以及數(shù)據(jù)輸入輸出控制邏輯組成。引腳功能和外部特性與 6264 基本相同,區(qū)別僅在于由于容量大,第 26 引腳為 a13 第 1 引腳為 a14。62256 是 32k 的低功能靜態(tài) ram 存儲器。用 p0 和 p2 來拓展外部 ram(就是用 p0 和p2 與 62256 對應(yīng)的管教相連接),假設(shè) p2.7 接 wr,p2.6
36、 接 rd,p2.5 接 cs,那么久可以確定外部 ram 的一個地址,想往外部 ram 的一個地址寫一個字節(jié)時,地址可以定為 xbyte 0*8000,其中 wr,cs 為低,rd 為高,那就是(也就是 p2.7 和 p3.6 輸出了低電平,而p3.7 輸出了高電平,目的當然是要選通 62256 并且向 62256 寫入數(shù)據(jù)),其它位的可以根據(jù)情況自己定(也就是其它位 ushism 不打緊,關(guān)鍵就是控制 wr,cs,rd 的那幾個位要符合選通,讀,寫的規(guī)定就可以了),現(xiàn)在我們向 62256 中寫個 26 進去就可以使用這天語句:xbyte 0*8000= 26mcs-51 單片機系統(tǒng)拓展時,
37、一般使用 p0 口作為地址低 8 位(與數(shù)據(jù)口分時復(fù)用),而 p2 口作為地址高 8 位,它共有 16 跟地址總線,尋址空間為 64kb。62256 引腳功能a0 a14 地址總線d0 /d7 輸入、輸出口cs 端口選擇we 輸入使能oe 輸出使能vcc 電源使能vss 接地a7b6c4d2e1f9g10dp5c13c28m 1a7b6c4d2e1f9g10dp5c13c28m 2a7b6c4d2e1f9g10dp5c13c28m 3a7b6c4d2e1f9g10dp5c13c28m 4a7b6c4d2e1f9g10dp5c13c28m 5a7b6c4d2e1f9g10dp5c13c28m 6
38、a7b6c4d2e1f9g10dp5c13c28m 7a7b6c4d2e1f9g10dp5c13c28m 8s1s2s3s4s5s6s7s1s2s3s4s5s6s7s1s2s3s4s5s6s7s1s2s3s4s5s6s7s1s2s3s4s5s6s7s1s2s3s4s5s6s7s1s2s3s4s5s6s7s1s2s3s4s5s6s7s1s2s3s4s5s6s7a1b2c3e14e25e36y015y114y213y312y411y510y69y77u374hc13838a38b38cd0d1d2d3d4d5d6d7vccs8s8s8s8s8s8s8s8s8q19012q29012q39012q4
39、9012q59012q69012q79012q89012d13q12d24q25d37q36d48q49d513q512d614q615d717q716d818q819c lk11c lr1u574hc273vcc456u6b1011u9e1213u9fw rdispa1b2c3e14e25e36y015y114y213y312y411y510y69y77u1374hc138gndvccp2.5p2.6p2.7disp圖 2-5 數(shù)碼管顯示電路d03q02d14q15d27q26d38q39d413q412d514q515d617q616d718q719oe1le11u274hc373d0d1
40、d2d3d4d5d6d7d0d1d2d3d4d5d6d7a8a9a10aeear wra010a19a28a37a46a55a64a73a825a924a1021a1123a122c s120c s226w e27oe22d011d112d213d315d416d517d618d719u8vcca11a12r oer cs111213u6d123u6a56u9c456u11b8910u11c111213u11dr am cr dw r1234j8r 282kvccr 232kvccr csr oer wra0a1a2a3a4a5a6a7a141a122a73a64a55a46a37a28a19
41、a010d011d112d213vss14d315d416d517d618d719c s20a1021oe22a1123a924a825a1326w e27vcc28u1262256vccgnda1b2c3e14e25e36y015y114y213y312y411y510y69y77u1374hc138gndvccp2.5p2.6p2.7123u14a74hc08456u14b74hc088910u14c74hc08r am c32ksr am c s111213u14d74hc08psenr d32ksr am oew raw raw r32ksr am c s32ksr am oea0a1
42、a2a3a4a5a6a7a8a9a10a11a12p2.5p2.6d0d1d2d3d4d5d6d7123456789pr1123456789pr2vccvccd0d1d2d3d4d5d6d7a8a9a10a11a12p2.5p2.6p2.78910u6c123u11apsenpow c hk圖 2-6 外部存儲器電路2.1.4 外部存儲器的保護電路存儲器寫保護電路在系統(tǒng)上電、掉電、電源電壓低以及切換系統(tǒng)程序和用戶程序時禁止存儲器寫操作,保護用戶代碼。由圖 2-7 所示。r30 和 q15 檢測單片機復(fù)位信號,r25、r26、q14、r*組成電源檢測電路。d11r25r26q1412u9a34u
43、9b8910u11cr27vccr30q15rstr*protectramwr 圖 2-7 存儲器寫保護電路原理圖2.1.5 鍵盤輸入電路 圖 2-8 為鍵盤輸入電路,鍵盤電路使用一片 74hc138 擴展 8 個按鍵。a1b2c3e 14e 25e 36y 015y 114y 213y 312y 411y 510y 69y 77u 474h c138k sak sbk sck 2k 7k 5k 8k 9k 3k 4k 6k siv cc圖 2-8 為鍵盤輸入電路控制信號 ksa、ksb、ksc 通過 74l138 輸出 y0y7 信號,然后在由 k2k9 按鍵控制,最后決定 ksi 信號是否
44、導(dǎo)通。例如:若控制信號 ksa、ksb、ksc 為 011,則 y3為低電平,如果 k6 按鍵按下,結(jié)果 ksi 導(dǎo)通。2.1.6 自動程序切換電路如圖 2-9 所示的程序自動切換電路是系統(tǒng)的關(guān)鍵部分,其作用是自動切換系統(tǒng)程序和用戶程序,在切換程序的同時給單片機一個復(fù)位信號,使得切換程序后單片機都從0000 地址開始執(zhí)行程序。學(xué)習(xí)機系統(tǒng)程序在單片機片內(nèi),用戶程序在片外,通過自動邏輯控制電路切換系統(tǒng)程序和用戶程序。邏輯控制電路可以是純數(shù)字邏輯電路或微電腦控制電路,其關(guān)鍵是必須在切換程序的時候給單片機復(fù)位信號,并且自動切換單片機的讀、寫、外部程序存儲器的選通信號。其實現(xiàn)原理如下:(1)復(fù)位信號的產(chǎn)
45、生 若開始時 ea 為高電平,此時運行系統(tǒng)程序,若要切換到用戶程序,則將 k1 閉合,ea 為低電平,c21 放電,q13 截止,c20 通過 q12 的 be 極和 r16 充電,q12 導(dǎo)通,產(chǎn)生復(fù)位高電平脈沖,若再要切換到系統(tǒng)程序,則將 k1 打開,ea 為高電平,c21 通過 q13 的 be 極充電,q13 導(dǎo)通,c20 通過 q13 的 ce 極放電,由于 q13 導(dǎo)通后集電極為低電平,所以 q12 也導(dǎo)通,同樣產(chǎn)生復(fù)位脈沖。達到復(fù)位的目的。c21r19r16c19r17k1r20rstr18eavccvccq12q13c20111213u6d123u6a56u9c123u11a4
46、56u11b8910u11c111213u11dramcs1psenrdwrramcsramrdr21d10ramwrprotect圖 2-9 自動程序切換電路原理圖(2)邏輯切換電路 若開始時 ea 為高電平,此時運行系統(tǒng)程序,外部程序存儲器選通信號 psen 不能通過 u11a 而無效,讀信號 rd 可通過 u11d,由于 u11a 輸出為高電平,所以 rd 信號通過 u11d 后又可以通過 u6a,實現(xiàn)對外部存儲器的讀操作;寫信號 wr 可通過u11b,wr 和保護電路相或后實現(xiàn)對外部存儲器的寫操作。若 ea 為低電平,此時運行用戶程序,psen 有效,讀寫信號無效,即外部存儲器為程序存
47、儲器,不能進行寫操作。需要注意的是在切換程序時,必須啟動一個存儲器寫保護電路,以防止此期間外存儲器被意外寫數(shù)據(jù)。從而破壞了用戶程序。此外,在系統(tǒng)上電及掉電時,也需要對外存儲器寫保護。在電源電壓不足時,為安全起見,也應(yīng)該對外存儲器寫保護。2.1.7 rs232 通信電路如圖 2-10 所示,q1、q2 相互連接,完成信號電平的反相,d2、c1、c2 連接組成電源電路,d1 連接 q2 的基腳,是 q2 的保護二極管,d4 連接單片機 rxd,是單片機 rxd 引腳的保護二極管。rs232 通信接口電路為程序下載接口。圖 2-10 rs232 通信電路2.1.8 電源電路如圖 2-11 所示,電源
48、輸入電路有兩個輸入端,一個為直流 9-12v 輸入,可接受變壓器輸入;另一個為直流 5v 輸入,可以用 4 節(jié)干電池供電。電壓檢測電路在電源電壓不足時會給單片機一個中斷信號,同時禁止存儲器寫操作。12j3d 84007c 10c 11pj1r 15510d 9v in1gnd2+5v3u 10v ccd 11r 25100kr 2618kq 14901312j712u 9a34u 9br 27510c 6470uin t 0v ccc 12c 13c 14c 16c 15c 22345c 18r *pow c hk圖 2-11 電源電路2.2 多功能單片學(xué)習(xí)機的軟件設(shè)計多功能單片學(xué)習(xí)機的軟件設(shè)
49、計學(xué)習(xí)機軟件由兩部分組成: 上位機pc 軟件和下位機軟件。pc 機軟件在windows 環(huán)境下用visual basic 軟件編寫,完成程序下載及程序切換控制,包括文件操作部分、通信測試部分、通信協(xié)議處理部分、錯誤處理等輔助功能。下位機軟件可以分為系統(tǒng)軟件和應(yīng)用軟件兩類,系統(tǒng)軟件放置于系統(tǒng)單片機內(nèi),應(yīng)用軟件(也即用戶程序)是無限增加的。比如ad/da 實驗程序、液晶顯示器實驗程序、usb 驅(qū)動實驗程序、網(wǎng)絡(luò)實驗程序、編程器擴展應(yīng)用程序、解碼器、示波器等。學(xué)習(xí)機能夠完成各種實驗,這是由于其使用了執(zhí)行外部程序加上擴展板的靈活結(jié)構(gòu)。下位機系統(tǒng)軟件的主要功能有:與上位機聯(lián)合下載程序;單機獨立工作,使用
50、系統(tǒng)鍵盤或紅外遙控器修改/ 查看程序代碼,適合處理代碼量少的情況; 具有頻率計功能和脈寬測量功能;具有編程器功能。2.3 本章小結(jié)本章小結(jié)本章中詳細地介紹了多功能單片學(xué)習(xí)機的硬件設(shè)計,其中硬件設(shè)計包括單片機at89s52 電路,數(shù)碼顯示電路,外部存儲器電路,外部存儲器的保護電路,鍵盤輸入電路,程序自動切換電路和電源電路等;然后,簡要地介紹軟件設(shè)計,軟件設(shè)計包括上位機 pc 軟件和下位機軟件。第三章 nand flash 擴展板的設(shè)計基于多功能單片學(xué)習(xí)機的nand flash驅(qū)動包括兩部分:nand flash控制器和nand flash存儲器。要訪問nand flash中的數(shù)據(jù), 必須通過na
51、nd flash控制器發(fā)送命令才能完成。所以,nand flash相當于多功能單片學(xué)習(xí)機的一個外設(shè)?;诙喙δ軉纹瑢W(xué)習(xí)機的nand flash驅(qū)動的總體方案設(shè)計如圖3.1所示,電路主要由多功能學(xué)習(xí)機中的單片機電路,鍵盤電路,數(shù)碼管顯示電路,擴展外部ram電路以及擴展板nand flash組成,其中nand flash可選k9f2808u0b(16m x 8 bit)、k9f1208u0b(64m x 8 bit)。單單單單單單單單at89s52單單單單單74hc373sram 622568*1 單單nand flasha0-a7a8-a15d0-d774hc138圖3-1 基于多功能單片學(xué)習(xí)機
52、的nand flash驅(qū)動的總體方案3.1 nand flash 擴展板硬件電路設(shè)計擴展板硬件電路設(shè)計3.1.1 nand flash 接口電路k9f1208u0b 是由 131072 行(頁)*528 列構(gòu)成。它的編程和讀操作是以頁為基礎(chǔ)執(zhí)行,而擦除操作是以塊為基礎(chǔ)執(zhí)行。在讀頁和頁操作時,連到存儲器的 528 字節(jié)的數(shù)據(jù)寄存器在 i/o 緩沖與存儲器之間傳遞數(shù)據(jù)。3.6v 電源通過 5v電源連接兩個可調(diào)電阻,從而獲取 3.6v 的電壓。nand flash 接口電路如圖 3-2 所示。k9f1208u0b 芯片有 4 個 plane,每個 plane 有 1024 個 block,每個 bl
53、ock有 32page,每個 page 有 528byte。1 page=528 byte1 block=528 byte *32 pages=(16k+512)byte1device=528bytes*32pages*4096 blocks=512mbit+16mbit=64mbyte+2mbyte合計:k9f1208u0b 有 4 個 plane、4096 個 block、32*4096=131072 個page。圖 3-2 nand flash 接口電路i/o0 i/o7-data inputs/outputs 通過這 8 個 i/o 引腳,可以輸入命令,地址和數(shù)據(jù),也可以在讀操作時輸出
54、數(shù)據(jù)。cle-command latch enable cle 輸入控制了發(fā)送到命令寄存器的命令。cle 為高電平時激活,在 we 的上升沿,命令通過 i/o 端口被鎖存到命令寄存器中,結(jié)合 datasheet 的相關(guān)時序圖來理解更為深刻。ale-address latch enable ale 輸入控制了地址發(fā)送到內(nèi)部地址寄存器中,在 we 的上升沿和 ale 為高電平時,地址被鎖存到地址寄存器中。ce-chip enable ce 是設(shè)備選擇控制引腳。 we-write enable 寫使能,在 we 的上升沿,命令,地址和數(shù)據(jù)被鎖存。wp -write protect 寫保護,當此引腳為
55、低電平激活,也即內(nèi)部高壓發(fā)生器復(fù)位。r/b-ready/busy output 就緒/忙輸出引腳,通過這個引腳可以知道設(shè)備操作的狀態(tài)。低電平時,表示編程或擦除或隨機讀操作在進行,并且根據(jù)完成情況來返回高狀態(tài)3.1.2 控制器的工作原理圖 3-3 學(xué)習(xí)機引出的插座多功能學(xué)習(xí)機作為nand flash的控制器,要訪問nand flash 中的數(shù)據(jù),必須通過 nand flash 控制器發(fā)送命令才能完成。nand flash 控制器在其專用寄存器區(qū)( sfr)地址空間中映射有屬于自己的特殊功能寄存器, 就是通過將 nand flash 芯片的內(nèi)設(shè)命令寫到其特殊功能寄存器中, 從而實現(xiàn)對 nand f
56、lash 芯片讀、檢驗和編程控制。特殊功能寄存器有: nfconf、nfcmd、nfaddr、nfdata、nf stat 、nfecc。圖 3-3 為多功能學(xué)習(xí)機引出的插座。3.2 nand flash 驅(qū)動驅(qū)動 開 始數(shù)據(jù)初始化數(shù)碼管掃描是否有鍵輸入y數(shù)據(jù)寫入鍵嗎y向 nand 芯片存儲數(shù)據(jù)校驗數(shù)據(jù)是否正確寫入led 顯示操作結(jié)果n擦除鍵嗎nn擦除 nandynand 接口初始化圖 3-3 nand flash 驅(qū)動的主程序流程圖nand flash 驅(qū)動的主程序流程圖如圖 3-3 所示。開始需要使數(shù)據(jù)初始化,然后使 nand 接口初始化,再經(jīng)數(shù)碼管掃描后看是否有鍵輸入,若無則返回到數(shù)碼管
57、掃描,若有,則向 nand 芯片存儲數(shù)據(jù);再校檢是否正確寫入,然后通過led 顯示操作結(jié)果,最后回到數(shù)碼管掃描;如果沒有數(shù)據(jù)寫入,則判斷是否要有擦除鍵按下,若無,則回到數(shù)碼管掃描,如若擦除鍵按下,則擦除 nand 回到數(shù)碼管掃描。3.2.1 nand flash 的工作原理nand flash的數(shù)據(jù)是以bit的方式保存在memory cell,一般來說,一個cell 中只能存儲一個bit。這些cell 以8個或者16個為單位,連成bit line,形成所謂byte(x8)/word(x16),這就是nand flashdevice的位寬。這些line會再組成page,(nand flash有多
58、種結(jié)構(gòu),以三星k9f1208u0m為例,每頁528 bytes (512byte(main area)+16byte(spare area),每32個page形成一個block(32*528b)。具體一片flash上有多少個block視需要所定。k9f1208u0b具有4096個block,故總?cè)萘繛?096*(32*528b)=66mb,但是其中的2mb是用來保存ecc校驗碼等額外數(shù)據(jù)的,故實際中可使用的為64mb。nand flash以頁為單位讀寫數(shù)據(jù),而以塊為單位擦除數(shù)據(jù)。按照這樣的組織方式可以形成三類地址:(1)column address:starting address of th
59、e register: 列地址,地址的低8位(2)page address :頁地址(3)block address :塊地址。對于nand flash來講,地址和命令只能在i/o7:0上傳遞,數(shù)據(jù)寬度是8位。擦除操作的最小單位是塊 ,nand flash芯片每一位只能從1變?yōu)?,而不能從0變?yōu)?,所以在對其進行寫入操作之前一定要將相應(yīng)塊擦除(擦除就是將相應(yīng)塊的位全部變?yōu)? ),nand flash器件中存在壞塊,壞塊是隨機分布的,nand flash控制器需要對介質(zhì)進行初始化掃描以發(fā)現(xiàn)壞塊,并將壞塊標記為不可用。3.2.2 nand flash 的讀操作功能: 讀數(shù)據(jù)操作以頁為單位, 讀數(shù)據(jù)
60、時首先寫入讀數(shù)據(jù)命令00h, 然后輸入要讀取頁的地址, 接著從數(shù)據(jù)寄存器中讀取數(shù)據(jù), 最后進行ecc 校驗。參數(shù)說明: block, 塊號; page, 頁號; buffer, 指向?qū)⒁x取到內(nèi)存中的起始位置; 返回值1, 讀成功, 返回值0: 讀失敗。static int nf_readpage ( unsigned int block, unsigned int page,unsigned char * buffer) nf_rst ecc( ) ; / * 初始化ecc * /nf_nfce_l( ) ; / * 片選nand flash 芯片* /nf_cmd( 0 x00) ; / * 從a 區(qū)開始讀* / * a0 a7( 列地址) * /nf_addr( 0
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年消防設(shè)施檢測與維保服務(wù)合同5篇
- 2025年度安置房質(zhì)量保證合同書3篇
- 2025年水泥制品環(huán)保技術(shù)轉(zhuǎn)移合同3篇
- 2025年度高空墜落防護HSE施工安全協(xié)議3篇
- 二零二五年房產(chǎn)銷售代理與廣告宣傳協(xié)議3篇
- 二零二五年鮮活水產(chǎn)品運輸與質(zhì)量監(jiān)管協(xié)議3篇
- 2025年度免租金停車場租賃合同模板
- 2025版棋牌室三方合作協(xié)議-創(chuàng)新管理與行業(yè)規(guī)范4篇
- 2025年污水處理站污水處理設(shè)施設(shè)備租賃與維修合同3篇
- 2025年度留學(xué)簽證擔保與資金證明服務(wù)合同3篇
- 公司組織架構(gòu)圖(可編輯模版)
- 1汽輪機跳閘事故演練
- 陜西省銅川市各縣區(qū)鄉(xiāng)鎮(zhèn)行政村村莊村名居民村民委員會明細
- 禮品(禮金)上交登記臺賬
- 普通高中英語課程標準詞匯表
- 北師大版七年級數(shù)學(xué)上冊教案(全冊完整版)教學(xué)設(shè)計含教學(xué)反思
- 2023高中物理步步高大一輪 第五章 第1講 萬有引力定律及應(yīng)用
- 青少年軟件編程(Scratch)練習(xí)題及答案
- 浙江省公務(wù)員考試面試真題答案及解析精選
- 系統(tǒng)性紅斑狼瘡-第九版內(nèi)科學(xué)
- 全統(tǒng)定額工程量計算規(guī)則1994
評論
0/150
提交評論