單片機課程設計教學大綱終稿_第1頁
單片機課程設計教學大綱終稿_第2頁
單片機課程設計教學大綱終稿_第3頁
單片機課程設計教學大綱終稿_第4頁
單片機課程設計教學大綱終稿_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、單片機原理及應用課程設計教學大綱適用專業(yè): 學 時:一周 學 分:課程編號: 課程類別:專業(yè)課開課單位:編 寫 人:一、課程設計目的和要求1、設計目的通過課程設計,可將所學過的電子技術、模/數轉換技術、傳感器技術、單片機技術及智能儀器等知識綜合串聯(lián)起來,通過理論聯(lián)系實際,從題目分析、電路設計調試、程序編制調試到傳感器的標定等這一完整的實驗過程,培養(yǎng)學生正確的設計思想,使學生充分發(fā)揮主觀能動性,去獨立解決實際問題,以達到提升學生的綜合能力、動手能力、文獻資料查閱能力的作用,從而培養(yǎng)和提高學生的獨立工作能力及解決實際問題的能力,為畢業(yè)設計和以后的工作打下一個良好的基礎。2、設計要求a了解并掌握單片

2、機的原理、結構、指令、運行模式、功能模塊及應用開發(fā)方法。b提高綜合運用所學的理論知識獨立分析和解決問題的能力。c掌握匯編語言的設計和調試。二、課程設計方式集體輔導與個別輔導相結合三、課程設計內容1課程設計課題及要求A類題目:(此類題目主要在“THGMZ-3型單片機·微機·CPLD·FPGA·網絡接口開發(fā)綜合實驗裝置”上完成)題目1:V/F轉換模塊設計設計任務:調試F/V變換電路設計要求:1)測量Vin和Fout,畫出V/F線。 2)Fout接入8051的INT0或INT1,編程由單片機完成測量及顯示項目參考資料:見附件1。題目2:F/V轉換模塊設計設計任

3、務:調試F/V變換電路設計要求:1)測量Fin和Vout,畫出F/V線。2)Fin接單片機I/O口,編程由單片機產生頻率信號。參考資料:見附件1。題目3:直流電機轉速控制設計任務:使用單片機驅動直流電機,控制直流電機穩(wěn)定運行在一個轉速范圍內。設計要求:直流電機順時針旋轉,若干秒后,直流電機轉速達到運行速度1,穩(wěn)定運行一段時間后,直流電機轉速調整達到運行速度2,穩(wěn)定運行一段時間后,直流電機停轉。參考資料:見附件2。題目4:直流電機測速與顯示設計任務:測量直流電機的轉速并在數碼顯示電機轉速。設計要求:直流可調電源模塊的輸出端,作為直流電機的控制電壓,直流電機順時針旋轉,用數碼管顯示電機轉速(單位為

4、轉/秒)。參考資料:見附件2。題目5:步進電機轉速控制設計任務:使用單片機驅動步進電機,控制步進電機單拍、雙拍、正轉、反轉等操作。設計要求:由開關按鍵控制步進電機的正轉、反轉、快轉、慢轉。參考資料:見附件3。題目6:步進電機轉速計算與顯示設計任務:使用單片機驅動步進電機,計算步進電機的轉速并在數碼顯示電機轉速。設計要求:用數碼管實時顯示當前電機正反轉向和轉速(單位為轉/秒)。參考資料:見附件3。題目7:溫度的測量與顯示設計任務:使用單片機測量溫度,并顯示測得溫度。設計要求:根據系統(tǒng)提供的溫度傳感器電路、加熱電路、散熱電路,首先使用單片機控制加熱電路將溫度升至某一溫度值A,并在數碼管實時顯示測得

5、逐漸升高的溫度;然后停止加熱,在數碼管實時顯示測得的逐漸降低的溫度值。參考資料:見附件4。題目8:紅外數據發(fā)送與接收模塊設計設計任務:調試紅外數據收發(fā)的電路,單片機一方面從發(fā)送端發(fā)出數據,一方面從接收端接收數據。設計要求:單片機的串行口作為紅外數據發(fā)送端的輸入,先發(fā)送兩個字符,然后接收端接收數據,在數碼管上顯示接收的二進制數據的位數,并比較收到的數據與發(fā)送的是否一致。參考資料:見附件5。題目9: 485通信模塊設計設計任務:調試485通信模塊電路,單片機利用此電路完成雙機通信。設計要求:單片機利用系統(tǒng)提供的485接口電路,實現兩臺實驗機數據通信。從甲機的八位邏輯電平輸出模塊(E4區(qū))輸入一個八

