新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 基于單片機及VC++的步進電機控制系統(tǒng)設計

基于單片機及VC++的步進電機控制系統(tǒng)設計

作者: 時間:2013-02-18 來源:網絡 收藏

  3.4 串行通信電路

  在PC機內接有PC16550(和8250兼容)串行接口、EIA-TTL的電平轉換器和RS-232C連 接器,除鼠標占用一個串行口外,還留有兩個串行口給用戶,這就是COM1(地址3F8H-3FFH) 和COM2(地址2F8H-2FFH),通過這兩個口,可以連接串行通信設備,如、仿真機 等。由于的串行發(fā)送和接收線TXD和RXD是TTL電平,而PC的COM1或COM2的 RS-232C連接器(D型9針插座)是EIA電平,因此需加接MAX232芯片,通過串行電 纜線和PC相連接。本文所設計的串行通信電路如圖4所示。


  3.5 下位機顯示電路

  液晶采用顯示容量為2行16個字的1602液晶,1602采用標準的16腳接口,內部的字符發(fā) 生存儲器(CGROM)已經存儲了160個不同的點陣字符圖形,每一個字符都有一個固定的 代碼[5]。設計電路圖如圖5所示。


  4 軟件設計

  軟件設計可分為兩個部分:上位機軟件設計和下位機軟件設計。上位機軟件設計包括: 上位機控制環(huán)境設計、上位機通信程序設計以及上位機程序的封裝發(fā)布;下位機軟件設計包 括:鍵盤掃描程序、下位機通信程序、主驅動程序、測試部分程序、顯示部分程序。

  4.1 上位軟件設計

  Visual C++設計了一套基礎類庫(Microsoft Foundation Class Library, MFC), MFC把編 程規(guī)范中的大多數內容封裝成為各種類,使程序員從繁雜的編程中解脫出來[6]。根據系統(tǒng)設 計需要,設計一個基于對話框的應用程序即可,如圖6所示。


  為實現上位機與下位機通信,利用Microsoft提供的串行通信ActiveX控件。該控件的相 應文件是MSCOMM32.OCX。在基于對話框的程序中使用控件,需要進行以下幾方面操作: 拖動控件圖標到窗口上,創(chuàng)建控件ID。在對話框頭文件中聲明CMSComm類的變量及引用控 件類頭文件。創(chuàng)建CMSComm類的實例。建立控件事件響應代碼框架[7]。

  在電機狀態(tài)改變后,由下位機將代表各狀態(tài)的數據發(fā)送給上位機,上位機接收到后存入 一個數組內,根據此數組內容刷新各編輯框內容,以達到實時顯示的目的。此處共有五個數 據,放入rxdata數組中,分別代表勵磁狀態(tài)、轉動方向、速度、測試1計數、測試2計數。上 位機MSComm控件SetRThreshold屬性設置為5,則當下位機將五個數據發(fā)送完后,上位機立 即觸發(fā)OnComm事件,進行接收[8]。

陀螺儀相關文章:陀螺儀原理




評論


相關推薦

技術專區(qū)

關閉