久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 8470|回復: 5
收起左側

基于51單片機的多機通信系統設計文檔

[復制鏈接]
ID:335801 發表于 2018-5-22 16:41 | 顯示全部樓層 |閱讀模式
基于51單片機的多機通信系統,需要的可以了解下。

1 題設要求分析

2 硬件電路的設計

2.1 系統的組成

2.2 系統的工作原理

2.3 硬件電路原理圖設計

2.4 硬件電路的實現

3 軟件電路的設計

3.1 通信協議的設計

3.2 主機程序設計

3.3 從機程序設計

4 系統的調試與實現

4.1 從機模塊調試

4.2 LED顯示模塊調試

4.3電平轉換模塊功能調試

4.4主機模塊功能調試

4.5整體設計功能調試

1 題設要求分析

本小組的試驗項目如下:

一、任務:

設計實現多臺單片機系統之間的串行通信

二、基本要求(難度系數0.8):

(1)設計一個主從式多機通信系統,包含1臺主機和3臺從機,主機和從機全部為單片機;

(2)選擇合適總線接口芯片,正確連接主機和從機;

(3)編程實現分布式數據采集功能,主機可以獲取各分機當前AD轉換結果,并顯示。

三、發揮部分:

(1)完善通信功能。(根據完成情況加分,上限+0.2)

經過本小組成員對本課題認真討論先做出如下分析:

              對課題分析后本小組認為本次實驗的目的是就是應用單片的串口通信功能實現一個分布式采集系統。整個系統中包含一片主機和三片從機,主機的任務是實現對三片從機的AD轉換結果的采集并在數碼管上顯示之。這樣從硬件的角度上將整個系統分為兩個模塊——主機模塊和從機模塊。主機模塊中包含單片機模塊、led數碼管顯示子模塊和串口電平轉換子模塊,從機模塊則包括單片機子模塊、AD轉換子模塊和串口電平轉換子模塊。就本次試驗而言硬件電路的設計難點在于串口電平轉換芯片的選擇及其連接,而軟件的設計難點在于串口通信協議的制定及相關程序的編寫。

實現多機通信方案的實現。不同于雙機通信多機通信系統中需要識別通信信息發出者或是接受者是誰。經過查閱資料發現在大多數的多機通信系統中都是才采用地址識別的方法實現的。所謂地址識別方法就是在發送或接受信息前先發送和校驗地址幀。就本項目而言,先要對通信系統中的每臺機器分配一個唯一的地址作為識別信息。具體的識別過程如下:



    • 首先,從機處于只接收地址幀的狀態;
    • 主機發送一幀地址信息;
    • 從機接受到地址幀后,將本機地址與地址幀中的地址進行比較,如果地址相同準備接受數據,否則丟棄當前幀,依然處于只接受地址幀的狀態;
    • 主機發送數據幀,相應的從機接受數據,數據傳送完畢后,從機繼續回到只接受地址幀的狀態,在這個過程中其他從機不受影響;
    • 當主機需要與其他從機進行數據傳輸時,可以再次發送地址幀呼叫從機,重復這一過程[1]

對于本題而言可通過此過程實現主機對從機的絕對控制。這樣在主機中編寫一個循環程序就可以實現對三臺從機的AD轉換結果的不停采集。至于地址幀與數據幀的區別則可通過串口工作方式三下的第九位的置1或置0來實現。在完成通信的基礎上,再將采集到的三路結果分別用兩個led數碼管顯示即可試驗預期目的。


2 硬件電路的設計
2.1 系統的組成

根據項目分析可知硬件電分為主機模塊和從機模塊。主機模塊中包含單片機子模塊、led數碼管顯示子模塊和串口電平轉換子模塊,從機模塊則包括單片機子模塊、AD轉換子模塊和串口電平轉換子模塊。在主模塊中由AT89S51單片機擔任主機,六個led數碼管擔任顯示設備和一片MAX485擔任串口的電平轉換。在整個主機系統中有三個從機模塊三個從機模塊結構一樣,有一片AT89S51單片機擔任從機外接一片ADC0809轉換芯片和一片MAX485擔任串口的電平轉換。串口采用單工及異步通信方式。整個硬件結構原如圖1所示。