6、位二進制數,此二進制數對應的十六進制數顯示到乙機的數碼管上,如10100101B輸入,則顯示A5。參考資料:見附件6。題目10:I2C串行EEPROM讀寫模塊設計設計任務:單片機利用I2C總線方式讀寫串行EEPROM 24C0X。設計要求:當開關1閉合時,單片機利用I2C總線方式將某一字符寫入EEPROM,當開關2閉合時,單片機利用I2C總線方式將EEPROM的剛剛寫入的數據在數碼管上顯示出來。參考資料:見附件7。B類題目:(此類題目要求自制電路,并且設計前提交自制電路的元器件清單,選擇器件參考附件8,設計答辯時提交硬件電路作品。)題目11:秒鐘計時器設計設計任務:使用單片機進行定時,每1秒鐘

7、發(fā)光二極管閃動1次,同時在數碼管上顯示當前秒數,每60秒數碼管清零1次,同時蜂鳴器響鈴提示。題目12:自動計數器設計設計任務:使用單片機進行計數,觸動開關每按下1次,發(fā)光二極管閃動1次作為提示,并且在數碼管上顯示當前按下次數,另一個觸動開關用來對自動計數器清零,同時蜂鳴器響鈴提示。題目13:霓虹燈設計設計任務:使用24個發(fā)光二極管組成3*8點陣,單片機擴展8255并行接口來控制這個點陣發(fā)光,呈現霓虹燈效果。題目14:多機通信設計設計任務:4個單片機,一個主單片機和三個從單片機,它們之間通過各自的uart串行口組成多機通信的總線型拓撲。在主機一側通過觸動開關選擇從機地址號如:1,2,3等,被選中

8、的從機一側,發(fā)光二極管,點亮提示,表示通信成功。題目15:液晶顯示界面設計設計任務:使用單片機控制液晶屏LCD 128*64 顯示字符,內容如下:課程設計制作人:XXXX題目16:與PC機串行通信設計任務:使用51最小系統(tǒng)板套件,完成數據轉發(fā),即在pc機上通過串行助手將數據發(fā)送給單片機,然后單片機將收到的數據返回給PC機,在串行助手軟件上顯示出來。參考資料:2人員組織: 請?zhí)顚憽案郊藛T組織”!3具體實施實習進程星期一準備工作:l 確定人員安排;l 了解具體功能,編寫計劃;l 查閱資料。星期二編制程序:l 確定算法;l 確定知識點星期三編制、測試、調試程序。星期四編制、測試、調試程序。星期五上

9、交課程設計報告及硬件、軟件成果。四、課程設計時間、地點與學分1、時間與學分:第一學期,共1 周; 學分2、地 點:E樓單片機及組成原理實驗室、電子電工實訓實驗室五、課程設計考核辦法與成績評定課程設計結束時,要求學生寫出課程設計報告,硬件電路按設計要求調試;軟件調試通過,完成相應功能,根據設計性能考慮的完善程度進行成績評定。課程設計成績分兩部分,設計報告占20%,設計作品占80%。六、教材及教學參考書單片機原理及應用, 張毅剛,高等教育出版社。單片機教程,蔡惟錚編,東北大學出版社。七、本大綱在執(zhí)行中注意的事項課程設計不僅僅要求學生完成所規(guī)定的題目要求,同時還要培養(yǎng)學生養(yǎng)成良好的科學態(tài)度和嚴謹的設

10、計習慣。建議學生在課程設計時完成如下文檔資料:(1)設計思想和設計說明 (2)硬件原理框圖(3)硬件原理圖與其軟件配合介紹(4)程序存儲器和數據存儲器的單元分配(5)程序流程圖(6)源程序清單(7)芯片資料附件人員組織:小組編號組長組員題目編號題目名稱第1組第2組第3組第4組第5組第6組第7組第8組第9組第10組第11組第12組第13組附件1在一些工業(yè)控制場合,信號獲取的地方距離控制器比較遠,或者被控制對象離處理器比較遠,這樣就需要進行信號傳輸,電壓信號在傳輸的過程中非常容易受到干擾。一般要轉換成電流或頻率信號來傳輸,提高系統(tǒng)抗干擾能力。F/V和V/F變換電路由LM331組成。LM331芯片可

