3216.片外數據的流動與存儲計算機應用+嵌入式課程設計_第1頁
3216.片外數據的流動與存儲計算機應用+嵌入式課程設計_第2頁
3216.片外數據的流動與存儲計算機應用+嵌入式課程設計_第3頁
3216.片外數據的流動與存儲計算機應用+嵌入式課程設計_第4頁
3216.片外數據的流動與存儲計算機應用+嵌入式課程設計_第5頁
已閱讀5頁,還剩9頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、 計算機科學與技術學部課程設計報告題目(中文) 片外數據的流動與存儲 (英文)chip flow and storage of date姓 名 學 號 學 部 計算機科學與技術學部 專業、年級 計應0702班 指 導 教 師 計算機科學與技術學部目 錄 第一部分:基本情況和內容 1組員基本情況與內容 3 2 與課程設計相關的課程學習情況3 3 組內成員中當任班干部的姓名與職務情況3 4 指導教師對課程設計的評語3 第二部分:報告內容與總結 1選題描述4 2設計過程5 3程序詳細設計11 4總結報告12 5程序附錄 13 第三部分:設計說明書 14第一部分:基本情況與內容1 組內成員基本情況題目

2、片外數據的存儲同組隊員信息學號姓名專業有效聯系方式學生1學生2學生3學生4學生5學生6學生7注:有效聯系方式主要是電話和e-mail兩項,根據組內成員的多少,調整表的大小。2與課程設計相關的課程學習情況(分別列出已學過的課程)課程1 嵌入式系統課程2 匯編語言課程3 微機接口 課程 4 plc 原理及程序設計課程 5 計算機組成原理3組內成員中當任班干部的姓名與職務情況4指導教師對課程設計的評語 教師: 年 月 日第二部分:報告內容選題描述l 現狀概述(現象、環境、條件)眾所周知mcs-51系列cpu里大多有一個4k的rom 8k的eprom和128b/256b的ram(有的則沒有rom),當

3、我們需要存儲更大容量時就必須進行片外的擴充或者想將數據傳到片外時就得再接一個外部存儲器(片內片外的rom是實行統一編止的)。當訪問外部存儲器(簡稱外部數據存儲器)時,使用的是movx指令,若執行的是“movx a,dptr”或“ movx dptr,a”指令,則此地址就是dpl(數據指針的低8位);同時,在p2口上出現的是dph(數據指針的高8位)。若執行的是“movx a,ri”或“movx ri,a”指令,則ri的內容為低8位地址,而p2口線上將是p2口鎖存器的內容。當rd/wr有效時,p0口將讀/寫數據存儲器中的數據。 在這種情況下, 由p2口提供高8位地址,p0口分時提供低8位地址和用

4、作8位雙向數據總線。片外數據存儲器ram的讀和寫由51系列的rd(p3.7)和wr(p3.6)信號控制。在第一個機器周期的s2、p2時刻,外部低8位數據鎖存器74ls373利用單片機的ale信號下降沿將單片機p0口輸出的低8位地址信號進行鎖存(暫存),為外存儲器提供低8位地址信號。以指令movx a,dptr指令為例,在s5、p1時刻,指令經過編譯后,將dptr中的內容(即外部數據存儲器的地址),分別經p0、p2口輸出,并在 s5、p2時刻74ls373將p0口中低8位地址鎖存,與p2口共同為外部數據存儲器提供一個完整的16位地址信號從而使單片機系統的尋址范圍達到64kb。在指令執行第2個機器

5、周期的s1,p1時刻,外部數據存儲器ram在單片機發送的rd低電平信號作用下,將選中的單元中的數據送到p0口傳送到累加器a。l 功能要求(達到的功能要求、知識要求、使用工具和器件是什么)功能要求:片外數據的存儲與傳送知識要求:要實現片外數據的流動存儲就首先必須熟練一般的匯編語言,對微機接口及單片機方面的知識都要有一定的了解,而且又有一定的數字電路基礎,要實現片外數據的存儲,我們必須得在mcs-51系列的cpu上外掛一個數據存儲器使用工具:在此我們選的是51系列cpu及靜態ram6116(2k*8).74ls373(外部低8位數據鎖存器)調試軟件:在mcs51仿真軟件上進行調試l 規范使用(如何

6、使用才能保證設計效果) 要保證設計所達到預期的設計效果就必須規范使用,首先得把握好題目的意思,如各方面的要求,功能的實現,數字及代碼的規范使用,應該達到的效果,而且操作應該在一個相對比較好的環境下(確保器件的齊全,可用,無故障),在實驗之前對元器件進行檢查以確保實驗的正常進行,拿取集成電路時請盡量不要觸碰到核心芯片及其引腳。設計過程l 總體框圖(由幾部分組成,各部分的聯系及次序,最后體現整體流程圖)(1)該課程設計主要由選題描、設計過程、程序詳細設計、總結報告、程序附錄五部分組成,各個部分的聯系是逐層遞進的,完成上一部分才能進行下一部分的工作,大概框圖如下:選描述設計過程硬件設計存選題描述設計

