游標(biāo)磁尺的設(shè)計(jì)與實(shí)現(xiàn)
從界面圖中可以看到“父窗口”包含參數(shù)初始化和數(shù)據(jù)顯示兩個(gè)“子窗口”。參數(shù)初始化窗口主要負(fù)責(zé)設(shè)置端口、波特率、數(shù)據(jù)格式、和數(shù)據(jù)的接收方式;數(shù)據(jù)顯示窗口負(fù)責(zé)數(shù)據(jù)的處理和顯示。顯示平臺的使用在相應(yīng)的窗口中均有說明。沒有霍爾元件動作時(shí),顯示界面中的數(shù)據(jù)顯示區(qū)初始化顯示為…*hhCR>LF>。有霍爾元件動作時(shí),顯示界面實(shí)時(shí)顯示其動作的情況。該平臺使用簡單,極易操作。
4.1.3 MSComm控件的程序設(shè)計(jì)
Visual Basic設(shè)計(jì)串行通信程序時(shí)依然遵循四個(gè)主要步驟,分別是對象、屬性、事件和方法。因此,第一步是添加控件。由于Visual Basic的串行通信控件不在工具箱中,當(dāng)使用MSComm控件時(shí),首先要把它加入到工具箱中。添加步驟是:選擇“工程”菜單下的“部件…”子菜單,在彈出的“部件”對話框中,在“控件”選項(xiàng)卡屬性中選中“MicrosoftCommControl 6.0”復(fù)選框,然后單擊“確定”按鈕后,在工具箱中就出現(xiàn)了一個(gè)形似“電話”的圖標(biāo),它就是MSComm控件。在窗體中加載MSComm控件對象。第二步是為MSComm控件的屬性賦值。第三步利用OnComm事件程序來接收上位機(jī)發(fā)來的位置數(shù)據(jù)。由于篇幅限制,在此沒有給
出相關(guān)程序。
4.2 PIC單片機(jī)部分
單片機(jī)采用PIC系列單片機(jī)。該單片機(jī)具有指令集少、功耗低和驅(qū)動能力強(qiáng)等特點(diǎn)。單片機(jī)程序使用匯編語言編程,采用其內(nèi)部的異步串口(USART)進(jìn)行串行通信。由于該系統(tǒng)用于遠(yuǎn)距離,故串口通信采用的是的RS 485串口通信標(biāo)準(zhǔn),因此在單片機(jī)的串口端加了一個(gè)半雙工通信的MAX3471芯片。單片機(jī)接收到PC機(jī)發(fā)送來的波特率標(biāo)志值和自身設(shè)定的值比較,然后校正自身的波特率以和PC機(jī)的波特率相匹配。單片機(jī)除了校正自身波特率和發(fā)送相關(guān)信息程序,還要提供獲得霍爾元件動作情況以及位置值等重要程序。圖5是單片機(jī)匯編程序流程圖。為了提高顯示平臺接收數(shù)據(jù)的準(zhǔn)確性,單片機(jī)數(shù)據(jù)采用ASCII字符進(jìn)行傳送。
以下僅給出串行通信初始化程序代碼:
串行通信初始化程序?yàn)椋?p>
評論