chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

如何利用Lab Windows/CVI實現(xiàn)PC與DSP的串行通信功能

電子設計 ? 作者:電子設計 ? 2018-08-30 10:11 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

0 引言

隨著數(shù)字信號處理理論及微電子技術(shù)的高速發(fā)展,數(shù)字信號處理器(DSP)已廣泛應用于各個控制領域。而在控制系統(tǒng)中,通常會利用PC機與DSP之間的通信來對系統(tǒng)各個狀態(tài)/參數(shù)進行監(jiān)控。這種方法既利用了DSP功耗低、價格相對便宜、功能強大、抗干擾能力強、適宜于分布現(xiàn)場等優(yōu)點,同時又結(jié)合了PC機的軟硬件資源豐富、管理功能強大、人機界面友好、操控平臺穩(wěn)定可靠、數(shù)據(jù)通信方便快捷等系統(tǒng)功能優(yōu)勢。為此,本文擬通過使用比較廣泛的RS-232-C接口標準來研究PC與TMS320F2812 DSP之間的異步串行通信。

1 硬件設計

這里采用最簡單的三線連接方法,即PC機與DSP的發(fā)送、接收端彼此交叉連接,地線對應連接的方法。另外,由于DSP的串行通信接口SCI的兩個外部引腳SCITXD和SCIRXD的信號為TTL電平,與RS-232-C標準邏輯電平不一致,因此,要進行信號電平轉(zhuǎn)換后才能連接到PC機的串口接頭DB9,圖1所示是其硬件連接電路,其中電平轉(zhuǎn)換選用MAX3232芯片和若干電容來實現(xiàn),使用時只用其中的一對收/發(fā)單元。

2 軟件設計

2.1 通信協(xié)議

本設計將通信的幀格式設置為1個起始位,8個數(shù)據(jù)位,無奇偶校驗位,1個停止位。圖2所示為其數(shù)據(jù)幀格式,其傳輸波特率為9600 bps,采用全雙工通信方法。

PC機發(fā)送數(shù)據(jù)包的格式是:包頭+功能碼+參數(shù)碼+數(shù)據(jù)內(nèi)容+校驗和,本設計分別設置它們占1、2、2、4、4個字節(jié)。其中包頭是一個數(shù)據(jù)包開始的標志,這里設置為字符’~’;功能碼表示本次通信要完成的操作,其中”01”表示向DSP發(fā)送參數(shù),”02”表示讓DSP回傳數(shù)據(jù);參數(shù)碼表示通信傳送的數(shù)據(jù)類別,”01”表示要傳送P參數(shù),”02”表示要傳送I參數(shù),”03”表示要傳送D參數(shù)。假如通過PC機來設置DSP中數(shù)字PID控制程序的參數(shù)P為15.20,可以設定數(shù)據(jù)的量綱為1:100,那么就應當發(fā)送15.20×100=1520=05F0H,即依次發(fā)送字符’0’=30H、’5’=35H、’F’=46H、’0’=30H;且在前面發(fā)送的字符串為”~010105F0”。校驗和的計算是把從功能碼到數(shù)據(jù)內(nèi)容己經(jīng)轉(zhuǎn)換為ASCII碼的全部字節(jié)連續(xù)累加,其值為7EH+30H+31H+30H+31H+30H+35H+46H+30H=021BH,所以,PC向DSP發(fā)送完整的數(shù)據(jù)包為字符串”~010105F0021B”,其格式如圖3所示。

DSP上傳電流、電壓、頻率等實時數(shù)據(jù)的數(shù)據(jù)包格式與圖3類似,但它可以不使用功能碼或參數(shù)碼。如頻率數(shù)據(jù)包的包頭采用字符’*’,電流數(shù)據(jù)包的包頭采用字符’#’,以示區(qū)別即可。

2.2 上位機PC端程序