圖 1  系統結構原理圖
2.2 系統的工作原理

              主機AT89S51編程可實現循環訪問個從機,當從機接受主機訪問后啟動AD轉換設備ADC0809對外部模擬信號進行轉換。當從機獲得轉換結果后通過串口將其發送到主機,主機接受到轉換結果后再將其發送到相應的led數碼管顯示。

2.3 硬件電路原理圖設計

(1)led數碼管顯示電路              led數碼管顯示電路如圖2所示顯示子模塊由六個數碼管和相應的啟動芯片構成。其中每路通道的采集值用量為數碼管顯示。為了節約單片機的I/O口本題的數碼管采用MAX7219芯片。給芯片的優點在于可完成電路的刷新。MAX7219芯片的SEG A-SEG DP為數碼管段碼接口,DIG0-DIG7為位碼接口,CLK、DIN、LOAD分別與單片機P1.0、P1.1、P1.2連接。單片機通過串行的方式將要顯示的數據通過CLK、DIN、LOAD三個接口送入相應的顯示寄存器內,MAX7219將自動完成對數碼管的刷新工作。具體的電路如圖2所示。

圖 2  led顯示電路

(2)串口電平轉換電路  串口電平轉換電路的電路圖如圖3所示:本實驗中采用MAX485的電平轉換芯片。MAX485是一種RS-485標準接口的電平轉換芯片。RS-485采用差分式半雙工通信方式,真正實現多點總線連接,具有傳輸距離遠可靠性高的特點。基于以上原因本小組選擇該芯片實現電平轉換。MAX485的1號引腳RO為接收端接單片RXD, 4號引腳DI為發送端接單片TXD, 2、3號引腳分別為發送接收使能端端接單片P1.3引腳。6、7號引腳總線接線口。

圖 3  電平轉換電路

(3)主機模塊電路

              根據設計要求繪制主機模塊電路圖如圖4所示。

圖 4  主機模塊電路圖

4)從機模塊電路

              根據設計要求繪制從機模塊電路圖如圖5所示。

圖 5 從機模塊電路圖
2.4 硬件電路的實現

              首先是主從機電路的實現。主機的電路的搭建采用主CPU板、鍵盤顯示接口板各一塊。照實驗原理圖將主CPU板的P0口接到鍵盤顯示接口板的位碼接口,P1口接到鍵盤顯示接口板的段碼的接口。從機的電路由CPU板和ADDA轉換板構成。

              其次是電平轉換電路的焊接。電平轉換的路的實現是通過自己搭建電路完成。電平轉換的電路主要有四塊MAX485和兩個100Ω電阻構成。四塊MAX485采用總線方式連接,每個芯片分別引出三個引腳用于單片的連接。

              最后將各個模塊的按照原理圖連接起來。

              
圖 6 硬件電路的連接

3 軟件電路的設計3.1 通信協議的設計

通信協議的設計的設計是本題的重點難點,本題通信協議主要是區別主機和從機。由于串口的方式2、3發送和接收都是11位其第九為可編程置位可以此作為區分地址幀與數據幀從而實現主機與從機,從機與從機的區別。通信協議同樣要規定相同通信速率。參考相關資料后編寫如下的通信協議。

  •      數據傳輸的雙方均使用9600kb/s的速率傳送數據,使用主從式通信,主機發送數據,從機接受數據,雙方在發送數據時使用查詢方式。
  •      雙機開始數據傳輸時,主機發送地址幀呼叫從機。
  •      各從機開始都處于只收地址幀狀態。接收到地址幀后,將接收到的地址內容和本機地址比較,如果地址相同,則向主機返回本機地址作為確認信息,并開始接收數據;如果不同,則繼續等待。
  •      主機在發送地址幀后等待,如果接收到的應答信息中的內容和所發地址幀的內容相同,就開始發送數據,如果不一致,主機將繼續發送地址幀。如多次應答仍無回應則認為出錯則主機跳出本次通信。
  •      從機在接收完數據后,將根據最后的校驗結果判斷數據接收是否正確,若校驗真確,則向主機發送2AH信號,同時點亮led燈半秒鐘,表示本次通信成功;若校驗錯誤,則發送F0H信號,表示接收數據錯誤,并請求從發。
  •      主機接收到2AH信號,則通信結束,否則主機將重新發送這組數據。