11、以提供V/F、F/V功能。LM331與LM231具有一樣的功能,該類器件非常適合于低成本的模擬到數字轉換。在經過F/V變換后,可以用另一片LM331進行F/V轉換,在A/D就可以得到數字量,而對于80C51,則可以直接利用T1,T0端口,進行頻率或周期的測量而的得到數字量。另外經過V/F變換后,也便于使用光電耦離器件進行隔離。因為直接的電壓量一般不能進行光電隔離的。芯片特點: 1、保證最大0.01的線性度 2、雙電源或單電源供電 3、脈沖輸出兼容所有邏輯。 4、溫度穩(wěn)定性最大 500ppm/oc 5、低功耗。典型為5V,15mW 6、很寬的動態(tài)特性10KHz,最小100dB 7、很寬的頻率范圍

12、1Hz到100KHz管腳定義如下表:管腳號管腳名功能8Vs電源,一般為12V4GND電源地1CURRENT OUTPUT電流輸出2REFERENCE CURRENT參考電流3FREQUENCY OUTPUT頻率輸出7COMPARTOR INPUT比較器輸入6TYHRESHOLD保持門限5R/CR/C常數典型應用如圖所示1簡單V/F變換計算公式:2簡單F/V變換。計算公式:圖28-1 F/V轉換電路本實驗使用直流可調電源模塊(E2區(qū))、F/V轉換模塊(D3區(qū))、V/F轉換模塊(D4區(qū))。F/V轉換電路原理參見圖28-1,V/F轉換電路原理參見圖28-2。圖28-2 V/F轉換電路原理附件2:使用

13、柵格圓盤和光電門組成測速系統(tǒng)。當直流電機通過傳動部分帶動柵格圓盤旋轉時,測速光電門獲得一系列脈沖信號。這些脈沖信號通過單片機兩個定時/計數器配合使用同,一個計數,一個定時。計算出單位時間內的脈沖數m,經過單位換算,就可以算得直流電機旋轉的速度。直流電機轉速計算公式:n=60·m/(N1·T·N)(rpm)其中:n為直流電機轉速,N為柵格數,N1為T0中斷次數,m為計數器T1在規(guī)定時間內測得的脈沖數,T為定時器T0定時器溢出時間。使用系統(tǒng)提供的顯示電路,可把電機的轉速顯示出來。直流電機轉速調節(jié):某些場合往往要求直流電機的轉速在一定范圍內可調節(jié),例如,電車、機床等,調

14、節(jié)范圍根據負載的要求而定。調速可以有三種方法:(1)改變電機兩端電壓;(2)改變磁通;(3)在電樞回路中,串聯(lián)調節(jié)電阻。本實驗采用第一種方法:通過改變施加于電機兩端的電壓大小達到調節(jié)直流電機轉速的目的。本實驗用DAC0832D/A轉換輸出控制直流電機兩端電壓。程序中直流電機初始速度較大(大約40轉/秒),設運行速度設置為2000轉/分,經過若干秒后,直流電機轉速慢慢下降到運行速度,以設定的速度運行。本實驗需要用到CPU模塊(F3區(qū))、直流電機模塊(A6區(qū))、并行數模轉換模塊(D8區(qū))、8279顯示模塊(F4區(qū))。直流電機電路原理參見圖31-1A、圖31-1B。圖31-1A 直流電機電路圖31-

15、1B 光電測速電路附件3:1步進電動機有三線式、五線式、六線式三種,但其控制方式均相同,必須以脈沖電流來驅動。若每旋轉一圈以20個勵磁信號來計算,則每個勵磁信號前進18度,其旋轉角度與脈沖數成正比,正、反轉可由脈沖順序來控制。 2步進電動機的勵磁方式可分為全部勵磁及半步勵磁,其中全步勵磁又有1相勵磁及2相勵磁之分,而半步勵磁又稱1-2相勵磁。圖為步進電動機的控制等效電路,適應控制A、B、/A、/B的勵磁信號,即可控制步進電動機的轉動。每輸出一個脈沖信號,步進電動機只走一步。因此,依序不斷送出脈沖信號,即可步進電動機連續(xù)轉動。a1相勵磁法:在每一瞬間只有一個線圈導通。消耗電力小,精確度良好,但轉

