




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、單片機原理與應(yīng)用實驗指導(dǎo)書黑龍江工程學(xué)院 汽車系2009年9月第1章 斯邁特 s51e 在線學(xué)習(xí)板該學(xué)習(xí)開發(fā)板采用 isp 在系統(tǒng)可編程技術(shù),完全擺脫了單片機仿真器、編程器的束縛,大大降低了單片機學(xué)習(xí)開發(fā)的成本。采用將編程電纜與實驗板分離技術(shù),能夠?qū)⒕幊屉娎|線用于其它用戶板,完全實現(xiàn)了 isp 技術(shù)。利用 s51e 板板上資源可以學(xué)習(xí)鍵盤控制、led 動態(tài)顯示、a/d 轉(zhuǎn)換、d/a 轉(zhuǎn)換、iic 總線 ram(掉電內(nèi)存)、繼電器控制、步進(jìn)電機控制、液晶顯示、以及 rs232 多機通信控制使用等,利用 89s51_e 板還可以根據(jù)用戶的不同要求進(jìn)行外圍擴展。一、原理圖(參見 s51e.sch f
2、or protel99)二、資源介紹(1)開發(fā)板資源說明6 位 led 數(shù)碼管、8 只小燈、6 只按鍵、1 路蜂鳴器、串行 eeprom 系列:at24c02、rs232串行通訊、2 路串行 ad 轉(zhuǎn)換 adc0832、步進(jìn)電機、直流電機、電子琴、時鐘、繼電器、lcd 液晶接口、at89s51 在線編程接口(2)資源引腳說明zif_40 腳鎖進(jìn)座:用于鎖緊 at89s51/52/53 系列芯片。cpu 周圍共有 4 x 8=32 個跳線器,分別對應(yīng) p0,p2,p1,p3 口線選擇:跳線器位于下方則:焊盤 p0.(00 07)與 cpu 的 p0.0 p0.7 口一一對應(yīng)焊盤 p1.(10 1
3、7)與 cpu 的 p1.0 p1.7 口一一對應(yīng)。焊盤 p2.(20 27)與 cpu 的 p2.0 p2.7 口一一對應(yīng)焊盤 p3.(30 37)與 cpu 的 p3.0 p3.7 口一一對應(yīng)跳線器位于上方則:數(shù)碼管 led1_6(筆段 a h)與 cpu 的 p0.0 p0.6 口一一對應(yīng)數(shù)碼管 led1_6(位)與 cpu 的 p2.7 p2.2 口一一對應(yīng)指示燈(l1 l6)與 cpu 的 p1.0 p1.7 一一對應(yīng)。p3.0 口對應(yīng) rs232 的 rx 端p3.1 口對應(yīng) rs232 的 tx 端按鈕 sw0 sw6 與 cpu 的 p3.3 口相連、并與 p0.0-p0.5
4、共享p3.2 口對應(yīng) at24c02 的 sck 端p3.4 口對應(yīng) at24c02 的 sda 端p3.5 口對應(yīng) adc0832 的 cs 端p3.6 口對應(yīng) adc0832 的 di 端p3.7 口對應(yīng) adc0832 的 do 端p2.1 口對應(yīng) adc0832 的 clk 端注意:led1-6、l1-l6 均為共陽接法,因此低電平點亮 led 及指示燈。按鈕 sw1-sw6 按下時,并分別對應(yīng)于 p2.7-p2.2 接中斷,該程序請參考樣例程序。reset 為 reset 開關(guān)。osc 為晶體(0-33mhz)插接區(qū)。小 led 為電源指示燈。rs232 接線端:rx 為 89s51
5、/52/53 的 232 電平 rdx 端彎腳 db9 接線:2 為串形輸出口3 為串形輸入口5 為接地用戶接線時只需使用不交叉的串口線與計算機相連rst、psen、 ale、vcc、gnd 與 cpu 的 ale,pstn,reset、vcc、gnd 端直接相連,用于系統(tǒng)擴展。電源輸入為:使用 9v 穩(wěn)壓電源即可、電源芯為正、外筐為地 。三、出廠方式介紹可以使用a/d轉(zhuǎn)換,at24c02,串口通訊,數(shù)碼管的動態(tài)掃描、蜂鳴器、adc0832、24c02、在線編程等資源,可以查閱光盤中的 pdf 文件來熟悉這些資源的應(yīng)用。(cpu 管座)液晶接口 lcd可以自己接線將接口上的焊盤與 89s52
6、的 i/o 口相連,必須參考液晶的說明書,了解其特性,方可進(jìn)行連接,以免減少不必要的損失。在演示盤中提供了擴展一個液晶的 asm 樣例程序(demo_lcd.asm),用戶可以通過參考樣例程序來熟悉對液晶的控制技術(shù)。步進(jìn)電機和繼電器:rs232 串口通訊:電路中的 rs232 芯片是用來將 ttl 電平與 232 電平互轉(zhuǎn)。我們可以將兩塊 51a/d/e板進(jìn)行通訊實驗如:用 a 板(發(fā)出信號的 51_e 板)向 b 板(接收信號的 51e 板)發(fā)出信號,即用不同的按鍵來發(fā)出信號,則 b 板上的數(shù)碼管會出現(xiàn)相應(yīng)的數(shù)字(sw1 為 1,sw2 為 2,sw3 為 3,-sw6 為 6)。a/d 轉(zhuǎn)
7、換接口串行 eeprom at24c02說明:采用動態(tài)掃描方式,若檢測鍵盤,不采用 led 數(shù)碼顯示時:只需將 p3.3 口置成低電平,然后判斷 p2.2-p2.7 哪一個口線為低電平即可;若采用數(shù)碼顯示,先將 p3.3 置高,在對 p2.2-p2.7 順序掃描(相應(yīng)的一位置低電平)的同時,讀取 p3.4引腳是否為低電平,如為低電平,則表示相應(yīng)的一位置按鍵按下.8 只 led 小燈及 6 位數(shù)碼管:說明:采用共陽接法,若要將 led 點亮,則只須將單片機 p1 口上相應(yīng)的 i/o 置成低電平。數(shù)碼管由 2n5401 驅(qū)動!集成溫度傳感器 ds18b20,量程:-20-+120 度,分辯率:12
8、 位,自校零。用戶自行購買后,將其焊接在傳感器位置上,運行可測量溫度。本機電源輸入為:9v 12v第2章 建立keilc51項目運行keil軟件,接著按下面的步驟建立您的第一個項目:(1)點擊 project 菜單,選擇彈出的下拉式菜單中的 new project,如圖 21。接著彈 出一個標(biāo)準(zhǔn) windows 文件對話窗口,如圖 22。在“文件名”中輸入您的第一個 c 程序項 目名稱,這里我們用“test”?!氨4妗焙蟮奈募U展名為 uv2,這是 keil uvision2 項目文件擴展名,以后能直接點擊此文件以打開先前做的項目。圖 21 new project 菜單圖 22 文件窗口(2)
9、選擇所要的單片機,這里選擇常用的 ateml 公司的 at89s52。此時屏幕如圖 23 所示。at89s52 有什么功能、特點呢?看圖中右邊有簡單的介紹。完成上面步驟后,就可 以進(jìn)行程序的編寫了。(3)首先在項目中創(chuàng)建新的程序文件或加入舊程序文件。如沒有現(xiàn)成的程序,就要新建一個程序文件。在 keil 中有一些程序的 demo,在這里我們還是以一個c程序為例介紹如何新建一個c 程序和如何加到您的第一個項目中。點擊圖 24 中 1 的新建文 件的快捷按鈕,在2 中出現(xiàn)一個新的文字編輯窗口,這個操作也可通過菜單 filenew 或 快捷鍵 ctrl+n 來實現(xiàn)。下面是經(jīng)典的一段例程序:#inclu
10、de #include void main(void)scon = 0x50; /串行口方式 1,允許接收tmod = 0x20; /定時器 1 定時方式 2tcon = 0x40; /設(shè)定時器 1 開始計數(shù)th1 = 0xe8; /11.0592mhz 1200 波特率tl1 = 0xe8; ti = 1;tr1 = 1; /啟動定時器while(1)printf (hello world!n); /顯示 hello world圖 23 選取芯片圖 24 新建程序文件這段程序的功能是不斷從串行口輸出“hello world!”字符,先不管程序的語法和意思吧,先 看看如何把它加入到項目中和如何
11、編譯試運行。(4)點擊圖 24 中的 3 保存新建的程序,也能用菜單 filesave 或快捷鍵 ctrl+s進(jìn)行保存。因是新文件所以保存時會彈出類似圖 24 的文件操作窗口,把第一個程序命名為 test1.c,保存在項目所在的目錄中,這個時候會發(fā)現(xiàn)程序單詞有了不一樣的顏色,說明 keil的c語言語法檢查生效了。如圖 25 鼠標(biāo)在屏幕左邊的 source group1 文件夾圖標(biāo)上右擊彈出 菜單,在這里能做在項目中增加減少文件等操作。選“add file to group source group 1” 彈出文件窗口,選擇剛剛保存的文件,按 add 按鈕,關(guān)閉文件窗,程序文件已加到項目中了。這
12、個時候在 source group1 文件夾圖標(biāo)左邊出現(xiàn)了一個小+號說明,文件組中有了文件,點擊它能展開查看。圖 25 把文件加入到項目文件組中(5)c程序文件已被加到了項目中了,下面可以編譯運行了。這個項目只是用做學(xué)習(xí)新建程序項目和編譯運行仿真的基本方法,所以使用軟件默認(rèn)的編譯設(shè)置,它不會生成用 于芯片燒寫的 hex 文件。先看圖 26,圖中 1、2、3 都是編譯按鈕,不一樣是 1 是用 于編譯單個文件。2 是編譯鏈接當(dāng)前項目,如果先前編譯過一次之后文件沒有做動編輯改動, 這個時候再點擊是不會再次重新編譯的。3 是重新編譯,每點擊一次均會再次編譯鏈接一次,不管程序是否有改動。在 3 右邊的是
13、停止編譯按鈕,只有點擊了前三個中的任一個,停止按鈕 才會生效。5 是菜單中的它們。在 4 中能看到編譯的錯誤信息和使用的系統(tǒng)資源情況等, 以后我們要查錯就靠它了。6 是有一個小放大鏡的按鈕,這就是開啟關(guān)閉調(diào)試模式的按鈕,它也存在于菜單 debugstartstop debug session,快捷鍵為 ctrl+f5。圖 26 編譯程序(6)進(jìn)入調(diào)試模式,軟件窗口樣式大致如圖 27 所示。圖中 1 為運行,當(dāng)程序處于停止?fàn)顟B(tài)時才有效,2 為停止,程序處于運行狀態(tài)時才有效。3 是復(fù)位,模擬芯片的復(fù)位,程序回到最開頭處執(zhí)行。按4 能打開 5 中的串行調(diào)試窗口,這個窗口能看到從 51 芯片的串行口輸
14、入輸出的字符,這里的第一個項目也正是在這里看運行結(jié)果。這些在菜單中也有。首先按4打開串行調(diào)試窗口,再按運行鍵,這個時候就能看到串行調(diào)試窗口中不斷的打印“hello world!”。最后要停止程序運行回到文件編輯模式中,就要先按停止按鈕再按開啟關(guān)閉調(diào)試 模式按鈕。然后就能進(jìn)行關(guān)閉 keil 等相關(guān)操作了。圖2-7為了讓編譯好的程序能通過編程器寫入51芯片中,要先用編譯器生成hex文件,下面來看看如何用keil uvision2來編譯生成用于燒寫 芯片的hex文件。hex文件格式是intel公司提出的按地址排列的數(shù)據(jù)信息,數(shù)據(jù)寬度為字 節(jié),所有數(shù)據(jù)使用16進(jìn)制數(shù)字表示, 常用來保存單片機或其他處理
15、器的目標(biāo)程序代碼。它保 存物理程序存儲區(qū)中的目標(biāo)代碼映象。一般的編程器都支持這種格式。我們先來打開第一個 項目,打開它的所在目錄,找到test.uv2的文件就能打開先前的項目了。然后右擊圖28 中的1項目文件夾,彈出項目功能菜單,選options for targettarget1,彈出項目選項設(shè)置窗口, 同樣先選中項目文件夾圖標(biāo),這個時候在project菜單中也有一樣的菜單可選。打開項目選項窗口, 轉(zhuǎn)到output選項頁圖28所示,圖中1是選擇編譯輸出的路徑,2是設(shè)置編譯輸出生成的文件 名,3則是決定是否要創(chuàng)建hex文件,選中它就能輸出hex文件到指定的路徑中。選好了再將它重新編譯一次,很快
16、在編譯信息窗口中就顯示hex文件創(chuàng)建到指定的路徑中了,如圖29。這樣就可用自己的編程器所附帶的軟件去讀取并燒到芯片了,再用實驗板看結(jié)果,編程器可以利用isp下載程序。(技巧:一、在圖28中的1里的項目文件樹形目錄中,先選中對象,再單擊它就可對它進(jìn)行重命名操作,雙擊文件圖標(biāo)便可打開文件。二、在project下拉菜單的最下方有最近編輯過的項目路徑保存,這里能快速打開最近在編輯的項目。)圖21項目功能菜單圖28 項目選項窗口圖 29 編譯信息窗口把編譯好的文件燒到了芯片上,帶串行口輸出元件的學(xué)習(xí)實驗板,就能把串行口和 pc 機串行口相聯(lián)用串行口調(diào)試軟件或windows的超級終端,將其波特率設(shè)為120
17、0,就能看到不停輸出的“hello world!”字樣。如果您還沒有實驗板,那這里先說說at89s52 的最小化系統(tǒng),再以一實例程序驗證最小化系統(tǒng)是否在運行,這個最小化系統(tǒng)也易于自制用于實驗。圖 210 便是 at89s52 的最小化系統(tǒng),不過為了讓我們能看出它是在運行的,加了一個電阻和一個led,用以顯示它的狀態(tài),晶體震蕩器能根據(jù)自己的情況使用,一般實驗板上是用 11.0592mhz 或 12mhz,使用前者的好外是能產(chǎn)生標(biāo)準(zhǔn)的串行口波特率,后 者則一個機器周期為 1 微秒,便于做精確定時。在自己做實驗里,注意的是 vcc 是+5v 的,不能高于此值,不然將損壞單片機,太低則不能正常工作。在
18、 31 腳要接高電平,這樣我們 才能執(zhí)行片內(nèi)的程序,如接低電平則使用片外的程序存儲器。下面建一個新的項目名為 oneled 來驗證最小化系統(tǒng)是否能工作。程序如下:#include /預(yù)處理命令void main(void) /主函數(shù)名/這是第一種注釋方式unsigned int a; /定義變量 a 為 int 類型/* 這是第二種注釋方式*/do /do while 組成循環(huán)for (a=0; a50000; a+); /這是一個循環(huán) p1_0 = 0; /設(shè) p1.0 口為低電平,點亮 led for (a=0; a50000; a+); /這是一個循環(huán) p1_0 = 1; /設(shè) p1.0
19、 口為高電平,熄滅 ledwhile(1);圖 210 at89s52 最小化系統(tǒng)keil c 編譯器所支持的注釋語句:一種是以“/”符號開始的語句,符號之后的語句都被視為注釋,直到有回車換行。另一種是在“/*”和“*/”符號之內(nèi)的為注釋。注 釋不會被 c 編譯器所編譯。一個c 應(yīng)用程序中應(yīng)有一個 main 主函數(shù),main 函數(shù)能調(diào)用別的功能函數(shù),但其它功能函數(shù)不允許調(diào)用 main 函數(shù)。不論 main 函數(shù)放在程序中的那個位置, 總是先被執(zhí)行。用上面學(xué)到的知識編譯寫好的 oneled 程序,并把它燒到剛做好的最小化系統(tǒng)中。上電,剛開始時 led 是不亮的(因為上電復(fù)位后所有的 io 口都置
20、 1 引腳為高電平),然后延時一段時間(for (a=0; a50000; a+)這句在運行),led 亮,再延時,led 熄滅, 然后交替亮、滅。第一個真正的小實驗就做完,如果沒有這樣的效果那么您就要認(rèn)真檢查一下電路或編譯燒寫的步驟了。第3章 實驗項目實驗一 集成開發(fā)環(huán)境的使用實驗?zāi)?1、了解keil集成開發(fā)環(huán)境的使用調(diào)試步驟 2、加強對mcs-51硬件認(rèn)識 3、基本c程序調(diào)試實驗設(shè)備:1、pc機 2、用戶板s51-e 3、下載器實驗內(nèi)容:1、 keil軟件的打開2、 集成開發(fā)環(huán)境的基本設(shè)定3、 集成開發(fā)環(huán)境的軟件菜單4、 集成開發(fā)環(huán)境的主要窗口應(yīng)用5、 程序編輯與修改6、 程序編譯與器碼對應(yīng)7、 程序調(diào)試8、 程序下載 9、設(shè)定斷點思考題:1、 調(diào)試基本驟是什么2、 調(diào)試中遇到了哪些報錯信息,錯誤原因分析3、 系統(tǒng)需要如何設(shè)定,有如注意事項。實驗二 定時應(yīng)用程序調(diào)試實驗?zāi)?1、掌握仿真仿真器應(yīng)用和仿真調(diào)試步驟 2、加強對mcs-51中斷系統(tǒng)應(yīng)用 3、定時器程序調(diào)試實
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025至2030年編織信號線項目投資價值分析報告
- 2025至2030年硬質(zhì)合金劃槽圓鋸片項目投資價值分析報告
- 2024年安全生產(chǎn)責(zé)任制培訓(xùn)教材
- 2025至2030年牛皮紙嵌縫帶電子打孔機項目投資價值分析報告
- 臨水臨電安全施工方案
- “一崗雙責(zé)”制度的設(shè)計與實施策略
- 2025至2030年流量控制儀項目投資價值分析報告
- 2025至2030年油壓自動上膠后幫機項目投資價值分析報告
- 2025至2030年汽車尾氣凈化裝置項目投資價值分析報告
- 各類活動方案匯報
- 嚴(yán)重心律失常急救與護(hù)理課件
- 糖尿病病情評估與風(fēng)險分級標(biāo)準(zhǔn)
- 檢傷分類資料
- 儲氣罐使用注意事項培訓(xùn)
- 醫(yī)務(wù)科依法執(zhí)業(yè)自查表
- 建筑技術(shù)質(zhì)量考核評分表
- 七年級心理健康期末考試試卷(含答案)
- 短視頻編輯與制作全套教學(xué)課件
- 小學(xué)語文教學(xué)技能PPT完整全套教學(xué)課件
- 美國憲法全文(中、英文版)
- 初中歷史課件:中國古代科技發(fā)展史
評論
0/150
提交評論