7、過程硬件設計包括以下三個分配存儲分配出錯處理設計包括以下三個程序詳細設計總結報告程序附錄主程序設計 2.程序流程圖(圖右)累加器a賦值a中的內容送到片外dptr地址加1r0加1r0=0?計數器r0原始清零,并指針賦值開始n結束yl 硬件設計(將要使用的接口集成電路、cpu、數據存儲器、程序存儲器如何構成一個整體,系統資源如何統一安排等。)片外數據的流動與存儲設計硬件電路主要由以下部分組成:1. 微機系統(mcu)2. 信號鎖存單元(74ls373)3. 外部存儲單元(ram)等mcs-51系列cpu負責數據的傳輸與控制,將片內的數據通過其p0,p2口輸出,其中p0是輸出低八位地址(因為p0口線

8、既要用作低八位地址總線同時還要分時復用成數據總線,因此需要加一個8位數據鎖存器,先把低8位地址送鎖存器暫存然后由鎖存器給系統提供低八位地址),p2口輸出的是高八位地址(本題只需三位),然后將數據存到外部數據寄存器ram中。a0a10地址輸入線o0o7雙向三態數據線ce片選信號輸入線,低電平有效,且ce為低電平時才選中該片oe讀選通信號輸入線,低電平有效we寫允許信號是輸入線,低電平有效vcc工作電源,電壓為+5vgnd使能控制端6116為2k*8位靜態sram芯片,在此作為片外數據存儲器使用(6116存儲容量只2kb,引腳數24只,工作電壓5v,典型工作電流35ma,典型維持電流5ma)方式

9、信號ce/oe/we/ o0o7讀vil vil vih數據輸出寫 vil vih vil數據輸入維持 vih 任意 任意高阻態(6116操作控制圖) 設計采用的電路圖如下所示:oe/we/a8a9a10a0a76116(sram)i/00i/01i/02i/03i/04i/05i/06 ce/i/07 p3.7(rd/)p3.6(we/)p2.0p2.1p2.2p2.3p2.4p2.5p2.6p2.7mcu(微處理器) p0.0 p0.1 p0.2 p0.3 p0.4 p0.5 p0.6 p0.7ea/ ale 74ls373do q0 q7d7g oe/ g g (邏輯電路圖)l 存儲分配

10、(片內、片外用戶數據區的劃分與存儲,片選信號的正確使用。)7fh用戶ram區30h2fh位尋址區20h1fh寄存器組0fh (1)由圖左我們能看出片內ram的分配: 1.80hffh:專用寄存器區,128字節 2.30h7fh:用戶區,80字節 3.20h2fh:位,尋址區,16個字節 4.60h1fh:四組寄存器,32個字節(圖左1) ffffh64kbram(i/o)0000h(2)我們從圖左2可看出片外用戶數據區地址劃分為0000ffffh,存儲空間大小為16kb(以擴展的最大空間為例) (圖左2)(3) 6116的片選信號端為ce/,低電平有效,所以我們可以給它送一個低電平或者直接接地

11、即可(此處直接接地)l 出錯處理設計(估計可能出差的情況分析、出錯以后處理對策方案。)在各種51系列單片機測控系統中,ram是其中一個很重要的組成部分。而在本題中片外數據的存儲與流動涉及到片外,所以外部寄存器的好與壞是關系到本次設計能否成功的決定性因素,ram的正常與否,直接關系到系統能否正常工作。在系統開始正常工作之前,如能對系統ram進行自檢,則可有效的避免因ram失常對測控系統帶來的危害。因此,對系統ram進行自檢是非常重要的。測試外部存儲器是否出現故障:方法1:首先將mcs51中的數據寫到外部存儲器ram中(寫到任意單元中),然后再讀出寫入得內容,若對任意區讀出和寫入的內容都一致的話,

12、則表示ram存儲器完好,無故障,否則有故障,若有故障,此時則應根據讀寫結果分析原因,故障原因有可能是工作電源沒有加上或地址線數據線有錯位、開路、短路、或讀、寫信號線沒有連接好等等 有一資料上介紹了另一種方法,方法2:程序測試法(此方法是首先向整個數據區寫入同一數據,再一一讀出比較,若不一樣,則出錯)。 測試程序如下:org 0001hstart: mov a,#55h ;準備向數據區2000h3fffh寫55h mov b,a ;保存在b中 mov dptr,#2000h ;ram首地址2000hwr: mov a,b ;取出要寫至ram的數據 movx dptr,a ;寫入ram的一個單元中