16、矩小,振動較大,每送一勵磁信號可走18度。若欲以1相勵磁法控制步進電動機正轉,其勵磁順序如圖所示。若勵磁信號反向傳送,則步進電動機反轉。 勵磁順序: ABCDA STEP AB CD11 0 0 0 201 0 0 300 1 0 40 0 0 1 b2相勵磁法:在每一瞬間會有二個線圈同時導通。因其轉矩大,振動小,故為目前使用最多的勵磁方式,每送一勵磁信號可走18度。若以2相勵磁法控制步進電動機正轉,其勵磁順序如圖所示。若勵磁信號反向傳送,則步進電動機反轉。 勵磁順序: ABBCCDDAAB STEP AB CD11 1 0 0 201 1 0 300 1 1 41 0 0 1 c1-2相勵磁

17、法:為1相與2相輪流交替導通。因分辨率提高,且運轉平滑,每送一勵磁信號可走9度,故亦廣泛被采用。若以1相勵磁法控制步進電動機正轉,其勵磁順序如圖所示。若勵磁信號反向傳送,則步進電動機反轉。 勵磁順序: AABBBCCCDDDAA STEP ABCD11000211003001040110500106001170001810013電動機的負載轉矩與速度成反比,速度愈快負載轉矩愈小,當速度快至其極限時,步進電動機即不再運轉。所以在每走一步后,程序必須延時一段時間。4本實驗需要用到CPU模塊(F3區(qū))和步進電機模塊(A7區(qū))。步進電機電路原理參見圖32-1。圖32-1 步進電機電路附件4:系統(tǒng)使用集

18、成電路溫度傳感器AD590作為測溫器,AD590是AD公司生產的一種精度和線性度較好的雙端集成溫度傳感器,其輸出電流與絕對溫度有關,對于電源電壓從5-10V變化只引起1A最大電流的變化或1攝氏度等效誤差。圖33-1 溫度傳感部分圖33-1給出了用于獲得正比于絕對溫度的輸出電流的基本溫度敏感電路,當溫度有了10的變化時輸出電壓變化為20mV,即該電路運放6腳電壓隨溫度變化為2Mv/。AD590將溫度變化量轉換成電壓值變化量,經過OP07一級跟隨后輸入到電壓放大電路,放大后的信號輸入到A/D轉換器將模擬信號轉換成數字信號,利用CPU采集并存儲采集到的數據。將溫度傳感器輸出的小信號跟隨放大45倍左右

19、后,送至8位A/D轉換器換成數字量。設定溫度為0攝氏度時變換放大電路送出的模擬量為0V,此時A/D輸出的數字量為00H;溫度為67攝氏度時變換放大電路送出4.98V電壓,此時A/D輸出的數字量為FFH,即每0.3攝氏度對應1LSB變化量。當溫度超過報警溫度報警67攝氏度,此時,輸出電壓約為5.0V左右。通過電壓比較器接通硬件報警電路報警。輸入A/D的模擬信號有過壓保護,不會損壞A/D轉換器。在實驗平臺硬件中,已有安全設計,即加熱溫度不會超過80。系統(tǒng)出廠時已依據標準調整好了放大器的增益和零位。應注意:由于熱慣性的影響及溫度計顯示的滯后因素,若要精確觀察某溫度點的測量值,在加熱到觀察溫度點后,應

20、停止加熱,等待溫度計示值穩(wěn)定后,再觀察記錄結果。若選區(qū)觀察點溫度較高,還應相應延長等待時間。需要說明的是,由于溫度計和溫度采樣芯片AD590的采樣點不同,理論計算值同顯示略有偏差。本實驗需要用到CPU模塊(F3區(qū))和溫度測量與控制模塊(A5區(qū))、并行模數轉換模塊(D7區(qū))、8279顯示模塊(F4區(qū))。溫度測量與控制電路原理參見圖33-2。圖33-2 溫度測量與控制電路附件5:在很多單片機應用系統(tǒng)中,常常利用非電信號(如光信號、超聲波信號等)傳送控制信息和數據信息,以實現遙控或遙測的功能。紅外通信具有控制簡單、實施方便、傳輸可靠性高的特點,是一種較為常用的通信方式。實現單片機系統(tǒng)紅外通信的關鍵在

21、于紅外接口電路的設計以及接口驅動程序的設計。1紅外通信的基本原理紅外通信是利用950nm近紅外波段的紅外線作為傳遞信息的媒體,即通信信道。發(fā)送端采用脈時調制(PPM)方式,將二進制數字信號調制成某一頻率的脈沖序列,并驅動紅外發(fā)射管以光脈沖的形式發(fā)送出去;接收端將接收到的光脈轉換成電信號,再經過放大、濾波等處理后送給解調電路進行解調,還原為二進制數字信號后輸出。2紅外發(fā)送器紅外發(fā)送器電路包括脈沖振蕩器、驅動管Q1和Q2、紅外發(fā)射管Q3等部分。其中脈沖振蕩器由2206組成,用以產生38kHz的脈沖序列作為載波信號;紅外發(fā)射管Q3用來向外發(fā)射950nm的紅外光束。紅外發(fā)送器的工作原理為:串行數據由單

