版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、單片機課程設計串行通信之多機通信完成日期:2009年7月11日目錄設計目的1實現功能1元件清單1總體框圖2根本原理4軟件仿真4拓展說明6課程設計完成感想7程序清單8設計目的了解單片機串行通信的工作原理。掌握串行口工作方式的程序設計及點對點通信電路連接方法實現功能根本實驗要求:利用兩臺單片機實驗平臺完成兩臺單片機間點對點通信。1 完成兩臺單片機間一主一從的單工通信。主機發(fā)送數據,從機接收數據并在數碼管上顯示。2 完成兩臺單片機的全雙工通信。通信雙方的任一單片機可同時發(fā)送和接收數據,并將數據在各自的數碼管上顯示。經過和老師的溝通協(xié)商,最后實現功能改為:實現兩個或兩個以上單片機間的多機通信,具體方式
2、為:三個51單片機間進行“1主對2”全雙工多機通信。主機可以將其數碼管顯示的內容發(fā)送給每個從機,也可以采集每個從機數碼管顯示的數據并求和后顯示出來,同時從機也可以主動發(fā)送數據給主機。每個單片機的數碼管顯示值可以通過外接的按鍵進行設置。元件清單AT89S52單片機 3個74LS47譯碼器6個七段數碼管6個復位電路三套晶振電路三套不帶鎖按鍵6個電源電路一套總體框圖根本原理本課程設計的重點和難點在于對于多機通信的標志位SM2及相關存放器的運用。MCS-51單片機串行通信口控制器SCON中的SM2為方式2或方式3的多機通信控制位。當串行口以方式2或方式3工作時,假設SM2設為1,此時只有當串行口接收到
3、的第9為數據RB8=1時,才置“1”中斷標志RI,假設收到的RB8=0,那么不產生中斷標志,信息被丟掉。從機系統(tǒng)有初始化程序將串行口設定為方式2接收,即9位異步通信方式,且置“1SM2和REN,允許串行口中斷。在主機和某一個從機通信之前,先將從機地址發(fā)送給各個從機系統(tǒng),接著才開始傳送數據或命令,主機發(fā)出的地址第9位為“1,數據包括命令信息的第9位為“0。當主機向各個從機發(fā)送地址時,各從機的串行口接收到的第9位信息及RB8為“1,那么置中斷標志位RI為“1,各從機響應中斷,執(zhí)行中斷效勞程序,判斷主機送來的地址是否和本機地址相符合,假設為本機地址,那么該從機清零SM2位,準備接收主機的數據或命令;
4、假設地址不相符,那么保持SM2為“1狀態(tài),接著主機發(fā)送數據,此時各從機串行口接收到的RB8=0,只有于前面地址相符合的從機系統(tǒng)即已經將SM2清零的從機才能激活中斷標志位RI,從而進入中斷效勞程序,在中斷效勞程序中接受主機的數據或執(zhí)行主機的命令,實現和主機的信息傳送;其他從機因SM2保持“1,又RB8=0不激活中斷標志RI,所接收的數據喪失不做處理,從而實現主機和從機間的通信。這種控制方式是主從式工作方式,由主機控制從機的接收和發(fā)送。綜上所述,本系統(tǒng)實現的過程總結如下:把全部從機的串行口初始化為工作方式2或方式3,置位SM2,允許中斷。主機置位TB8,發(fā)送要尋址的從機地址。所有從機均接受主機發(fā)送
5、的地址,并各自進入中斷效勞程序,進行地址比擬。被尋址的從機確認后,把自身的SM2清零。主機向從機發(fā)送命令,通知從機是進行數據接收還是進行數據的發(fā)送。主機和從機進行數據通信。軟件仿真Proteus調試與仿真:在keil中建立程序文件,調試成功生成hex文件。在proteusISIS界面中,單擊按鈕啟動仿真。主機操作如下:每按下“加1鍵,數碼管顯示值加1;每按下“匯總數據鍵,主機數碼管顯示值變?yōu)閺臋C1的顯示值+從機2的顯示值之和;每按下“發(fā)送從機1”鍵,從機1的數碼管顯示的數據為此時主機的數碼管上的數據;每按下“發(fā)送從機2”鍵,從機2的數碼管顯示的數據為此時主機的數碼管上的數據。從機操作如下:每按
6、下“加1鍵,數碼管顯示值加1;每按下“發(fā)送鍵,向主機發(fā)送數據;運行中的數碼管顯示值隨主機的操作而發(fā)生改變。仿真片段1:主機將6發(fā)送給從機1.仿真片段2:主機將數據10發(fā)送給從機2.仿真片段3:主機接收從機1和從機2數據之和。仿真片段4:從機1向主機發(fā)送數據仿真片段5:從機2向主機發(fā)送數據課程設計完成感想單片機課程設計的時間還是非常充裕的。兩天的時間,用來查閱資料和選擇題目。事實上,串行通信這個題目并不是我特別想做的。電子琴和led點陣顯示都是很好很有趣的題目,可是稍微打聽一下,周圍的同學好多都選定了這些題目,而且這個學期的嵌入式課程設計的題目已經做過了類似的作品。對于串行通信、總線知識,我們了
7、解的并不是很深入,可以說只是知其然而不知其所以然。因此,我打算挑戰(zhàn)一次自己,來嘗試去完成這個題目的課程設計。然而,這個過程是相當艱辛的。從一開始審題就是如此。剛開始接觸通信專業(yè)知識到現在,通信方式一直都是一個很根本的常識。什么叫單工通信,什么叫半雙工、雙工。原來以為這些概念早已是小兒科的問題,可是等到真正用到的時候,卻發(fā)現不是那么回事。實際上全雙工通信并不是那么容易就能夠實現的,并不是所有總線協(xié)議都能夠實現同時收同時發(fā)的功能。對于老師題目界定很模糊,所以,另一個和我一起想挑戰(zhàn)自我,并且在完全沒有商量的情況下選了同樣題目的女生決定去找老師把題目的功能的弄清楚。通過跟老師的交流,我們對于上面提到的
8、一些概念有了更加深入的認識。并且決定做多機通信。雖然說,多機通信,如果要焊板子的話必須要買三塊單片機才可以實現根本功能。但是對于已經決定了的我們,當時并沒有想太多。接下來就是寫程序了。改了寫,寫了改,又是兩天的時間,終于把程序調通了。鑒于沒有那么多單片機開發(fā)板來實現在線調試,我決定先用proteus軟件來仿真芯片調試。第一次用這個軟件感覺非常不好,因為當時手邊沒有教材參考,自己摸索,找不到器件,找不到地線電源線。沒方法,第二天到圖書館去借了一堆書回來看。終于把電路連接好了。把程序裝載進去,能夠實現我預先試想的功能。然而,事情快樂的太早了。這個軟件,是一次性的,第二次就再也打不開了。沒方法,只能
9、重裝。吃一塹長一智,大不了不關了,電腦全天侯待機??墒菦]有方法在線調試,我想,既然已經可以仿真出來,應該說沒有問題了吧。那就進入下一個環(huán)節(jié):去中發(fā)買元件。大中午一點鐘的,兩個女生頂著大太陽擠公交,一直到下午六點才回來。其實這點苦不算什么,如果板子能夠出來,再苦也開心,也值得。在這個環(huán)節(jié)必須要強調的一點就是,我們當時買單片機時要買SST公司制造的??墒悄欠N芯片不好買,甚至有人說那個芯片已經沒有人用了。既然這樣,那就買AT的吧,應該說沒有什么關系??墒俏覀內f萬沒有想到,這這個失誤竟造成了我們后面調試階段非常大的阻礙。仿真的時候用的是帶譯碼器的四腳數碼管,而去中發(fā)卻沒有買到,只好改變原來的設想,每個
10、數碼管加一個譯碼器。由于某些原因,兩天之后又去了一趟中發(fā)購置元件。有數碼管在,工程變得很巨大。由于我們每天要上一個上午的課,因此總共花了三天的時間才把板子焊好。沒有方法燒程序,因為開發(fā)板是飛利浦公司,和sst公司的。沒有方法燒AT的芯片。怎么辦,只能請教老師了。找過老師,找過助教。終于在另一個老師的助教那里發(fā)現了一個可以向所有芯片燒程序的下載器。但是仍然沒有方法在線調試。只好先用別人開發(fā)板上的芯片在線調試,這樣先把電路調通了。買的二聯的板子,很多線,很多焊錯點,很崩潰。此時又發(fā)生了一件神奇的事情。也可能我們的課程設計的進程到此為止了。在線調試完全沒有問題,可不知道為什么放在焊好的電路上就沒有任
11、何反映了。查電路,該電路,仍然一如既往的出不來任何反映。找助教老師,他查了一個晚上,也是和我一樣的費解。怎么辦,貌似沒轍了??删驮谶@個時候,才真正的靜下心來了。不可能沒有原因,所有的事情都是有原因的,單片機沒有反映,一定是一個很關鍵的錯誤沒有找出來。晚上去實驗室繼續(xù)查,一個管腳一個管腳的查,突然發(fā)現EA端按錯了地方了。改正來,出來了!寫道這里已經一千五百字,回首整個過程可謂坎坷崎嶇。自己焊板子的錯誤真的是不少,粗心大意的毛病總是改不了。做事情要堅持不懈,要腳踏實地,就算再困難總有柳暗花明的一天。程序清單程序存放器說明:R5:要發(fā)送和接收,并顯示在數碼管上的數據R4:暫存中間數據R3:發(fā)送及接收
12、指令。00H是主機發(fā)送,01H是主機接收R2:從機地址R1,R0:延時專用存放器主機清單:ORG00HAJMPMAINORG30HMAIN:MOVSP,#60H;初始化程序MOVTMOD,#20H;使用定時器1,方式2MOVTH1,#0FDH;裝入初始值MOVTL1,#0FDHMOVPCON,#0SETBTR1MOVR5,#00H;MOVSBUF,#00H;MOVP1,#00HLOOP:MOVP2,R5;顯示R5存放器內容JBRI,SHOUMOVA,#0FFHMOVP3,A;掃描按鍵JNBP3.2,PRESTX1;功能1 發(fā)送給從機1數據JNBP3.3,PRESTX2;功能2 發(fā)送給從機2數據
13、JNBP3.4,PRESRX;功能3 接收從機1+從機2數據之和JNBP3.5,JIAYI;功能4 自身的數據加1AJMPLOOPPRESTX1:CALLDELAYJBP3.2,LOOPJNBP3.2,$;MOVP1,#01HMOVR3,#00H;發(fā)送的命令MOVR2,#0E0H;從機1地址CALLMSIO1;發(fā)送NOPNOPAJMPLOOPPRESTX2:CALLDELAYJBP3.3,LOOPJNBP3.3,$;MOVP1,#02HMOVR3,#00HMOVR2,#0F0H;從機2地址CALLMSIO1NOPNOPAJMPLOOPPRESRX:CALLDELAYJBP3.4,LOOPJNB
14、P3.4,$;MOVP1,#0AHMOVR3,#01H;接收命令MOVR2,#0E0H;先發(fā)給從機1CALLMSIO1NOPNOPMOVA,R5;將從機1的數存放在R4MOVR4,AMOVR2,#0F0H;再發(fā)給從機2CALLMSIO1MOVA,R4ADDA,R5DAA;將兩個數據相加MOVR5,AAJMPLOOPJIAYI:CALLDELAYJBP3.5,LOOPJNBP3.5,$;MOVP1,#0HINCR5;加1CLRAADDA,R5DAA;加上進位MOVR5,AAJMPLOOPSHOU:CLRRIMOVA,SBUFMOVR5,AAJMPLOOPMSIO1:SETBTB8;發(fā)的是地址MO
15、VA,R2MOVSBUF,AJNBTI,$CLRTICLRTB8;發(fā)的是數據MOVA,R3MOVSBUF,AJNBTI,$CLRTICJNEA,#00,SRXSTX:CLRTB8MOVA,R5;發(fā)送子程序MOVSBUF,AJNBTI,$CLRTIRETSRX:JNBRI,$CLRRI;接收子程序MOVA,SBUFMOVR5,ARETDELAY:MOVR0,#10YAN1:MOVR1,#5YAN2:DJNZR1,YAN2DJNZR0,YAN1RETEND從機程序清單:SLAVEEQU30HORG00HAJMPMAINORG30HMAIN:MOVSP,#60HMOVTMOD,#20HMOVTH1,
16、#0FDHMOVTL1,#0FDHMOVSCON,#0D8HMOVPCON,#0SETBTR1SETBSM2MOVA,#0FFHMOVP1,AMOVA,P1MOVSLAVE,AMOVR5,#00H;MOVSBUF,#00HDISPLAY:MOVP2,R5;顯示CHACKRI:JBRI,SSIOJNBP3.7,CHAAJNBP3.3,CHABCHAA:CALLDELAYJBP3.7,CHACKRIJNBP3.7,$INCR5;加1MOVA,#0ADDA,R5DAAMOVR5,AAJMPDISPLAYCHAB:CALLDELAYJBP3.3,CHACKRIJNBP3.3,$MOVA,R5MOVSBUF,AJNBTI,$CLRTIAJMPCHACKRISSIO:CLRRI;接收地址SETBRS1CLRRS0MOVA,SBUFXRLA,SLAVEJZSSIO1;判斷是否是本機RETURN:SETBSM2AJMPDISPLAY;不是本機返回顯示S
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度循環(huán)借款資產證券化合同3篇
- 二零二五版木工技術改造與升級合同4篇
- 2025版大學生家庭離婚協(xié)議范本:子女撫養(yǎng)權與財產分割方案4篇
- 二零二五年度專業(yè)代理開票協(xié)議書8篇
- 2025年度國際貿易結算票據質押融資協(xié)議4篇
- 2025年中國百合加工行業(yè)市場深度分析及發(fā)展趨勢預測報告
- 2025年中國全麻包行業(yè)市場發(fā)展前景及發(fā)展趨勢與投資戰(zhàn)略研究報告
- 2025年中國粗雜糧及粗雜糧加工市場競爭格局及未來投資前景預測報告
- 二零二五年度租賃汽車長租服務合同范本正規(guī)范本13篇
- 二零二五年度便利店加盟品牌使用權轉讓合同范本3篇 - 副本
- 湖北省黃石市陽新縣2024-2025學年八年級上學期數學期末考試題 含答案
- 硝化棉是天然纖維素硝化棉制造行業(yè)分析報告
- 央視網2025亞冬會營銷方案
- 《00541語言學概論》自考復習題庫(含答案)
- 《無砟軌道施工與組織》 課件 第十講雙塊式無砟軌道施工工藝
- 江蘇省南京市、鹽城市2023-2024學年高三上學期期末調研測試+英語+ 含答案
- 2024新版《藥品管理法》培訓課件
- 《阻燃材料與技術》課件 第7講 阻燃橡膠材料
- 爆炸物運輸安全保障方案
- 江蘇省南京市2025屆高三學業(yè)水平調研考試數學試卷(解析版)
- 移動商務內容運營(吳洪貴)任務五 引發(fā)用戶共鳴外部條件的把控
評論
0/150
提交評論