新聞中心

EEPW首頁 > 手機與無線通信 > 設計應用 > 基于雙DSP的并聯(lián)控制系統(tǒng)中串行通信的研究

基于雙DSP的并聯(lián)控制系統(tǒng)中串行通信的研究

作者: 時間:2010-01-07 來源:網(wǎng)絡 收藏

  上位機采用Visual Basic6.0(以下簡稱VB)語言編程實現(xiàn),利用VB 中提供的MSComm 控件可以實現(xiàn)PC 機與下位機的。利用MSComm 實現(xiàn)有兩種方法:一是事件驅(qū)動 方法,也就是OnComm 事件。當有數(shù)據(jù)到達端口或端口狀態(tài)發(fā)生改變或有錯誤產(chǎn)生時, 都將發(fā)生OnComm 事件。另一種就是查詢方式。查詢方式是通過周期性讀取緩沖區(qū)的信號來發(fā)現(xiàn)是否有事件發(fā)生并進行處理的方法。本設計中,發(fā)送采用查詢方式,接受采用事件驅(qū) 動方法。MSComm 控件初始化程序如下:

  MSComm1.CommPort = 1 '端口號'

  MSComm1.Settings = 38400,n,8,1

  '波特率38400bit/s,8 位數(shù)據(jù)位,無奇偶校驗,1 位停止位'

  MSComm1.InputLen = 0

  MSComm1.InBufferCount = 0 '清空接收緩沖區(qū)'

  MSComm1.OutBufferCount = 0 '清空'

  MSComm1.RThreshold = 1 '接收緩沖區(qū)或發(fā)送緩沖區(qū)中可以接收的字符數(shù)'

  MSComm1.PortOpen = True

  應實際要求,我們要在通信中同時傳輸數(shù)據(jù)和控制字符,所以數(shù)據(jù)傳輸同時采用ASCⅡ 碼和二進制兩種形式。這就需要在每次傳輸前改變MSComm1.InputMode 的屬性。

  TMS320F2812(SPI 通信中主處理器)在完成時鐘和中斷初始化后,對其SCI 寄存器進 行設置,使其通信協(xié)議和上位機一致。TMS320F2812 采用查詢方式給上位機發(fā)送數(shù)據(jù),中 斷方式接受上位機的數(shù)據(jù)。SCI 寄存器設置如下:

  SciaRegs.SCICCR.all=0x0007;

  /*一個停止位,禁止奇偶校驗,禁止自測,8 個字符*/

  SciaRegs.SCICTL1.all=0x0003;

  /*禁止接受錯誤中斷,復位,禁止休眠,開啟發(fā)送使能*/

  SciaRegs.SCICTL2.all=0x0002;

  /*開接受中斷,關發(fā)送中斷*/

  SciaRegs.SCIHBAUD=0x00;

  SciaRegs.SCILBAUD=0x79;

  /*波特率38400*/

  SciaRegs.SCICTL1.all=0x0023;

  /*開始使能SCIA*/

  5 結(jié)束語

  以上為解決兩個 之間以及 與PC 機之間的通信的軟硬件設計方案,當上位機 發(fā)送給定信息(位置信息)后,下位機接受到數(shù)據(jù)并傳輸給SPI 處理器,上位機和下位機界 面如圖6、圖7。



  系統(tǒng)的最大特點是根據(jù)實際需要,采用同時同步和異步兩通信方式。雙系統(tǒng)間的同步串 行通信,保證了雙系統(tǒng)運行的同步性;通過PC 機和上位機的異步通信,實現(xiàn)把 采集的一系列數(shù)據(jù)通過串口發(fā)送至PC 機,解決了DSP 存儲空間有限的問題,在PC 上可以很方便地對數(shù)據(jù)進行一些在DSP 上難以實現(xiàn)的處理,得到一些數(shù)據(jù)曲線等,效果直觀便捷。此系統(tǒng)已應用與某一開關磁阻電機電機并聯(lián)中,運行穩(wěn)定,通信性能良好。


上一頁 1 2 3 4 下一頁

評論


相關推薦

技術專區(qū)

關閉