22、片機的串行輸出端DATA送出并驅動Q1管,數位“0”使Q1管導通,通過Q2管調制成38kHz的載波信號,并利用紅外發(fā)射管Q3以光脈沖的形式向外發(fā)送。數位“1”使Q1管截止,紅外發(fā)射管Q3不發(fā)射紅外光。若傳送的波特率設為1200bps,則每個數位“0”對應32個載波脈沖調制信號的時序,如圖34-1所示。圖34-1 調制信號時序圖3紅外接收器紅外接收電路選用專用紅外接收模塊。該接收模塊是一個三端元件,使用單電源+5V電源,具有功耗低、抗干擾能力強、輸入靈敏度高、對其它波長(950nm以外)的紅外光不敏感的特點,其內部結構框圖如圖34-2所示。如圖34-2 紅外接收模塊內部結構框圖接收模塊的工作原理

23、為:首先,通過紅外光敏元件將接收到的載波頻率為38kHz的脈沖調制紅外光信號轉化為電信號,再由前置放大器和自動增益控制電路進行放大處理。然后,通過帶通濾波器和進行濾波,濾波后的信號由解調電路進行解調。最后,由輸出級電路進行反向放大輸出。為保證紅外接收模塊接收的準確性,要求發(fā)送端載波信號的頻率應盡可能接近38kHz,因此在設計脈沖振蕩器時,要選用精密元件并保證電源電壓穩(wěn)定。再有,發(fā)送的數位“0”至少要對應14個載波脈沖,這就要求傳送的波特率不能超過2400bps。4本實驗需要用到CPU模塊(F3區(qū))和紅外收發(fā)模塊(A3區(qū))、函數信號發(fā)生器模塊(A2區(qū))、計數器/頻率計模塊(A4區(qū)),紅外收發(fā)電路

24、原理參見圖34-3。圖34-3 紅外收發(fā)電路附件6:RS-485接口具有較強的抗干擾性,數據傳輸的距離較遠,在一些應用中常常需要把RS-232標準的信號轉換為RS-485的標準信號進傳輸。圖中所示電路允許數據在RS-232/RS-485這兩個不兼容的串行數據接口間傳遞。傳輸速度為480波特時,傳輸距離可達1750米。圖中雙RS-232收發(fā)器IC1將主機(PC)輸出的RS-232電平轉換為TTL電平,驅動高速RS-485收發(fā)器IC2 的輸入,倒相器使IC2、IC3在受到起始位時被激活。開始工作時,主機發(fā)送數據給相應的遠端單元(從機),數據格式以零電平為起始位,起始位后跟隨一個字節(jié)的地址和一個字節(jié)

25、的數據,激活相應的從機。被激活的從機應答兩個字節(jié)的數據,然后置于接收模式,等待下一序列。因為只有主機對發(fā)送器作初始化,從機只在被激活后應答,所以傳輸線上不可能出現數據沖突。當從機處于接收模式(RE=DE=0),Va-Vb>200mV時,輸出Ro=1。 發(fā)送器通常為關閉狀態(tài),只有當接收到一個零起始位后處于發(fā)送模式。主機必須與從機采用同一地為參考點,為保證靜態(tài)條件下Va-Vb >200mV ,避免在RS-485芯片上附加額外的上拉電阻和下拉電阻,MAX485 提供了一個失效保護功能,可保證在-50mV至+200mV較窄的門限范圍內輸出Ro=1。本實驗需要用到CPU模塊(F3區(qū))和232

26、/485接口模塊(B1區(qū)),485接口電路原理參見圖35-1。圖35-1 485接口電路附件7:1串行EEPROM(24C02)接口方法 在新一代單片機中,無論總線型還是非總線型單片機,為了簡化系統(tǒng)結構,提高系統(tǒng)的可靠性,都推出了芯片間的串行數據傳輸技術,設置了芯片間的串行傳輸接口或串行總線。串行總線擴展接線靈活,極易形成用戶的模塊化結構,同時將大大簡化其系統(tǒng)結構。串行器件不僅占用很少的資源和I/O線,而且體積大大縮小,同時還具有工作電壓寬,抗干擾能力強,功耗低,資料不宜丟失和支持在線編程等特點。目前,各式各樣的串行接口器件層出不窮,如:串行EEPROM,串行ADC/DAC,串行時鐘芯片,串行