PC機主要完成三部分工作:一是對從機進行控制(比如修改參數(shù)),二是對從機采集的數(shù)據(jù)進行處理和數(shù)值計算,三是向用戶提供友好、美觀的儀器界面。以上功能均可依靠軟件實現(xiàn)。上位機軟件既可以使用Visual C++、VisualBasic等通用的開發(fā)工具,也可以使用LabWin-dows/CVI、LabView等專用于計算機測控領域的虛擬儀器軟件開發(fā)平臺。LabWindows/CVI是NI公司開發(fā)的32位、以ANSI C為核心的交互式虛擬儀器開發(fā)環(huán)境,它將功能強大的C語言與測試技術(shù)相結(jié)合,具有靈活的交互式編程方法和豐富的庫函數(shù),可為開發(fā)人員建立監(jiān)測、自動測試、數(shù)據(jù)采集、過程監(jiān)控等系統(tǒng)提供理想的軟件開發(fā)環(huán)境,是實現(xiàn)虛擬儀器及網(wǎng)絡化儀器的快速途徑。由于其簡單易學,故可大大縮短開發(fā)周期。LabWindows/CVI具有專門用于RS-232串行通信的函數(shù)庫,主要包括:串行口打開/關閉函數(shù)(OpenCom/OpenComConfig和CloseCom)、串行口輸入/輸出函數(shù)(ComRd、ComRdByte、ComWrt、ComWrtByte)、串行口控制函數(shù)(FlushInQ、FlushOutQ)、串行口狀態(tài)查詢函數(shù)(GetInQLen、GetOutQLen)、串行口事件處理函數(shù)(InstallCom-Callback)等5大類。以下是程序部分代碼:

主函數(shù):

PC機發(fā)送程序:




PC機要能向DSP發(fā)送控制命令,比如開機,關機,修改參數(shù)等,下面以修改PID控制參數(shù)P為例。

2.3 下位機DSP程序

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


如何利用Lab Windows/CVI實現(xiàn)PC與DSP的串行通信功能?

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退出復位

}

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