3.2 主機程序設計

              依據試驗要求及相應的通信協議現繪制如下的主機程序流程圖:

圖 7 主機程序流程圖

主機程序:
3.3 從機程序設計
從程序流程圖如下:
圖 8 從機模塊流程圖

從機程序:

4 系統的調試與實現

對本課題的設計思路清晰之后,我們接下來所需要做的工作就是依據我們的方案編程實現功能。本過程可以分為五個部分:從機模塊調試、 LED顯示模塊調試、電平轉換模塊功能調試、主機模塊功能調試、整體設計功能調試。

4.1 從機模塊調試

從機部分實現的功能是針對主機發送來的地址進行對照,如果是自己的從機地址,就會發送AD轉換結果。為了檢測此部分的功能是否能夠實現,我們借助串口測試軟件,發送預設的從機地址看看該從機是否會把AD轉換的結果發送來。此從機調試模塊分為兩個層次:1、用一個簡單的程序測試從機硬件部分是否能正常運行;2、在硬件良好的情況下測試編寫的從機部分代碼能否順利實現功能。

4.2 LED顯示模塊調試

該部分相比較而言簡單一點,其實也可以歸為主機模塊調試的一部分。LED功能就是用來顯示DA轉換的結果。連接好電路之后,用個小程序測試LED顯示功能良好的情況下顯示從機發送來的數據。此部分在主機模塊功能調試具體介紹。

4.3電平轉換模塊功能調試

此部分硬件電路多為我們自己焊接。包括4片MAX485轉換芯片組成的電平轉換電路。它們完成將TTL電平轉換為RS-485電平的功能。MAX485芯片的結構和引腳都非常簡單,內部含有一個驅動器和接收器。RO和DI端分別為接收器的輸出和驅動器的輸入端,與單片機連接時只需分別與單片機的RXD和TXD相連即可;/RE和DE端分別為接收和發送的使能端,當/RE為邏輯0時,器件處于接收狀態;當DE為邏輯1時,器件處于發送狀態,因為MAX485工作在半雙工狀態,所以只需用單片機的一個管腳控制這兩個引腳即可;A端和B端分別為接收和發送的差分信號端,當A引腳的電平高于B時,代表發送的數據為1;當A的電平低于B端時,代表發送的數據為0。在與單片機連接時接線非常簡單。只需要一個信號控制MAX485的接收和發送即可。同時將A和B端之間加匹配電阻,一般可選100Ω的電阻。由于經驗知識不足,我們匹配電阻選擇了一個阻值為10KΩ的電阻,造成芯片燒壞,此處應引起注意。

4.4主機模塊功能調試

當主機發送地址幀呼叫從機時從機將接收到的內容與自己的地址比較,如若相同從機會向主機發送主機所需要的數據。而主機接收到正確的數據,便會通過LED數碼管顯示出來,這樣便會實現我們預想的主機模塊功能。當然主機部分程序包含上面調試好的LED顯示模塊程序。此處將從機送來的數值通過調用LED顯示模塊子程序顯示出來。LED顯示模塊分為三個區域,從機0、從機1、從機2分別占用2個顯示管。

4.5整體設計功能調試

各個模塊程序功能調試好之后,將他們各就各位。但此時我們又遇到一個難題:從機送給主機的數據在經MAX485傳遞給主機時讀出來的不是理想的結果,后經過示波器查看輸出波形,經多次調試,將主機與從機時序調整一致才得以在主機收到從機發送來的數據。
5 總結與體會