27、數字電位器,串行微處理器監(jiān)控芯片,串行溫度傳感器等等。 串行EEPROM是在各種串行器件應用中使用較頻繁的器件,和并行EEPROM相比,串行EEPROM的資料傳送的速度較低,但是其體積較小,容量小,所含的引腳也較少。所以,它特別適合于需要存放非揮發(fā)資料,要求速度不高,引腳少的單片機的應用。2串行EEPROM及其工作原理 串行EEPROM中,較為典型的有ATMEL公司的AT24CXX系列以及該公司生產的AT93CXX系列,較為著名的半導體廠家,包括Microchip,國家半導體廠家等,都有AT93CXX系列EEPROM產品。 AT24CXX系列的串行電可改寫及可編程只讀存儲器EEPROM有10種

28、型號,其中典型的型號有AT24C01A/02/04/08/16等5種,它們的存儲容量分別是1024/2048/4096/8192/16384位,也就是128/256/512/1 024/2048字節(jié)。這個系列一般用于低電壓,低功耗的工業(yè)和商業(yè)用途,并且可以組成優(yōu)化的系統(tǒng)。信息存取采用2線串行接口。這里我們就24C02的結構特點,其它系列比較類似。 3結構原理及引腳 AT24C02有地址線A0A2,串行資料引腳SDA,串行時鐘輸入引腳SCL,寫保護引腳WP等引腳。很明顯,其引腳較少,對組成的應用系統(tǒng)可以減少布線,提高可靠性。 各引腳的功能和意義如下: VCC引腳,電源+5V。 GND引腳,地線。

29、 SCL引腳,串行時鐘輸入端。在時鐘的正跳沿即上升沿時把資料寫入EEPROM;在時鐘的負跳沿即下降沿時把資料從EEPROM中讀出來。 SDA引腳,串行資料I/O端,用于輸入和輸出串行資料。這個引腳是漏極開路的埠,故可以組成“線或”結構。 A0,A1,A2引腳,是芯片地址引腳。在型號不同時意義有些不同,但都要接固定電平。 WP引腳,寫保護端。這個端提供了硬件數據保護。當把WP接地時,允許芯片執(zhí)行一般讀寫操作;當把WP接VCC時,則對芯片實施寫保護。4內存的組織及運行 內存的組織:對于不同的型號,內存的組織不一樣,其關鍵原因在于內存容量存在差異。對于AT24CXX系列的EEPROM,其典型型號的內

30、存組織如下。 AT24C01A:內部含有128個字節(jié),故需要7位地址對其內部字節(jié)進行尋址 AT24C02:內部含有256個字節(jié), 故需要8位地址對其內部字節(jié)進行讀寫。5運行方式起始狀態(tài):當SCL為高電平時,SDA由高電平變到低電平則處于起始狀態(tài)。起始狀態(tài)應處于任何其它命令之前。 停止狀態(tài):當SCL處于高電平時,SDA從低電平變到高電平則處于停止狀態(tài)。在執(zhí)行完讀序列信號之后,停止命令將把EEPROM置于低功耗的備用方式(Standby Mode). 應答信號:應答信號是由接受資料的器件發(fā)出的。當EEPROM接受完一個寫入資料之后,會在SDA上發(fā)一個”0”應答信號。反之,當單片機接受完來自EEPR

31、OM的資料后,單片機也應向SDA發(fā)ACK信號。ACK信號在第9個時鐘周期時出現。 備用方式(Standby Mode):AT24C01A/02/04/08/16都具有備用方式,以保證在沒有讀寫操作時芯片處于低功耗狀態(tài)。在下面兩種情況中,EEPROM都會進入備用方式:第一,芯片通電的時候;第二,在接到停止位和完成了任何內部操作之后。 AT24C01等5種典型的EEPROM在進入起始狀態(tài)之后,需要一個8位的“器件地址字”去啟動內存進行讀或寫操作。在寫操作中,它們有“字節(jié)寫”,“頁面寫”兩種不同的寫入方法。在讀操作中,有“現行地址讀”,隨機讀和“順序讀”種各具特點的讀出方法。下面分別介紹器件尋址,寫