3 結(jié)束語

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


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • dsp
    dsp
    +關注

    關注

    560

    文章

    8238

    瀏覽量

    366245
  • PC
    PC
    +關注

    關注

    9

    文章

    2167

    瀏覽量

    159212
  • 串行通信
    +關注

    關注

    4

    文章

    607

    瀏覽量

    37103
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    單片機中的串口通訊串行同步通信串行異步通信

    串口是串行接口(serial port)的簡稱,也稱為串行通信接口或COM接口。串口通信是指采用串行通信
    發(fā)表于 01-15 08:06

    并行與串行的基本通信方式

    、異步串行通信方式:指通信的接收與發(fā)送設備使用各自的時鐘控制數(shù)據(jù)的發(fā)送和接收過程。其特點是:不要求發(fā)送雙方時鐘嚴格一致,容易實現(xiàn),設備開銷小,但每個字符要附加2~3位,用于起始位、校驗
    發(fā)表于 11-24 06:36

    DSP、FPGA之間SRIO通信的問題?

    目前在使用DSP和FPGA之間通過SRIO的SWRITE事務完成雙向數(shù)據(jù)通信,大多數(shù)情況下都正常,但是在我不停的給DSP進行燒寫程序時,會偶爾出錯,F(xiàn)PGA無法收到DSP下發(fā)的數(shù)據(jù)。偶
    發(fā)表于 11-15 16:22

    Xilinx FPGA串行通信協(xié)議介紹

    Xilinx FPGA因其高性能和低延遲,常用于串行通信接口設計。本文深入分析了Aurora、PCI Express和Serial RapidIO這三種在Xilinx系統(tǒng)設計中關鍵的串行通信
    的頭像 發(fā)表于 11-14 15:02 ?2496次閱讀
    Xilinx FPGA<b class='flag-5'>串行</b><b class='flag-5'>通信</b>協(xié)議介紹

    串行通信相關的基礎知識

    串行通信是電子設備中數(shù)據(jù)交換的基石。最常見的串行通信協(xié)議有UART,SPI,I2C等。
    的頭像 發(fā)表于 10-15 10:53 ?1958次閱讀
    <b class='flag-5'>串行</b><b class='flag-5'>通信</b>相關的基礎知識

    如何利用Trace機制實現(xiàn)LLCP預覽功能

    在藍牙協(xié)議棧開發(fā)過程中,有時需要預先知道 LLCP。本文將介紹如何利用 Trace 機制實現(xiàn) LLCP 預覽功能。
    的頭像 發(fā)表于 10-09 17:55 ?1904次閱讀

    串行通信和并行通信的區(qū)別是什么

    串行通信和并行通信是數(shù)據(jù)傳輸?shù)膬煞N基本方式,它們在數(shù)據(jù)傳輸方式、線路設計、傳輸效率、應用場景等方面存在顯著差異。以下是兩者的詳細對比: 一、數(shù)據(jù)傳輸方式 串行
    的頭像 發(fā)表于 07-22 10:55 ?2586次閱讀

    全面了解串行通信

    串行通信是一種數(shù)據(jù)傳輸方式,它將數(shù)據(jù)按 逐位順序 (bit by bit)在一條傳輸線上發(fā)送和接收,與并行通信(同時傳輸多位數(shù)據(jù))形成對比。以下是其核心概念、工作原理、特點及應用的詳細解釋: 一
    的頭像 發(fā)表于 07-19 14:13 ?1754次閱讀

    鴻蒙 PC 震撼登場!華為打破 Windows 壟斷!

    鴻蒙 PC 震撼登場!華為打破 Windows 壟斷! ##鴻蒙開發(fā)能力 ##HarmonyOS SDK應用服務##鴻蒙金融類應用 (金融理財# 家人們,華為帶著首款鴻蒙系統(tǒng)的PC殺瘋了!這可
    的頭像 發(fā)表于 07-11 18:15 ?1475次閱讀
    鴻蒙 <b class='flag-5'>PC</b> 震撼登場!華為打破 <b class='flag-5'>Windows</b> 壟斷!

    AMD攜手微軟共迎Windows 11 AI+ PC 生態(tài)新篇章

    運行70B大模型處理器平臺、微軟Windows 11 AI+ PC推出AI功能更新,到ISV加速開發(fā)本地化AI應用、OEM廠商全面布局AI+ PC產(chǎn)品……一個由硬件創(chuàng)新、軟件生態(tài)與行業(yè)
    的頭像 發(fā)表于 05-16 14:35 ?793次閱讀
    AMD攜手微軟共迎<b class='flag-5'>Windows</b> 11 AI+ <b class='flag-5'>PC</b> 生態(tài)新篇章

    如何在主板上實現(xiàn)CX3 UVC+CDC功能?

    我想在我的主板上實現(xiàn) CX3 UVC+CDC 功能。 現(xiàn)在,我嘗試使用論壇中的方法,我可以在我的 Windows PC 上看到 com 端口,但是我嘗試使用 Tera term 打開
    發(fā)表于 05-16 07:09

    有沒有辦法可靠地使 UMASS 連接在 Windows 10/11 下工作?

    LINUX 的 PC 連接時,設備也能按預期工作。 如果我們的設備連接到運行 Windows 10/11通過 USB2端口我們可以以串行模式與所有通道進行通信。 切換到 UMASS
    發(fā)表于 05-15 07:30

    微軟推出全新Surface Windows11 AI+ PC Surface Laptop 13 英寸和Surface Pro 12英寸

    作者:Brett Ostrum,微軟公司副總裁,負責 Surface 業(yè)務 Windows 11 AI+ PC 引領了個人計算的新浪潮,具有快速、持久、安全的特性,是專為解鎖 AI 體驗而設計的設備
    的頭像 發(fā)表于 05-08 15:52 ?1252次閱讀

    USB串行Windows驅(qū)動程序安裝程序無法下載是怎么回事?

    USB 串行 Windows 驅(qū)動程序安裝程序無法下載
    發(fā)表于 05-07 08:09

    串行通信接口SPI與QSPI的區(qū)別

    在嵌入式系統(tǒng)的世界里,選擇正確的通信技術(shù)可以對項目的性能和可擴展性產(chǎn)生重大影響。讓我們比較兩個流行的串行通信接口:SPI(串行外設接口)和QSPI(四路SPI)。
    的頭像 發(fā)表于 04-09 15:24 ?3190次閱讀
    <b class='flag-5'>串行</b><b class='flag-5'>通信</b>接口SPI與QSPI的區(qū)別