計算機控制智能小車的軟件設計

MOV B,#100 MOV A,B MOV A,#1
MOV B,#100 MOV B,#10 MUL AB
DIV AB DIV AB MOV 3CH,A
MOV 3EH,A MOV 3DH,A MOV A,3EH
來進行換存儲,同時送到顯示部分進行顯示。
2.1.5 下位機查詢、發送數據和接收數據程序設計
在軟件設計時一定要注意單片機與PC之間應該遵守相同的協議,其主要包括波特率、傳輸幀格式、校驗位等。除些之外,如果要實現PC機與單片機的通信,PC機還應該向單片機發送欲尋單片機的編碼,而單片機中要編寫地址識別程序段。本文的通信協議約定如下:1)波特率:1200B/S;2)幀格式:1位起始位,8位數據位,1位停止位,無奇偶校驗;3)傳送方式:PC機采用查詢方式收發數據,51單片機用中斷方式接收數據,查詢方式發送數據;4)數據長度:1字節;校驗方式:累加和校驗;握手方式:軟件握手。

下位機通信程序流程圖如圖6所示。本設計實現一個簡單的通信過程,它是由上位機控制下位機(智能小車)運行,即由上位機發送不同的通信信號協議代碼(如表1所示),下位機接收到相對應運行通信信號協議代碼后下位機程序執行相對應的運行程。
2.2 系統的上位機程序設計
上位機通信部分控制的上位機軟件采用VisualC++(簡稱VC)編程,上位機設計需要提供一個控制界面,再通過簡稱VC編程,而使用VC具有強大功能的通信控件MSCOMM,該控件可對串口狀態及串口通信的信息格式和協議進行設置,直接利用PC機的串口發送數據。為實現單片機與PC機的可靠通信,須保證雙方具有相同的數據格式和波特率。而上位機與下位機通過協定的特定通信協議進行通信。


3 結論
計算機控制智能小車,本文在軟件方面基本能夠實現設計任務的要求,能夠從起點沿引導線行駛到終點,并在到達終點時能夠自動停止行駛;在行駛的過程中能檢測到鐵片且發出聲光提示,然后繼續行駛;同時能實時交替顯示檢測到鐵片的個數、行駛的距離和行駛時間;且在停車時能交替顯示總程檢測到鐵片的個數、行駛的距離和行駛時間。本設計的擴展部分有:下位機可設置相應的控制開關來控制小車行駛的周期、時間長短、行駛距離和小車行駛轉彎的角度等;上位機部分可設置時間顯示、檢測到鐵片的個數、行駛的距離和行駛時間等的控制顯示界面窗口。
評論