32、操作和讀操作。 器件尋址:所謂器件尋址(Device Addressing)就是用一個8位的器件地址字(Device Address Word)去選擇內存芯片。在邏輯電路中的AT24CXX系列的5種芯片種,即AT24C01A/02/04/08/16中,如果和器件地址字相比較結果一致,則讀芯片被選中。下面對器件尋址的過程和意義加以說明。 芯片的操作地址 D7D6D5D4D3D2D1D01010A2A1A0R/W 用于內存EEPROM芯片尋址的器件地址字如圖所示。它有4種方式,分別對應于1K/2K,4K,8K和16K位的EEPROM芯片。 從圖中看出:器件地址字含有3個部分。第一部分是高4位,它們

33、稱為EEPROM AT24C01A/02/04/08/16的標識第二部分稱為硬布線地址,它們是標識后的3位。第三部分是最低位,它是讀/寫操作選擇位。 第一部分:器件標識,器件地址字的最高4位。這4位的內容恒為”1010”,用于標識EEPROM器件AT24C01A/02/04/08/16。 第二部分:硬布線地址,是與器件地址字的最高4位相接的低3位。硬布線地址的3位有2種符號:Ai(i=02),Pj(j=02)其中Ai表示外部硬布線地址位。 對于AT24C10A/02這兩種1K/2K位的EEPROM芯片,硬布線地址為“A2,A1,A0”。在應用時,“A2,A1,A0”的內容必須和EEPROM芯片

34、的A2,A1,A0的硬布線情況,即邏輯連接情況相比較,如果一樣,則芯片被選中;否則,不選中。AT24C01/02:真正地址=字地址。 第三部分:讀/寫選擇位,器件地址字的最低位,并用R/W表示。當R/W=1時,執(zhí)行讀操作;當R/W=0時,執(zhí)行寫操作。 當EEPROM芯片被選中時,則輸出“0”;如果EEPROM芯片沒有被選中,則它回到備用方式。被選中的芯片。其以后的輸入,輸出情況視寫入和讀出的內容而定。 寫操作:AT24C01A/02/04/08/16這5種EEPROM芯片的寫操作有2種:一種是字節(jié)寫,另一種是頁面寫。 字節(jié)寫: 這種寫方式只執(zhí)行1個字節(jié)的寫入。字節(jié)寫的過程如圖所示,其寫入過程分

35、外部寫和內部寫兩部分,分別說明如下。 在起始狀態(tài)中,首先寫入8位的器件地址。則EEPROM芯片會產生一個“0”信號ACK輸出作為應答;接著,寫入8位的字地址,在接受了字地址之后,EEPROM芯片又產生一個“0”應答信號ACK;隨后,寫入8位資料,在接受了資料之后,芯片又產生一個“0”信號ACK作為應答。到此為止,完成了一個字節(jié)寫過程,故應在SDA端產生一個停止狀態(tài),這是外部寫過程。 在這個過程中,控制EEPROM的單片機應在EEPROM的SCL,SDA端送入恰當的信號。當然在一個字節(jié)寫過程結束時,單片機應以停止狀態(tài)結束寫過程。在這時,EEPROM進入內部定時的寫周期,以便把接受的數據寫入到存儲

36、單元中。在EEPROM的內部寫周期中,其所有輸入被屏蔽,同時不響應外部信號直到寫周期完成。這是內部寫過程。內部寫過程大約需要10ms時間。內部寫過程處于停止狀態(tài)與下一次起始狀態(tài)之間。頁面寫: 這種寫入方式執(zhí)行含若干字節(jié)的1個頁面的寫入。對于AT24C01A/02,它們的1個頁面含8個字節(jié);頁面寫的開頭部分和字節(jié)寫一樣。在起始狀態(tài),首先寫入8位器件地址;待EEPROM答當了“0”信號ACK之后,寫入8位字地址;又待芯片應答了“0”信號ACK之后,寫入8位資料。 隨后頁面寫的過程則和字節(jié)寫有區(qū)別。 當芯片接受了第一個8位資料并產生應答信號ACK之后,單片機可以連續(xù)向EEPROM芯片發(fā)送共為1頁面的

