C8051 F1 20與RS422息線的時鐘同步技術
引 言
由于指令的速度不斷加快,單片機在各個方面的性能大為提高,比如多個單片機之間的時鐘同步。Silicon Labs公司的C8051F系列單片機的執(zhí)行速度最高可以達到100MIPS,這使得更高精度的時鐘同步成為可能。時鐘同步是一個在多單片機相互配合時經(jīng)常遇到的問題,主要有兩種同步方式――絕對同步和相對同步。絕對同步是指各個控制器和一個標準的時間進行同步,比如北京時間、華盛頓時間等等;而相對時鐘同步是指各個單片機和一個相對穩(wěn)定的時鐘進行同步,與外界的時間沒有聯(lián)系。本文主要針對RS422總線組成的網(wǎng)絡的高精度時鐘同步問題,提出了一種相對時鐘同步解決方案。
1 整體框架結構
RS422網(wǎng)絡中,多個單片機的連接如圖1所示。這是一個典型的“一主多從”式結構:主單片機通過向從單片機發(fā)送命令,實現(xiàn)管理功能;從單片機主要執(zhí)行具體的功能,比如數(shù)據(jù)采集、D/A轉(zhuǎn)換輸出等。為了使多個單片機能夠同步工作,需要一種同步方式,所以從單片機不但要實現(xiàn)各自的具體功能,而且還要能夠進行多個單片機的時鐘同步。本方案設計了從單片機的幾種工作狀態(tài)。R和T分別表示R+、R-和T+、T-。
2 從單片機的狀態(tài)機
本文重點介紹系統(tǒng)時鐘同步功能的實現(xiàn),但是在實際應用過程中,該系統(tǒng)必定要實現(xiàn)其他的功能,比如數(shù)據(jù)采集、模擬量輸出等。主單片機的作用是控制從單片機工作,所以要使從單片機具有不同的工作狀態(tài)。本文設計了3種工作狀態(tài):準備態(tài)、時鐘同步態(tài)、工作態(tài)。3種工作狀態(tài)之間的相互轉(zhuǎn)換過程如圖2所示。圖中,①代表主單片機向從單片機發(fā)送“工作”命令;②代表主單片機向從單片機發(fā)送“時鐘同步”命令;③代表主單片機向從單片機發(fā)送“工作態(tài)向時鐘同步態(tài)轉(zhuǎn)換”命令;④代表主單片機向從單片機發(fā)送“時鐘同步態(tài)向工作態(tài)轉(zhuǎn)換”命令。
準備態(tài)是從單片機上電后的工作狀態(tài),當主單片機向某一從單片機發(fā)送“是否準備好”命令后,若從單片機回復“準備好”,則說明從設備已經(jīng)處于準備好的狀態(tài),可以向時鐘同步態(tài)和工作態(tài)進行轉(zhuǎn)換。如果從單片機處于工作態(tài),主單片機發(fā)送“工作態(tài)向時鐘同步態(tài)轉(zhuǎn)換”命令,則從時鐘進入時鐘同步態(tài);如果從單片機處于時鐘同步態(tài),主單片機發(fā)送“時鐘同步態(tài)向工作態(tài)轉(zhuǎn)換”命令,則從單片機由時鐘同步態(tài)轉(zhuǎn)換到工作態(tài)。
評論