新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于Lab Windows/CVI的PC與 DSP的串行通信

基于Lab Windows/CVI的PC與 DSP的串行通信

作者: 時(shí)間:2013-11-30 來源:網(wǎng)絡(luò) 收藏

  2.3 下位機(jī)DSP程序

  DSP的軟件開發(fā)可利用集成開發(fā)環(huán)境CCS3.1(Code Composer Studio),并采用C語言進(jìn)行編程。利用DSP的SCI模塊實(shí)現(xiàn)的主程序流程圖如圖4所示。DSP的程序設(shè)計(jì)可采用查詢法或中斷法來進(jìn)行數(shù)據(jù)的收發(fā),這里采用中斷方式接收數(shù)據(jù),而用查詢方式發(fā)送數(shù)據(jù)。DSP收到PC機(jī)發(fā)送來的數(shù)據(jù)時(shí),便轉(zhuǎn)入相應(yīng)的中斷子程序,其中斷服務(wù)子程序流程如圖5所示。其串口SCI初始化配置如下:




  void SCI_Init(void)

  {

  SciaRegs.SCICCR.a(chǎn)ll=0x0007;//字符長度8位

  SciaRegs.SCICTL1.a(chǎn)ll=0x0003;//使能發(fā)送和接收

  SciaRegs.SCICTL2.a(chǎn)ll=0x0002; //使能接收中斷,禁止發(fā)送中斷

  SciaRegs.SCIHBAUD=0x00;//置波特率高8位

  SciaRegs.SCIHBAUD=0xF3;//置波特率低8位

  SciaRegs.SCICTL1.a(chǎn)ll=0x23;//使SCI退出復(fù)位

  }

  DSP收到字符串”~010105F0019D”之后,首先進(jìn)行和校驗(yàn)。如果正確,則根據(jù)功能碼和參數(shù)碼判斷PC機(jī)發(fā)送的是否是修改參數(shù)P的命令。然后提取數(shù)據(jù)”05F0'’,將其轉(zhuǎn)換為十進(jìn)制數(shù)1520,再除以100即得到要設(shè)置的P值15.20;如果和校驗(yàn)出錯(cuò),則要求主機(jī)重發(fā)。若PC機(jī)發(fā)送的是上傳數(shù)據(jù)的命令,則將發(fā)送標(biāo)志變量send_flag置1,這樣,在主循環(huán)中,經(jīng)過判斷后,便可向PC機(jī)發(fā)送數(shù)據(jù)。

  3 結(jié)束語

  本文利用LabWindows/CVI開發(fā)平臺編寫了上位機(jī)PC程序,同時(shí)利用CCS3.1開發(fā)環(huán)境編寫下位機(jī)DSP程序,然后通過RS232總線進(jìn)行。利用這種方法設(shè)計(jì)的PC機(jī)與DSP的串行通信系統(tǒng)具有硬件結(jié)構(gòu)簡單、成本低、實(shí)現(xiàn)容易等特點(diǎn),并具有良好的可移植性和可擴(kuò)展性,能夠很好地滿足PC與DSP的通信需求。參考文獻(xiàn):

[1].TTLdatasheethttp://www.dzsc.com/datasheet/TTL_1174409.html.
[2].MAX3232datasheethttp://www.dzsc.com/datasheet/MAX3232_1107769.html.
[3].RS-232datasheethttp://www.dzsc.com/datasheet/RS-232_584855.html.
[4].RS232datasheethttp://www.dzsc.com/datasheet/RS232_585128.html.

pid控制相關(guān)文章:pid控制原理


c++相關(guān)文章:c++教程


通信相關(guān)文章:通信原理


pid控制器相關(guān)文章:pid控制器原理



上一頁 1 2 下一頁

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