為期一個禮拜的單片機設計就這么快的結束了,在這短暫的一個星期里我們學到了很多很多。我們在課堂上掌握的僅僅是書面的理論知識,如何去鍛煉我們的實踐能力,如何把我們所學的專業基礎課理論知識運用到實踐中去呢?我想做此類的設計就為我們提供了良好的實踐平臺。

在做本次設計的過程中,我感觸最深的當屬查閱大量的資料,無論是課本上的還是網上的我們都學習了不少,從中也借鑒了別人的思想,開闊了自己的思路。做單片機設計,對設計者對軟硬件的理解和掌握的要求比較高。在設計程序之前,設計者必學對所用單片機的內部結構有一個系統的了解,知道該單片機內有哪些資源;要有一個清晰的思路和一個完整的的軟件流程圖;在設計程序時,不能妄想一次就將整個程序設計好,反復修改、不斷改進是程序設計的必經之路;要養成注釋程序的好習慣,一個程序的完美與否不僅僅是實現功能,而應該讓人一看就能明白你的思路,這樣也為資料的保存和交流提供了方便;在設計過程中遇到問題是很正常的,但我們應該將每次遇到的問題記錄下來,并分析清楚,以免下次再碰到同樣的問題。我們在實驗中就遇到了一系列問題,比如剛剛開始時硬件電路的連接,針對MAX485芯片匹配電阻的選擇,從機與主機握手的過程等等,在大家仔細的思考和老師同學的幫助下順利解決。


以上圖文的Word格式文檔下載(內容和本網頁上的一模一樣,方便大家保存):
基于51單片機的多機通信系統.doc (616 KB, 下載次數: 71)
回復

使用道具 舉報

ID:506281 發表于 2019-4-9 10:25 | 顯示全部樓層
厲害啦
回復

使用道具 舉報

ID:663771 發表于 2019-12-14 14:50 | 顯示全部樓層
??? 不錯不錯
回復

使用道具 舉報

ID:727576 發表于 2020-4-12 15:52 | 顯示全部樓層
樓主可以發我一下代碼嗎?我設計就是和這個差不多,代碼沒啥思路
回復

使用道具 舉報

ID:1006482 發表于 2022-2-23 19:48 | 顯示全部樓層
我的是基于嵌入式多機通信系統的設計,因為嵌入式的核心是單片機,所以我可以寫成單片機的通信系統設計嗎,有沒有大佬可以指導指導的?

回復

使用道具 舉報

ID:1006482 發表于 2022-2-23 19:49 | 顯示全部樓層
lx1 發表于 2020-4-12 15:52
樓主可以發我一下代碼嗎?我設計就是和這個差不多,代碼沒啥思路

師兄你是什么專業的

回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 一级毛片免费 | 亚洲三区在线观看 | 男人天堂99 | 狠狠狠干| 亚洲精品视频在线观看视频 | 在线观看精品视频网站 | 欧美一区二区三区在线观看 | 九九综合九九 | 黄色网页在线 | 欧美国产精品一区二区 | 亚洲国产精品一区二区久久 | 亚洲一区日韩 | 日韩亚洲视频在线 | 99欧美精品| 久久成人国产精品 | 国产一区二区三区四区在线观看 | 午夜激情视频 | 国产精品成人一区二区三区吃奶 | 精品久久久久一区二区国产 | 精品在线免费看 | 久久中文视频 | 国产一级在线 | 久久久久久久久99 | 欧美久久久久久 | 欧洲妇女成人淫片aaa视频 | 亚洲色图综合 | 欧美精品一区二区在线观看 | 国产亚洲一区二区三区在线 | 欧美毛片免费观看 | 97久久精品午夜一区二区 | 国产精品a久久久久 | 久久国内精品 | 欧美日韩一区二区三区在线观看 | 国产精品成av人在线视午夜片 | 亚洲视频二区 | 成人av久久| 欧美一区二区三区视频 | 黄色在线免费观看视频网站 | 国产精品1区2区3区 男女啪啪高潮无遮挡免费动态 | 久久精品免费一区二区 | 午夜亚洲|