13、 inc dptr ;dptr加1 mov a,dpl ;取地址低字節 jnz wr ;不為0,轉wr繼續 mov a,dph ;取地址高字節 cjne a,#40h,wr ;40h(最高地址+1的高字節) mov dptr,#2000h ;等于,即寫完,重新置ram首地址rd : movx a,dptr ;讀出單元的數據 cjne a,b,err ;與寫入的數比較,不相等則出錯 inc dptr ;加1 mov a,dpl ;判別是否末地址 jnz rd mov a,dph cjne a,#40h,rd good: setb p1.0 ;全部比較完,正確 sjmp gooderr : set

14、b p1.7 setb err ;出錯處理運行該程序時如果d0二極管亮,說明外部ram正常,否則,二極管d7亮,說明有故障。還有一種網上文獻所做的:org 0000hljmp startorg 0040hstart: mov sp,#60h mov dptr,#1000h ;置外部ram讀寫地址 mov a,#55h ;測試的數據一 mov b,a movx dptr,a ;寫外部ram movx a,dptr ;讀外部ram xrl a,b ;比較讀回的數據 jnz error mov a,#0aah ;測試的數據二 mov b,a movx dptr,a movx a,dptr xrl a

15、,b jz pass ;測試通過error: setb p1.0 ;測試失敗,點亮l1 sjmp $ ;停機pass: cpl p1.0 ;l1狀態(亮/滅)轉換 mov r1,#00h ;延時delay: mov r2,#00h djnz r2,$ djnz r1,delay ljmp start ;測試循環 end 程序詳細設計l 主程序設計i. 要完成的功能簡述(符合處理程序流程圖) 將片外ram的3000h到30ffh單元的內容設為7fh,程序從0050h開始ii. 程序代碼和注釋(程序代碼具有獨特性)org 0050h ;程序啟動地址main: mov r0,#00h ;將計數器r0

16、清零 mov dptr,#3000h ;給dptr存儲器指針賦初值 loop1: mov a,,#7fh ;累加器a賦值為7fh movx dptr,a ;將存儲器a中內容送到片外 inc dptr ;單元地址自動加1 inc r0 ;計數器r0的值增1 cjne r0,#00h,loop1 ;判斷是否跳轉執行循環,r0不為零則執行循環,為0則繼續執行下條指令 end ;程序結束標志 l 接口設置i. 使用的集成電路與達到的要求我們使用的集成電路時最簡單的單片機電路來實現片外數據的存儲與流動,要求我們將51系列cpu的p0口當做輸入第八位地址用,同時還要分時復用成數據總線,p2口當做高八位地址

17、所用(在此只需取高三位地址限于所選的芯片)。l 程序的調試i. 調度的工具我們在此應用的調度工具是mcs-51仿真軟件使用條件:在windows平臺下進行操作調度步驟:首先將程序代碼調入軟件中進行調試,先構建再編譯,裝載程序后,如其能運行,則按f8觀看數據的變化,在程序運行中觀察r0,a,code的值,程序運行后在打開xdata窗口觀察xdate的值ii. 調試數據的正確性分析 經調試打開xdate窗口3000h30ffh單元中的值都為7fh,我們可以下出結論該程序設計正確,達到設計的目的。總結報告l 用文字概括課程設計的全過程(簡單扼要、文體合適)本次設計片外數據的存儲與流動,實際上是擴展外

18、部存儲器,已滿足用戶的需求,片外數據的流動與存儲課程設計重點是理論與實際相結合,不單單只是書上的一條條分離的指令。課程設計是培養學生綜合運用所學知識,發現、提出、分析和解決實際問題,是對學生實際工作能力的具體訓練和考察過程,從理論中得出結論,才能真正為社會服務,從而提高自己的實際動手能力和獨立思考的能力。l 經驗與教訓 鍛煉實踐能力的重要環節,回顧起此次的課程設計,我仍感慨頗多,的確,從選題到定稿,花了將近五個星期,但是可以學到很多東西,不僅可以鞏固了以前所學過的知識,而且學到了很多在書本上所沒有學過的知識。通過這次課程設計使我懂得了理論與實際相結合是很重要的,只有理論知識是遠遠不夠的,只有把所學的理論知識與實踐相結合起來,從理論中得出結論,才能真正為社會服務,從而提高自己的實際動手能力和獨立思考的能力。在設計的過程中遇到問題,可以說得是困難重重,這畢竟第一次做的,難免會遇到過各種各樣的問題,同時在設計的過程中發現了自己的不足之處,對以前所學過的知識理解得不夠深刻,掌握得不夠牢固,比如說對匯編語言掌握得不好通過這次課程設計之后,一定把以前所學過的知識重新溫故。這次課程設計終于順利完成了,在設計中遇到了很多編問題,最后在同學的幫助和老師的指導下終于游逆而解。最后,對給過我幫助的所有同學和各

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論