![[信息與通信]基于MCS51的兩片單片機之間的串行通信接口設計_第1頁](http://file2.renrendoc.com/fileroot_temp3/2021-4/22/25263d1c-5690-4ddc-af45-71762972ff9b/25263d1c-5690-4ddc-af45-71762972ff9b1.gif)
![[信息與通信]基于MCS51的兩片單片機之間的串行通信接口設計_第2頁](http://file2.renrendoc.com/fileroot_temp3/2021-4/22/25263d1c-5690-4ddc-af45-71762972ff9b/25263d1c-5690-4ddc-af45-71762972ff9b2.gif)
![[信息與通信]基于MCS51的兩片單片機之間的串行通信接口設計_第3頁](http://file2.renrendoc.com/fileroot_temp3/2021-4/22/25263d1c-5690-4ddc-af45-71762972ff9b/25263d1c-5690-4ddc-af45-71762972ff9b3.gif)
![[信息與通信]基于MCS51的兩片單片機之間的串行通信接口設計_第4頁](http://file2.renrendoc.com/fileroot_temp3/2021-4/22/25263d1c-5690-4ddc-af45-71762972ff9b/25263d1c-5690-4ddc-af45-71762972ff9b4.gif)
![[信息與通信]基于MCS51的兩片單片機之間的串行通信接口設計_第5頁](http://file2.renrendoc.com/fileroot_temp3/2021-4/22/25263d1c-5690-4ddc-af45-71762972ff9b/25263d1c-5690-4ddc-af45-71762972ff9b5.gif)
版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、 昆 明 學 院 2013 屆畢業(yè)論文(設計)論文(設計)題目 基于mcs51的兩片單片機之間的 串行通信接口設計 子課題題目 姓 名 學 號 201004090101 所屬院系 自動控制與機械工程學院專業(yè)年級 10級通信技術專業(yè) 指導教師 任杰 2013年 5月 基于mcs51的兩片單片機之間的串行通信接口設計 摘 要隨著電子技術的發(fā)展,單片機的應用也越來越多及越來越重要,而串行通信理論和單片機的開發(fā)相結合使電路板的線路少,成本低了,而且在遠距離傳輸時,避免了很多條的線路特性不同而被廣泛地使用。而rs232是一種比較成熟的串口,所以本次設計使用rs232串口,用串口通信時發(fā)送和接收到的每一個
2、字符實際上都是一次一位的傳送的,每一位為1或者為0。本次設計就是要利用單片機來完成一個系統(tǒng),實現(xiàn)兩單片機之間的串行通信。并且使用ds18b20溫度傳感器,由一臺單片機測量溫度后傳到另外一臺單片機上顯示。 串口通訊是單片機的一個重要應用,它既可以實現(xiàn)單片機對計算機的數(shù)據(jù)傳輸,同時計算機也可以對單片機進行控制。在本次設計中 ,我需要克服的問題有怎樣把兩串口與單片機連接和設置傳輸?shù)母袷?,和怎樣采集溫度,怎樣顯示等問題,總之,在本次設計中我需要對單片機有一定的基礎,同時數(shù)電和模電也需要好好溫習下。對于畫設計的系統(tǒng)電路圖有很大的幫助。而且我希望通過本次設計,可以很好的學習單片機,同時喜歡上單片機的設計。
3、其中單片機中,mcs51單片機上的通用異步接收/發(fā)送器uart,通過rxd和txd可與部電路進行串行異步通信,數(shù)據(jù)的發(fā)送由txd端送出,數(shù)據(jù)的接收由rxd端輸入。關鍵詞:串行通信 rs-232串口 波特率abstractmcu serial communication is a important application. in communication field, there are two types of data communication mode: parallel communication and serial communication. with the develop
4、ment of computer network and hierarchical distributed microcomputer application system, the function of the communication is more and more important. communication refers to computer information transmission to the outside world, both transmission between the computer and the computer,also includes
5、the computer and external device, such as terminals, printers, and transmission between devices such as disk. serial communication refers to using a data line, to transmit data a bit a ground in turn, each data holds a fixed length of time. its just a few lines can exchange information between the s
6、ystems, especially used in computer and computer, computer and remote communication between the peripherals. when using a serial port communication sending and receiving to each and every one of the characters are in fact a a delivery, each one is or is zero.this design is to use single chip microco
7、mputer to complete a system, realize the serial communication between the two mcu. and uses ds18b20 temperature sensor, temperature is measured by a single-chip computer and send to other displayed on a single chip microcomputer. for single chip microcomputer serial port communication is of great si
8、gnificance, not only can realize the mcu data transmission to the computer side, but also can realize the computer control of the microcontroller. due to its less cable, wiring simple, so in the long distance transmission, has been widely used, mcs - 51 series microcontroller with a universal asynch
9、ronous receiver/transmitter uart, rxd by pin p3. o and txd p3.1 with external sound circuit b full duplex serial asynchronous communication, send data sent by the txd end, when receiving data from the rxd input.keywords: serial communications rs - 232 serial port baud rate目 錄第一章 緒論11.1單片機的應用11.2 mcs
10、-51 單片機的基本組成21.3本課題要實現(xiàn)的內(nèi)容2第二章 串行通信介紹32.1串行通信與并行通信32.2同步通信與異步通信32.3 全雙工方式與半雙工方式42.4 串行異步通信52.5串行同步通信52.6 串口通信參數(shù)設置62.7 51單片機串行通信格式及波特率7第三章 系統(tǒng)設計83.1系統(tǒng)整體框圖83.2兩個rs232串口服務器之間的連接93.2.1 max232芯片93.2.2 rs232 連接方式93.3時鐘電路的作用123.4 led的接入133.5溫度采集與顯示133.5.1 ds18b20溫度傳感器133.5.2溫度傳感器與單片機的連接143.5.4 lcd和數(shù)碼管與單片機的連接
11、和排阻的接入153.5.4.1 排阻的選擇153.5.4.2 lcd、數(shù)碼管接入163.6整體電路16第四章 軟件調(diào)試184.1程序流程圖184.1.1串行接口流程圖184.1.2 k1、k2鍵程序流程圖194.1.3溫度采集與顯示子程序流程圖204.1.4 主程序流程圖214.2程序的調(diào)入與仿真結果22第五章 論文總結25參考文獻26謝辭27附錄28第一章 緒論為了提高系統(tǒng)管理的先進性和安全性,計算機工業(yè)自動控制和檢測系統(tǒng)越來越多地采用集總分散系統(tǒng)。較為常見的形式是由一臺作管理用的上位主計算機(主機)和多臺直接參與控制檢測的下位從計算機(從機)構成的主從式多機系統(tǒng),主機和從機之間以通訊的方式
12、來協(xié)調(diào)工作。主機的作用一是要向從機發(fā)送各種命令及參數(shù);二是要及時收集、整理和分析從機發(fā)回的數(shù)據(jù),供進一步?jīng)Q策和報表。從機被動地接收、執(zhí)行主機發(fā)來的命令,并且根據(jù)主機的要求向主機回傳相應的實時數(shù)據(jù),報告其運行狀態(tài)。1.1單片機的應用由于mcs-51系列單片機具有體積小、功能全、價廉、面向控制、應用軟件豐富、技術在不斷更新、開發(fā)應用方便等優(yōu)點,可以適應各個應用領域的不同需要,因而具有極強的競爭力和生命力,應用前景廣闊。今后它仍將是科技界、工業(yè)界廣泛選擇應用的8位微控制器,仍將是單片機應用的主流機種。單片機的應用提高了機電設備的技術水平和自動化程度,對各行各業(yè)的技術改造和產(chǎn)品更新?lián)Q代起到了重要的推動
13、作用。1.單片機特別適用于機、電、儀一體的智能產(chǎn)品(1)單片機在日常生活中的應用(2)單片機在數(shù)據(jù)處理方面的應用 (3)單片機在智能化的儀器儀表中應用2.單片機在工業(yè)控制中的應用 單片機成功地應用于玩具、游戲機、無繩電話、充電器、按摩器、ic卡電話、ic卡水表、ic卡煤氣表、ic卡電度表、流量溫控儀表、家庭自動化、電子鎖、電子秤、步進電機、防盜報警、電子日歷時鐘等這些日常生活的產(chǎn)品中。圖形終端、彩色黑白復印機、軟盤及硬盤驅(qū)動器、磁帶機、打印機的內(nèi)部都采用單片機進行控制。在各類儀器儀表中(包括醫(yī)療器械、色譜儀、溫度、濕度、流量、流速、電壓、頻率、功率、厚度、角度、長度、硬度、元素測定等)引入單片
14、機。3.單片機在通訊方面的應用,例如:電視機,人造衛(wèi)星,手機,電話等等。1.2 mcs-51 單片機的基本組成mcs-51單片機芯片有許多種,如8051、8031、8751、80c51、80c31等。它由8個部件組成:1、中央處理器cpu),核心。2、時鐘電路,12mhz。3、程序存儲器(rom/eprom),4kb。4、數(shù)據(jù)存儲器(ram),128b+128b sfr。5、并行i/o口(p0p3口),p0和p2兼作外總線。6、串行口,全雙工串行口。7、定時器/計數(shù)器,2個16位。8、 中斷系統(tǒng),5個中斷源,高級和低級兩級優(yōu)先級別。它們都是通過單一總線連接,并被集成在一塊半導體芯片上,為單片微
15、型計算機。1.3本課題要實現(xiàn)的內(nèi)容(1)在系統(tǒng)中擴展rs232串行通信接口,使a、b兩臺mcs51單片機通過該接口相連接。(2)在a、b兩臺mcs51單片機各有1個按鍵。 a機k1,控制b機的兩個led閃爍。 b機k2,控制a機的一位數(shù)碼管的顯示加1。(3)使用ds18b20溫度傳感器,由b機測量溫度后,傳到a機顯示。 第二章 串行通信的介紹2.1串行通信與并行通信串行通信使用的只是一根數(shù)據(jù)線,把數(shù)據(jù)一位一位地一次傳輸,其中每一位數(shù)據(jù)占據(jù)一個固定的時間長度。其只需要少數(shù)幾條線就可以在系統(tǒng)間交換信息,特別試用于計算機和計算機、計算機和外部設備之間的遠距離通信。數(shù)據(jù)在單條一位寬的傳輸線上,一比特接
16、一比特地按順序傳送的方式稱為串行通信。 在并行通信中,一個字節(jié)(8位)數(shù)據(jù)是在8條并行傳輸線上同時由源傳到目的地;而在串行通信方式中,數(shù)據(jù)是在單條1位寬的傳輸線上一位接一位地順序傳送。這樣一個字節(jié)的數(shù)據(jù)要分8次由低位到高位按順序一位位地傳送。圖2-1 串行通信與并行通信的對比2.2同步通信與異步通信 異步通信是指通信的發(fā)送與接收設備使用各自的時鐘控制數(shù)據(jù)的發(fā)送和接收過程。為使雙方的收發(fā)協(xié)調(diào),要求發(fā)送和接收設備的時鐘盡可能一致。異步通信以字符(構成的幀)為單位進行傳輸,字符與字符之間的間隙(時間間隔)也是任意的,但每個字符中的各位是以固定的時間傳送的。原理圖如圖2-2所示。圖2-2 異步通信原理
17、圖同步通信時要建立發(fā)送方時鐘對接收方時鐘的直接控制,使雙方達到完全同步。此時,傳輸數(shù)據(jù)的位之間的距離均為“位間隔”的整數(shù)倍,同時傳送的字符間不留間隙,即保持位同步關系,也保持字符同步關系。發(fā)送方對接收方的同步可以通過外同步和自同步兩種方法實現(xiàn)。以下為自同步原理圖如圖2-3所示。a發(fā)送數(shù)據(jù)b接收時鐘信號 圖2-3 同步通信原理2.3 全雙工方式與半雙工方式mcs_51單片機有一個全雙工串行口。全雙工的串行通訊只需要一根輸出線和一根輸入線。數(shù)據(jù)的輸出我們把它稱發(fā)送數(shù)據(jù)(txd),數(shù)據(jù)輸入時我們把它稱接收數(shù)據(jù)(rxd)。串行通信中我們要解決兩個技術問題,數(shù)據(jù)傳送是一個、數(shù)據(jù)轉(zhuǎn)換也是一個。數(shù)據(jù)傳送我們
18、需要解決送中的標準、傳送中的格式和傳送中的工作方式等問題。數(shù)據(jù)轉(zhuǎn)換是指數(shù)據(jù)的串行和并行轉(zhuǎn)換。具體說,在發(fā)送端,我們需要把并行傳輸?shù)臄?shù)據(jù)轉(zhuǎn)換為串行傳輸?shù)臄?shù)據(jù);但是在接收端,我們要把接收到的串行傳輸?shù)臄?shù)據(jù)轉(zhuǎn)換為并行傳輸?shù)臄?shù)據(jù),當數(shù)據(jù)發(fā)送及接收分流時,采用兩根不同的傳輸數(shù)據(jù)線傳送的時候,通信的雙方都可以在同一時間進行發(fā)送和接收數(shù)據(jù)的操作,以這樣的傳送方式傳送我們就稱為全雙工制式,在全雙工方式中,通信系統(tǒng)中的每一端都設置了發(fā)送器及接收器,因此,能控制數(shù)據(jù)同時地在兩個方向上傳送。全雙工方式是不需要進行方向切換的,所以,沒有因為切換操作而產(chǎn)生時間上的延遲,這些對不能有時間上的延誤的交互式應用非常有利。但是
19、此種方式要求通信的雙方都有發(fā)送器及接收器,而且,我們需要兩根數(shù)據(jù)線來傳送數(shù)據(jù)信號。,前一個字符的回送過程及后一個字符的輸入過程是同時進行的,也就是工作于全雙工方式。圖2-4是收發(fā)的波特率相同的。圖2-4全雙工制式如果采用同一根傳輸數(shù)據(jù)線既要作接收又要作發(fā)送,雖然數(shù)據(jù)是可以在兩個不同的方向上傳送,但是通信的雙方卻不能同時進行數(shù)據(jù)的收發(fā),這樣傳送的方式就稱為半雙工制,如圖2-5所示。采用的是半雙工制式的時候,通信系統(tǒng)中每一端發(fā)送器及接收器,是通過收和發(fā)的開關轉(zhuǎn)接到通信線路上的,來進行的方向之間切換,所以,可能會產(chǎn)生時間上延遲。如圖2-5。圖2-5半雙工方式2.4 串行異步通信 串行異步通信時,接收
20、方不斷地檢測或監(jiān)視串行輸入線上的電平變化,當檢測到有效起始位出現(xiàn)時,便知道接著是有效字符位的到來,并開始接收有效字符,當檢測到停止位時,就知道傳輸?shù)淖址Y束了。經(jīng)過一段隨機時間間隔之后,又進行下一個字符的傳送過程。通常接收端的采樣時鐘周期要比傳輸字符的位周期短,常用的采樣時鐘頻率為位頻率的16倍,采取這種措施是為了提高抗干擾能力 ,在串行通信中,二進制數(shù)據(jù)以數(shù)字信號的信號形式出現(xiàn),不論是發(fā)送還是接收,都必須有時鐘信號對傳送的數(shù)據(jù)進行定位。在ttl標準表示的二進制數(shù)中,傳輸線上高電平表示二進制1,低電平表示二進制0,且每一位持續(xù)時間是固定的,由發(fā)送時鐘和接收時鐘的頻率決定。2.5串行同步通信 同
21、步通信指的是數(shù)據(jù)傳送是以數(shù)據(jù)塊做為單位的,字符和字符之間、字符內(nèi)部的位和位之間都是同步的。同步串行通信的特點可以概括為:以數(shù)據(jù)塊作為傳送單位傳送信息;在一個信息幀之內(nèi),字符和字符間沒有間隔;因為每一次傳輸?shù)臄?shù)據(jù)塊中包含的數(shù)據(jù)比較多,因而接收時鐘和發(fā)送進鐘是嚴格同步的,所以通常我們的單片機設計中要有同步時鐘。同步串行通信的數(shù)據(jù)格式是每個數(shù)據(jù)塊或信息幀由3部分組成:一個數(shù)據(jù)塊為兩個同步字符也就是信息幀,作為起始標志;n個連續(xù)傳送的數(shù)據(jù);2個字節(jié)循環(huán)冗余校驗碼(crc)。 2.6 串口通信參數(shù)設置串口通信最重要的參數(shù)是停止位和奇偶校驗、波特率和數(shù)據(jù)位。要進行兩個端口的通信,就必須配置這些參數(shù):波特率
22、:這是一個通信速度衡量的參數(shù)。表示的是每一秒鐘傳送的bit個數(shù)。比如100波特是表示每一秒鐘發(fā)送100個bit。如果我們說到的是時鐘的周期,那么指的就是波特率,例如協(xié)議需要2400波特率,那么時鐘是2400hz。這就是說串口通信在數(shù)據(jù)線上的采樣率為2400hz。通常電話線的波特率為36600,28800和14400。但是波特率是可以遠遠大于這些值的,同時波特率與距離是成反比的。高的波特率常用于放置得很近的儀器間通信,其中gpib設備的通信就是一個例子。數(shù)據(jù)位:是一個衡量通信中的實際數(shù)據(jù)位的一個重要參數(shù)。如果單片機發(fā)送了一個信息包時,實際的數(shù)據(jù)不可能一定就是8位,標準的值可能是5位、7位和8位。
23、要怎樣設置決定于你想傳送什么樣的信息。列如,一般標準ascii碼采用的是0127(7位)。擴展的ascii碼是0255(8位)。如果數(shù)據(jù)使用標準 ascii碼,那么他的一個數(shù)據(jù)包就是用7位數(shù)據(jù)的。每個包就是指一個字節(jié),其中包括開始位和停止位,數(shù)據(jù)位和奇偶校驗位?;趯嶋H的數(shù)據(jù)位取決于通信協(xié)議標準,術語“包”指任何通信的情況。 停止位:用于表示單個包的最后一位。典型的值為1,1.5和2位。由于數(shù)據(jù)是在傳輸線上定時的,并且每一個設備有其自己的時鐘,很可能在通信中兩臺設備間出現(xiàn)了小小的不同步。因此停止位不僅僅是表示傳輸?shù)慕Y束,并且提供計算機校正時鐘同步的機會。適用于停止位的位數(shù)越多,不同時鐘同步的容
24、忍程度越大,但是數(shù)據(jù)傳輸率同時也越慢。奇偶校驗位:在串口通信中一種簡單的檢錯方式。有四種檢錯方式:偶、奇、高和低。當然沒有校驗位也是可以的。對于偶和奇校驗的情況,串口會設置校驗位(數(shù)據(jù)位后面的一位),用一個值確保傳輸?shù)臄?shù)據(jù)有偶個或者奇?zhèn)€邏輯高位。例如,如果數(shù)據(jù)是011,那么對于偶校驗,校驗位為0,保證邏輯高的位數(shù)是偶數(shù)個。如果是奇校驗,校驗位位1,這樣就有3個邏輯高位。高位和低位不真正的檢查數(shù)據(jù),簡單置位邏輯高或者邏輯低校驗。這樣使得接收設備能夠知道一個位的狀態(tài),有機會判斷是否有噪聲干擾了通信或者是否傳輸和接收數(shù)據(jù)是否不同步。2.7 51單片機串行通信格式及波特率51單片機串口通信協(xié)議有4種方
25、式,其中對1方式(8位),2,3方式(9位)的格式,中在每發(fā)送一個字節(jié)數(shù)據(jù)前都有一個起始位0,發(fā)送完畢一個字節(jié)后有一個停止位1,當想要在sbuf寫一個字節(jié)的數(shù)據(jù)流時,單片機會自動加上起始位,當ti=1時,就會自動加上停止位。也就是在串口通信時只需要設置,串口中斷,串口模式,以及串口中斷函數(shù)的處理,還有就是波特率。在本次設計的串行通信中,發(fā)送和接收數(shù)據(jù)時,們要對數(shù)據(jù)的速率肯定要有一個約定,我通過軟件可以對mcs-51單片機的串行口編程制定四種工作方式。這其中,方式0及方式2的波特率是固定不變的,但是方式1和方式3的波特率是可以變的,它是由定時器t1溢出率決定。方式0時,移位時鐘脈沖由56(即第6
26、個狀態(tài)周期,第12個節(jié)拍)給出,即每個機器周期產(chǎn)生一個移位時鐘,發(fā)送或者接收一位數(shù)據(jù)。所以,波特率就可以是振蕩頻率的十二分之一,并不受pcon寄存器中smod的影響,即:方式0的波特率fosc/12。方式1及方式3的移位時鐘脈沖是由定時器t1的溢出率決定的,故波特率是由定時器t1的溢出率和smod的值共同決定,也就是方式1及方式3的波特率就可以寫成2smod/32*t1溢出率。這其中,溢出率是取決于計數(shù)的速率和定時器預置的值。計數(shù)速率與tmod寄存器中c/t的狀態(tài)有關。當c/t0時,計數(shù)速率fosc/2;當c/t1時,計數(shù)速率取決于外部輸入時鐘頻率。 第三章 系統(tǒng)設計3.1系統(tǒng)整體框圖要實現(xiàn)兩
27、mcs51單片單片機之間的串行通信就需要兩rs232,分別接在各自的單片機上,然后再通過他們相連,兩單片機實現(xiàn)了通信,才可以繼而實現(xiàn)開關控制led閃爍和控制溫度顯示等??傊菊n題研究的內(nèi)容最主要是實現(xiàn)兩單片機的通信,led閃爍和溫度控制是他實現(xiàn)的表現(xiàn)形式。由溫度傳感器給單片機發(fā)送溫度,然后在lcd上顯示,而后是控制led閃爍需要一個開關或按鈕,和需要另外一個開關或按鈕來實現(xiàn)控制數(shù)碼管顯示加1,這些通信都是兩單片機之間的收發(fā)通信,而且是串行通信,所以我們不可能同時實現(xiàn)這些程序,當我們控制led閃爍后,需要控制數(shù)碼管顯示加1就得關閉控制led閃爍的開關,然后打開控制數(shù)碼管的開關才能實現(xiàn)數(shù)碼管顯示加
28、1。下面是整個系統(tǒng)的設計思想,用圖形表示出來就是如圖3-1。圖3-1系統(tǒng)框圖3.2兩個rs232串口服務器之間的連接3.2.1 max232芯片圖3-2 設計中采用的max232芯片 圖3-2 max232芯片其內(nèi)部是由一個電源電壓變換器組成的,它可以將輸入的+5v電壓轉(zhuǎn)換成rs-232輸出電平時所需的12v的電壓。所以采用這種芯片來實現(xiàn)接口電路特別方便,只需單一的+5v電源輸入即可。max232芯片的引腳結構如上圖所示。其中芯片的管腳16(c1+、v+、c1-、c2+、c2-、v-)是用于電源電壓的轉(zhuǎn)換,只要在外部接入相應的電解電容就可以了;管腳710及管腳1114構成了兩組ttl電平與rs
29、-232電平之間的轉(zhuǎn)換電路,這些相對應的管腳就可以直接和單片機串行口的ttl電平引腳直接相連接了。3.2.2 rs232 連接方式兩rs232把他們連接起來就可以構成一個實用的系統(tǒng),用一個圖就可以很清晰的看清楚他們之間的連接,如圖3-3。 圖3-3 兩rs232的連接如果甲方準備好之后,乙方就會產(chǎn)生呼叫(ri)有效,同時也準備好(dsr)。同時甲方rts和cts相連接,而且還要和dcd互連。也即是,如果甲方請求發(fā)送(rts),就會得到允許(cts),同時,也可以使乙方dcd有效,這是就是檢測到了載波信號。甲方的tx和乙方的rxd相連接,就是一發(fā)一收。 串行通信中,線路空閑時,線路的ttl電平總
30、是高的,經(jīng)反向rs232的電平總是低的,一個數(shù)據(jù)的開始rs232線路為高電平,結束時rs232線路為低電平,數(shù)據(jù)總是總低位向高位一位一位的傳輸。ttl電平串行數(shù)據(jù)幀格式如圖3-6:圖3-4 ttl電平串行數(shù)據(jù)幀格式rs232電平串行數(shù)據(jù)幀格式如圖3-5:圖3-5 rs232電平串行數(shù)據(jù)幀格式用protues仿真軟件畫出實際rs232之間的連接電路圖如圖3-6。 圖3-6 rs232之間的連接電路圖rs232的標準就是將(+3v)-(+15v),(-3v)-(-15v)的電平作為通訊的高低電平使用,所謂的信號強弱是和電壓、電流有關,通常rs232的通訊電流都在5ma-10ma左右,如果導線過長,
31、電損耗相對也會加大,那么電壓就會下降,這樣便會影響到信號識別。 開始通信時,信號線為空閑(邏輯1)模式時,如果檢測到從1跳變到0時,便開始接收時鐘吲數(shù)。如果檢測到8個時鐘,便要對對輸入的信號進行檢測,如果仍然是低電平,就確認這就是“起始位”,而不是干擾得信號;在起始位被收端檢測到后,這期間隔16個接收的時鐘,每檢測一次輸入信號,就會把相對應的值作為do的位數(shù)據(jù)。如果是邏輯1的話,則作為數(shù)據(jù)位1。每當隔16個接收時鐘的時候,對輸入的信號再檢測一次,我們就把相對應的值作為d1位數(shù)據(jù),直到全部數(shù)據(jù)位都已經(jīng)輸入;當檢測校驗位p和數(shù)據(jù)位個數(shù)及校驗位之后,接下來通信接口電路則會收到停止位如果此時沒有收到邏
32、輯1,就是出錯了,在狀態(tài)寄存器中設置”幀錯誤晰志;在這一幀信息全部都接收完之后,我們把線路上所有出現(xiàn)的高電平作為空閑位;每當信號再一次變?yōu)榈碗娖降臅r候,就會開始進入下一幀檢測。這其中,字符幀開頭的開頭是起始位,總共占1位,始終都為邏輯0電平,用于表示接收設備向發(fā)送端開始發(fā)送信息。始位之后就是數(shù)據(jù)位,他們可以設置成5、6、7、8位,低位的在前高位的在后。數(shù)據(jù)位之后是奇偶校驗位,僅僅占一位,用它來表示單片機串行通信中采用的是奇校驗還是偶校驗。 3.3時鐘電路的作用時鐘電路的核心是個比較穩(wěn)定的晶體振蕩器,晶體振蕩器產(chǎn)生正弦波,把頻率進行分頻,處理,形成時鐘脈沖,提供一個符合單片機要求的脈沖寬度和電平
33、范圍的復位信號,以使單片機回到初始狀態(tài)重新開始。在mcs51單片機片內(nèi)是一個高增益反相放大器,輸入端為xtal1為反相放大器,xtal2為輸出端,由該放大器構成的振蕩電路和時鐘電路便構成了單片機時鐘方式。根據(jù)電路的不同,單片機的時鐘方式可分為內(nèi)部時鐘方式及外部時鐘方式兩種。本次設計我用到的是內(nèi)部方式時鐘。在內(nèi)部方式時鐘電路中,我們要在xtal1和xtal2引腳兩端跨接上石英晶體振蕩器及兩個微調(diào)電容構以成振蕩電路,通常c1和c2一般取30pf,晶振的頻率取值在1.2mhz12mhz之間。對于外接時鐘電路,要求xtal1接地,xtal2腳接外部時鐘,對于外部時鐘信號并無特殊要求,只要保證一定的脈沖
34、寬度,時鐘頻率低于12mhz即可。晶體振蕩器的振蕩信號從xtal2端送入內(nèi)部時鐘電路,它將該振蕩信號二分頻,產(chǎn)生一個兩相時鐘信號p1和p2供單片機使用。時鐘信號的周期稱為狀態(tài)時間s,它是振蕩周期的2倍,p1信號在每個狀態(tài)的前半周期有效,在每個狀態(tài)的后半周期p2信號有效。cpu就是以兩相時鐘p1和p2為基本節(jié)拍協(xié)調(diào)單片機各部分有效工作的。如圖3-7是內(nèi)部方式的時鐘電路。 圖 3-7 內(nèi)部方式時鐘電路3.4 led的接入圖3-8 發(fā)光二極管的接入3.5溫度采集與顯示3.5.1 ds18b20溫度傳感器ds18b20內(nèi)部主要由4部分組成:64位光刻rom、溫度傳感器、非易失性溫度報警觸發(fā)器th和tl
35、、配置寄存器等。以下是ds18b20的內(nèi)部結構圖,如圖3-9。圖 3-9 ds18b20的內(nèi)部結構圖3.5.2溫度傳感器與單片機的連接ds18b20與51單片機的連接非常簡單,只須把ds18b20的數(shù)據(jù)線dq與51單片機的一根并口線連接即可,51單片機通過這根并口就能實現(xiàn)對ds18b20的所有操作,ds18b20的電源可采用外部電源供電,也可采用內(nèi)部寄生電源供電。當外部電源供電時,vdd接外部電源,gnd接地。當采用內(nèi)部寄生電源供電時,vdd與gnd一起接地。另外,也可用多片ds18b20連接組網(wǎng)形成多點測溫系統(tǒng),在多片連接時,ds18b20必須采用外部電源供電方式。本次設計采用的是外部電源供
36、電方式,b機與溫度傳感器電路連接如圖3-10。圖3-10 溫度傳感器與mcs51單片機(b機)的連接3.5.3 b機控制ds18b20溫度轉(zhuǎn)換 根據(jù)ds18b20的通信協(xié)議,b機控制ds18b20完成溫度轉(zhuǎn)換必須經(jīng)過三個步驟:每一次讀寫之前都要對ds18b20進行復位,在復位成功之后就會發(fā)送rom指令一條,最后就是發(fā)送ram指令了,這樣就能對ds18b20溫度傳感器進行預定操作。每一次的命令及數(shù)據(jù)的傳輸都是從b機主動啟動寫時序開始,如果要a機回送數(shù)據(jù),在進行命令的編寫后,b機需要啟動讀時序完成數(shù)據(jù)接收。數(shù)據(jù)及命令的傳輸都是低位在前。時序分為初始化的時序,讀時的時序和寫時的時序。復位時要求b機c
37、pu將數(shù)據(jù)線下拉500s,然后釋放,ds18b20收到信號后等待1560s左右,后發(fā)出60240s的低電平,b機cpu收到此信號則表示復位成功。讀時序可以分為讀“0”時時的時序和讀“1”時的時序兩個過程。對于ds18b20溫度傳感器的讀時序是從b機把單總線拉低,之后15s之內(nèi)釋放a機,以讓ds18b20溫度傳感器把數(shù)據(jù)傳輸?shù)絘機上。ds18b20溫度傳感器完成一個讀的時序最少需要60s。對于ds18b20的寫時的時序仍然是分為寫“0”時序和寫“1”時序兩個過程。ds18b20溫度傳感器寫“0”時序和寫“1”時序的要求有所不同,當我們要寫“0”時序時,單片機的單總線就會被拉低最少60s,以保證d
38、s18b20溫度傳感器能夠在15s到45s之間正確地采樣總線上的“0”電平;當要寫“1”時,單總線被拉低之后,在15s之內(nèi)就得釋放a機。3.5.4 lcd和數(shù)碼管與單片機的連接和排阻的接入3.5.4.1 排阻的選擇排阻,是一排電阻的簡稱。一個排阻是由n個電阻構成的,那么它就有n+1只引腳,我們知道,內(nèi)存在處理、傳輸數(shù)據(jù)時會產(chǎn)生大小不一的工作電流。而在內(nèi)存顆粒走線的必經(jīng)之處安裝一排電阻,則能夠幫助內(nèi)存起到穩(wěn)壓作用,讓內(nèi)存工作更穩(wěn)定。從而提升內(nèi)存的穩(wěn)定性,增強內(nèi)存使用壽命。上拉、限流。和普通電阻一樣,相比而言簡化了pcb的設計、安裝,減小空間,保證焊接質(zhì)量。在mcs51單片機中,當p0口的一個位寫
39、入0時,這個位被拉低。但是對p0口的其中一個位寫入1時,這個位呈現(xiàn)高阻,也就是未能連機,不能使用。要想獲得1輸出,你必須在p0口外加上拉電阻。 p1口具有內(nèi)部上拉電阻,當端口用作輸入時,必須通過指令將端口的位鎖存器置1,以關閉輸出驅(qū)動場效應管,這時p1口的引腳由內(nèi)部上拉電阻拉為高電平,所以向p1寫入1,工作正常。p0則不同,它沒有內(nèi)部上拉電阻,在驅(qū)動場效應管的上方有一個提升場效應管,它只是在對外存儲器進行讀寫操作,用作地址/數(shù)據(jù)時才起作用,當向位鎖存器寫入1,使驅(qū)動場效應管截止,則引腳浮空,所以寫入1而未獲得。p0口上拉電阻阻值的選擇,驅(qū)動lcd,那么用1k左右的上拉就行了。如果希望亮度大一些
40、,電阻可減小,最小不要小于200歐姆,否則電流太大;如果希望亮度小一些,電阻可增大,增加到多少呢,主要看亮度情況,以亮度合適為準,一般來說超過3k以上時,亮度就很弱了,但是對于超高亮度的lcd,有時候電阻為10k時覺得亮度還能夠用。但是要注意上拉電阻的阻值太大的時候,容易產(chǎn)生干擾,尤其是線路板的線條很長的時候,這種干擾更嚴重,這種情況下上拉電阻不宜過大,一般要小于100k,有時候甚至小于10k。3.5.4.2 lcd、數(shù)碼管接入本次設計采用的排阻是respack-8,共9個腳。其中第1腳接vcc,2至9腳接p0口。數(shù)碼管接單片機p1口,而p1口有內(nèi)部上拉電阻,本次設計中采用的只是8段數(shù)碼管,所
41、以數(shù)碼管就不用加上拉電阻。其中l(wèi)cd和單片機之間采用空中接口連接。如圖3-11。 圖3-11 lcd和數(shù)碼管的接入3.6整體電路 綜上所述,我們從圖3-1已經(jīng)知道了整個電路圖的布局,而且也分別研究了各個分系統(tǒng),圖3-1主要是設計的主體思路,方框來大體的表示要用到的電子元器件,這樣可以很直觀的看出設計的系統(tǒng)思想,對畫電路圖和寫程序有一定的幫助。也可以使讀者很快看出我的設計思想。最后把以各部分聯(lián)系起來,我們就可以采用proteus可以很快畫出系統(tǒng)電路圖,發(fā)送方的數(shù)據(jù)由串行口txd段輸出,經(jīng)過電平轉(zhuǎn)化芯片max232將ttl電平轉(zhuǎn)換成rs232電平輸出,經(jīng)過傳輸線將信號傳送到接收端,接收端也使用mx
42、232芯片進行電平轉(zhuǎn)換,信號到達接收方串行口的接收端。led的接入放在p2口,p1.2-p1.7口是準雙向接口,可以做輸入或輸出口使用,所以k2放在p1.7口,p3口為多功能口,它的每一位都有各自的第二功能,所以k1放在p3.7口,具體接口在程序里控制好就可以了。下圖是整個系統(tǒng)的電路圖,如圖3-11。圖 3-11 整個系統(tǒng)電路圖 第四章 軟件調(diào)試4.1程序流程圖 4.1.1串行接口流程圖串行接口可以將來自單片機cpu的并行數(shù)據(jù)字符轉(zhuǎn)換成連續(xù)的串行數(shù)據(jù)流發(fā)送出去,同時可將接收到的串行數(shù)據(jù)流轉(zhuǎn)換為并行數(shù)據(jù)字符供給單片機cpu器件。完成這種功能的電路,我們一般稱為串行接口電路。串口發(fā)送和接收字節(jié)按位
43、(bit)進行。雖然比起按字節(jié)(byte)的并行通信速度慢,但是串口可以在使用一根線發(fā)送數(shù)據(jù)的時候用另一根線同時接收數(shù)據(jù)。 圖4-1 串口通信程序流程圖4.1.2 k1、k2鍵程序流程圖 圖 4-2 k1、k2程序流程圖4.1.3溫度采集與顯示子程序流程圖圖4-3 溫度采集與顯示程序流程圖4.1.4 主程序流程圖單片機程序主要包括串行數(shù)據(jù)采集模塊和串行數(shù)據(jù)傳輸模塊,收發(fā)時a機先向b機發(fā)送“請求b機發(fā)送”命令,要求b機發(fā)送數(shù)據(jù);b機收到該命令后返回一個“發(fā)送準備好”命令;a機收到“發(fā)送準備好”命令后,準備接收數(shù)據(jù)塊;接著傳輸數(shù)據(jù),通信結束后返回到初始狀態(tài)。b機向a機發(fā)送程序時則反過來。下面是整個
44、系統(tǒng)的程序流程圖,如圖4-4所示。圖4-4 主程序流程圖4.2程序的調(diào)入與仿真結果通過編程器生成的,擴展名為.hex的可執(zhí)行文件燒寫到單片機內(nèi)。在寫入之前還可以進行軟件仿真,既在軟件上模擬單片機程序原形情況,以便進行調(diào)試和修改。本次設計就是做軟件仿真,模擬單片機程序原型。仿真結果如圖4-5。下圖是先按下開關k2,按5下,數(shù)碼管顯示4;然后按下開關k1,a機的兩led就一直在閃爍。lcd里的初始溫度顯示14 ;ds18b20 里可以對溫度進行加減,圖示溫度是我已經(jīng)按了5下里的ds18b20上鍵了。圖4-5 系統(tǒng)仿真圖為了結果清晰可見,對各部分程序?qū)崿F(xiàn)的仿真截圖如下,圖4-6 是在初始化程序開始后
45、連續(xù)按了3下k2。 圖4-6 數(shù)碼管顯示加1圖4-7 是溫度傳感器,這protues仿真中,用它來調(diào)節(jié)lcd上顯示的溫度。 圖 4-7 溫度傳感器 圖4-8 lcd顯示溫度 圖4-9 k1控制的兩led閃爍第五章 論文總結mcs51單片機的串行口是一個全雙工串行口,可同時發(fā)送和接收數(shù)據(jù)。它有4種工作方式,不僅可用于擴展并行輸入,輸出口,而且可用于單片機與單片機,單片機與pc及之間的異步通信。通過對與串行口有關的特殊功能寄存器(sfr)、串行控制寄存器(scon)、電源控制器(pcon)和定時器的編程設置,串行口可工作在不同的模式,不同的速度,從而實現(xiàn)不同的通信功能。mcs51單片機與其它設備進
46、行通信時,僅需一至兩根導線,適用于長距離信息傳輸。因此,mcs51單片機串行口通信技術是當今成熟而又應用非常廣泛的一種通信技術。串行通信是cpu與外界交換信息的一種基本通信方式。通信時僅需一到兩根傳輸線,且每次只能傳送一位,適用于長距離傳輸,但速度較慢。51系列單片機有一個可編程的全雙工串行通信接口,它可作異步接收發(fā)送器用,也可做同步移位寄存器用,其幀格式可有8位、10位或11位,并能設置各種波特率,給使用帶來很大的靈活性。51系列單片機有兩個物理上獨立的接收、發(fā)送緩沖器sbuf,可同時發(fā)送、接送數(shù)據(jù)。發(fā)送緩沖器只能寫入,不能讀出,接收緩沖器只能讀出、不能寫入。串行發(fā)送接收的速率與波特率發(fā)生器
47、產(chǎn)生的移位脈沖同頻。51系列單片機用定時器t1或直接用cpu時鐘作為通信波特率發(fā)生器的輸入,在串行接口的不同工作方式中,波特率發(fā)生器從兩個輸入信號中選擇一個分頻,產(chǎn)生移位脈沖來同步串口的接收和發(fā)送,移位脈沖的速率即是波特率。通過本次畢業(yè)設計,然我對單片機有了一個全面的了解和學習,對51單片機管腳,時鐘電路,上拉電阻,溫度傳感器有比較深刻的印象,對單片機有了一定的興趣,希望以后有時間及機會再研究單片機。但是在本次畢業(yè)設計中,對于初學者的我,明顯對基礎知識掌握的不夠好,以至于困難重重。在以后的學習生活中,我一定會學會腳踏實地的做好每一件值得做的事。 參考文獻1沙愛軍, 基于單片機的超聲波測距系統(tǒng)的
48、研究與設計j電子科技,2009,22(11)2胡漢才單片機原理與其接口技術(第二版)m北京:清華大學出版社,20043彭偉,單片機c語言程序設計實例100例.電子工業(yè)出版社.2009,064 高峰 . 單片微機應用系統(tǒng)設計及實用技術. 北京:機械工業(yè)出版社,20044 陳光東,趙性初 . 單片微型計算機原理與接口技術. 武漢:華中科技大學出版社,19956夏繼強 . 單片機實驗與實踐教程. 北京:北京航空航天大學出版社, 2001 7張傳新,徐少杰pc機與mcs-51單片機主從多機通信控制程序的研究j.伊圖里河分局研究所,鐵路計算機應用第5卷第2期 p10-128黃亮基于at89c51單片機的
49、串行通信程序設計j. 中國地質(zhì)大學,單片機實用電子制作29-32謝辭光陰似箭, 日月如棱。 三年的時間, 在我漫長的人生旅途中顯得那么短暫,到了該告別的時候了,一念至此,竟有些恍惚。如果把大學生活看作一場場循環(huán)的演出,那么我只是一個安靜的演員。這篇畢業(yè)論文也將是這種循環(huán)演出即將告一段落時的謝幕詞。但是,這短短的三年是最真誠的青春,是最純真的歲月,是最美麗的大學生活 我的自學能力在這里得提升,我感謝所有的恩師:是您們賦予我最有意義的收獲;給我一個全新的角度去發(fā)現(xiàn)美、創(chuàng)造美、欣賞美,給我美的眼睛去發(fā)現(xiàn)世界的美,感悟生活的美;教會我珍惜友誼和時間;給了我看世界的眼睛,是你們用博大的胸懷,給予我們最無
50、私的關懷和奉獻。 附錄串口通信子程序:#includevoidmain (void)scon=0x50;th1=0xfd;tr1=1;ea=1;/打開總中斷es=1;/打開串口中斷while(1) /主循環(huán)不做任何動作voiduart_ser(void)interrupt 4 /串行中斷服務程序unsignedchar temp;/定義臨時變量if(ri)/判斷是接收中斷產(chǎn)生ri=0; /標志位清零temp=sbuf; /讀入緩沖區(qū)的值p1=temp;/把值輸出到p1口sbuf=temp;if(ti)/如果是發(fā)送標志位,清零ti=0;發(fā)光二極管子程序:#includevoid delay1ms
51、(unsigned int count)unsigned int i,j;for(i=0;icount;i+)for(j=0;j120;j+);main()unsigned char ledindex=0;bit leddirection=1;while(1)if(leddirection)p2=(0x01ledindex); if(ledindex=7)leddirection=!leddirection;ledindex=(ledindex+1)%8;delay1ms(500);顯示子程序:#include#includelcd1602.hsbit k1=p37; unsigned char table10=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90;unsigned char aa=0;unsigned char i=0;unsigned char temp1;void delay1(unsigned int delay_time);void uart_init(void);void ds18b20_dis();voiddisplay()p0=distmp&0x0f;p2=0x7f;delayms(10);p0=distmp/16;a機程序:#
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025至2030中國電鍍表配件行業(yè)深度研究及發(fā)展前景投資評估分析
- 2025至2030中國電子商務食品行業(yè)深度研究及發(fā)展前景投資評估分析
- 2025至2030中國電動尾門行業(yè)產(chǎn)業(yè)運行態(tài)勢及投資規(guī)劃深度研究報告
- 2025至2030中國瑪瑙飾品行業(yè)市場占有率及投資前景評估規(guī)劃報告
- 技術培訓推動教師職業(yè)發(fā)展的重要動力
- 幼兒園營養(yǎng)性疾病知識培訓
- 智慧教育大數(shù)據(jù)驅(qū)動的教學效率變革
- 探索不同國家在線教育平臺的創(chuàng)新實踐
- 教育中的心理學技巧激發(fā)學生潛能的實踐
- 民辦教育的規(guī)范化發(fā)展及其政策支持
- 【MOOC】教育研究方法-浙江大學 中國大學慕課MOOC答案
- 《回歸分析》課件
- 心臟手術圍手術期
- 餐車經(jīng)營食品安全應急預案
- DB43T 876.11-2017 高標準農(nóng)田建設 第11部分:耕地地力評定技術規(guī)范
- 2024新版(外研版三起孫有中)三年級英語上冊單詞帶音標
- 2024至2030年中國漢白玉石雕數(shù)據(jù)監(jiān)測研究報告
- 三年級下冊混合計算題100道及答案
- DB12T 998-2020 殯葬服務機構消毒衛(wèi)生規(guī)范
- 廣東省廣州市五校2023-2024學年高一下學期期末聯(lián)考化學試卷
- 2024年天津高考數(shù)學真題試題(原卷版+含解析)
評論
0/150
提交評論