37、資料。對于AT24C01A/02,可發(fā)送共1個頁面的8個字節(jié)(連第一個8位資料在內)。對于AT24C04/08/16,則共可發(fā)送1個頁面共16個字節(jié)(連第一個8位資料在內)。當然,每發(fā)一個字節(jié)都要等待芯片的應答信號ACK。 之所以可以連續(xù)向芯片發(fā)送1個頁面資料,是因為字地址的低34位在EEPROM芯片內部可實現加1,字地址的高位不變,用于保持頁面的行地址。頁面寫和字節(jié)寫兩者一樣可,都分為外部寫和內部寫過程。 應答查詢:應答查詢是單片機對EEPROM各種狀態(tài)的一種檢測。單片機查詢到EEPROM有應答“0”信號ACK輸出,則說明其內部定時寫的周期結束,可以寫入新的內容。單片機是通過發(fā)送起始狀態(tài)及器

38、件地址進行應答查詢的。由于器件地址可以選擇芯片,則檢測芯片送出到SDA的狀態(tài)就可以知道其是否有應答了。 讀操作:讀操作的啟動是和寫操作類同的。它一樣需要圖所示的器件地址字。和寫操縱不同的就是信號為時執(zhí)行讀操作。 讀操縱有3種方式,即現行地址讀,隨機讀和順序讀。下面分別說明它們的工作過程。 現行地址讀: 在上次讀或寫操縱完成之后。芯片內部字地址計數器會加1,產生現行地址。只要沒有再執(zhí)行讀或寫操作,這個現行地址就會在EEPROM芯片保持接電的期間一直保存。一旦器件地址選中EEPROM芯片,并且有R/W=1,則在芯片的應答信號ACK之后把讀出的現行地址的資料送出?,F行地址的資料輸出時,就由單片機一位

39、一位接受,接收后單片機不用向EEPROM發(fā)應答信號ACK“0”電平,但應保證發(fā)出停止狀態(tài)的信號以結束現行地址讀操作?,F行地址讀會產生地址循環(huán)覆蓋現象,但和寫操縱的循環(huán)覆蓋不同。在寫操縱中,地址的循環(huán)覆蓋是現行頁面的最后一個字節(jié)寫入之后,再行寫入則覆蓋同一頁面的第一個字節(jié)。而在現行地址讀操縱中,地址的循環(huán)覆蓋是在最后頁面的最后一個字節(jié)讀出之后,再行讀出才覆蓋第一個頁面的第一個字節(jié)。 隨機讀: 隨機讀和現行地址讀的最大區(qū)別在于隨機讀會執(zhí)行一個偽寫入過程以把字地址裝入EEPROM芯片中,然后執(zhí)行讀出,顯然,隨機讀有2個步驟。 第一,執(zhí)行偽寫入把字地址送入EEPROM,以選擇需讀的字節(jié)。 第二,執(zhí)行讀

40、出根據字地址讀出對應內容。 當EEPROM芯片接收了器件地址及字地址時,在芯片產生應答信號ACK之后,單片機必須再產生一個起始狀態(tài),執(zhí)行現行地址讀,這時單片機再發(fā)出器件地址并且令R/W=1,則EEPROM應答器件地址并行輸出被讀數據。在資料讀出時由單片機執(zhí)行一位一位接收,接收完畢后,單片機不用發(fā)“0”應答信號ACK,但必須產生停止狀態(tài)以結束隨機讀過程。 應該注意:在隨機讀的第二個步驟是執(zhí)行現行地址讀的,由于第一個步驟時芯片接收了字地址,故現行地址就是所送入的字地址。 順序讀: 順序讀可以用現行地址讀或隨機讀進行啟動。它和現行地址讀。隨機讀的最大區(qū)別在于:順序讀在讀出一批資料之后才由單片機產生停

41、止狀態(tài)結束讀操作;而現行地址讀和隨機讀在讀出一個資料之后就由單片機產生停止狀態(tài)結束讀操作。 執(zhí)行順序讀時,首先執(zhí)行現行讀或隨機讀的有關過程,在讀出第一個資料之后,單片機輸出“0”應答信號ACK。在芯片接收應答信號ACK后,就會對字地址進行計數加1,隨后串行輸出對應的字節(jié)。當字地址計數達到內存地址的極限時,則字地址會產生覆蓋,順序讀將繼續(xù)進行。只有在單片機不再產生“0”應答信號ACK,而在接收資料之后馬上產生停止狀態(tài),才會結束順序讀操作。 在對AT24CXX系列執(zhí)行讀寫的2線串行總線工作中,其有關信號是由單片機的程序和EEPROM產生的。有兩點特別要記?。捍袝r鐘必須由單片機程序產生,而應答信號ACK則是由接收

溫馨提示

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

評論

0/150

提交評論