武曉雪 張飛航 昝鷺鷥 侯耀林
摘要:在現(xiàn)在的機電自動化產(chǎn)品中,控制系統(tǒng)大多是單片機。對于一些簡單的機電傳動系統(tǒng)或是機電一體化設(shè)備,往往采用的是一個單片機作為主控板,配合動力元件,如:舵機、直流電機、步進電機、伺服電機等。帶動機械元件,如:連桿,絲杠,光軸、齒輪、凸輪等運動,通過這些機械元件運動的相互配合完成所期望的運動。而對于一些復(fù)雜的機電傳動系統(tǒng)或是機電一體化設(shè)備,單一的單片機已經(jīng)不能滿足我們的需求,因為一個單片機上的資源,如I\O口,定時器,中斷源的數(shù)目有限。那么就要采用兩個或是多個單片機組成控制系統(tǒng)進行控制機械進行運動。采用兩個以上的單片機不等不考慮的問題就是單片機之間的通信。在常規(guī)的方法中往往采用的是雙機通信協(xié)議或是多機通訊協(xié)議。但是這些協(xié)議有些復(fù)雜,通過我們組的學(xué)習(xí)與實踐種提出了一中簡易多機通訊的思想,并且在試驗和實踐中得到了驗證。
關(guān)鍵字: 簡易的,多機通訊
正文:
在51單片機之間的通訊方式中的多機通訊,他們要遵循一些固定的思維方式。而我們組對于多機通訊方式都提出了一種簡單的算法思想。
單片機構(gòu)成的多機系統(tǒng)常采用總線型主從式結(jié)構(gòu)。所謂的主從式就是在數(shù)個單片機中,有一個是主機,其余的單片機都是從機,從機要服從主機的調(diào)動。51單片機的串口方式2和3適用于多機通訊。當(dāng)然多機通訊中的數(shù)據(jù)的傳輸途徑有很多種,例如:利用TTL電平進行通信,還有的就是RS485串行標(biāo)準(zhǔn)總線進行數(shù)據(jù)數(shù)據(jù)傳輸。目前在工程中多使用的是利用RS485串行標(biāo)準(zhǔn)總線進行數(shù)據(jù)傳輸?shù)?。因為采用RS485串行標(biāo)準(zhǔn)總線進行數(shù)據(jù)傳輸時,可以使傳輸?shù)木嚯x大大增加,傳輸?shù)倪^程中受到的干擾小,單片機之間數(shù)據(jù)傳輸?shù)目煽慷却蟠笤黾印?/p>
對于上述的多機通訊協(xié)議采用了較復(fù)雜的串口通訊方式2和3。多機通訊協(xié)議的基本思想是:通過程序給每個從機設(shè)置一個地址,通過這個地址就解決了在主從機信息交互的時候,在某一時刻,主機和哪個從機進行信息交互。在信息交互的時候,主機現(xiàn)在總線上發(fā)送地址幀,與該地址相同與主機進行響應(yīng),類似于主機與從機之間進行“握手”,并且該主機準(zhǔn)備接收主機的信息或是向主機發(fā)送信息。當(dāng)該從機與主機之間的信息交互完成的時候,便和其他從機一起準(zhǔn)備接收主機的下一條地址幀。而其他的從機就不響應(yīng)主機,并且不接收主機接下來的數(shù)據(jù)信息。并準(zhǔn)備接收主機發(fā)來的地址幀,看主機是否想與“我”進行信息交互。這個過程雖然很嚴謹,但是和繁瑣,即使從機完成的動作很少,但是主從機的程序卻很長,而且其過程的復(fù)雜程度不易讓人記住。所以我們組提出了一個簡易的多機通訊思想。
在常規(guī)的多機通訊協(xié)議中是依據(jù)程序員在程序中設(shè)置的從機地址來決定主機與那個從機進行信息交互的。設(shè)置地址的目的就是選擇那一個從機與主機進行信息進行握手。我們可以用命令字符來選擇從機。這里面的的命令字符是這個系統(tǒng)所要完成功能的一個代表。從機時刻通過串口與主機相連,接收主機發(fā)送的命令字符,并用條件語句進行判定,看主機所要做的動作是否是本從機能執(zhí)行的動作,如果不是,根據(jù)條件語句的特性,從機自然會保持靜默,不做動作。若是該從機能執(zhí)行的動作,那么就說明滿足條件語句中的條件,接下來就是執(zhí)行條件語句中的內(nèi)容,執(zhí)行完畢的時候,先向主機通過串口發(fā)送一個字符,表示動作已經(jīng)執(zhí)行完畢,該從機便準(zhǔn)備接收主機的下一個命令字符。主機當(dāng)接收到從機發(fā)過來的字符的時候,就可以準(zhǔn)備發(fā)送下一條命令字符了。(這個過程通過條件語句就可以完成)。
我們組的這個簡易的單片機多機通訊較常規(guī)的多機通訊協(xié)議來講,省去了給從機設(shè)置地址和根據(jù)地址幀的內(nèi)容對從機進行相應(yīng)的調(diào)整。所以我們組提出的這個基于51單片機的多機通訊思想過程簡單,調(diào)試過程不復(fù)雜,最重要的是方便讓人記住,在對于一些要求簡單,功能多的系統(tǒng)或是工程,可以采用這種簡易的思想來減輕程序員的工作量和產(chǎn)品的設(shè)計制作周期。
參考文獻:
[1].溫偉強, 梁浩源, 周敬泉. 實現(xiàn)PC機與多臺單片機實時通訊的新方法[J]. 計算機應(yīng)用, 1997(1):39-41.
[2].韓淑玲, 魯昆生. 從機可主呼的MCS—51單片機多機通信[J]. 工業(yè)和信息化教育, 1994(1):50-52.
[3].韓淑玲, 魯昆生. 增強MCS-51單片機多機通信的功能[J]. 電子技術(shù)應(yīng)用, 1993(3):21-23.