999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

MATLAB嵌入式軟件開發(fā)

2020-02-02 03:24:56陳高輝張劍鋒林瀟付杰霖
電子技術(shù)與軟件工程 2020年17期
關(guān)鍵詞:環(huán)境模型

陳高輝 張劍鋒 林瀟 付杰霖

(吉利汽車研究院(寧波)有限公司 浙江省寧波市 315336)

DSP(Digital Signal Processing)是一門以數(shù)字方式表示并處理模擬信號的理論和技術(shù),它涉及許多學(xué)科并且廣泛應(yīng)用于許多領(lǐng)域。傳統(tǒng)的DSP 軟件開發(fā)需要開發(fā)者熟悉硬件構(gòu)架、原理和算法,理解DSP 廠商提供的底層各類驅(qū)動(dòng)的接口,在編譯環(huán)境中逐行編輯代碼,程序開發(fā)周期長,算法難于實(shí)現(xiàn)。

本文介紹一種基于MATLAB 的嵌入式軟件開發(fā)方式,利用MATLAB 強(qiáng)大的建模仿真功能和豐富的數(shù)學(xué)函數(shù)庫,在Simulink平臺下搭建控制模型,編程過程采用圖形化編輯,只需要配置不同模塊的參數(shù)即可完成整個(gè)系統(tǒng)的建立,MATLAB 利用代碼生成工具可自動(dòng)生成目標(biāo)代碼。基于MATLAB 的嵌入式軟件開發(fā)是集概念設(shè)計(jì)、目標(biāo)代碼生成、仿真、調(diào)試和運(yùn)行于一體的快捷高效方式,使開發(fā)者徹底擺脫底層代碼的困擾,專注于應(yīng)用邏輯的實(shí)現(xiàn)、算法的研究和技術(shù)的突破。

1 開發(fā)工具

1.1 CCS簡介

CCS(Code Composer Studio,代碼調(diào)試器)是TI(Texas Instruments,德州儀器)推出的一套嵌入式軟件集成開發(fā)環(huán)境,可用于開發(fā)和調(diào)試基于TI 芯片的嵌入式軟件。它包含TI 器件系列的項(xiàng)目構(gòu)建環(huán)境、源代碼編輯器、編譯器、調(diào)試器、仿真器和實(shí)時(shí)操作系統(tǒng)等,支持TI 主流DSP 芯片及各類型軟件仿真器和硬件仿真器。在基于TI 的MCU 和DSP 嵌入式軟件開發(fā)過程中,CCS 是一款應(yīng)用十分廣泛的開發(fā)工具。

1.2 MATLAB簡介

MATLAB(MATrixLABoratory)是一款專業(yè)數(shù)學(xué)軟件。開發(fā)環(huán)境、數(shù)學(xué)函數(shù)庫、圖形處理系統(tǒng)、M 語言和應(yīng)用程序接口是MATLAB的五大構(gòu)成部分。MATLAB 是一個(gè)非常實(shí)用且功能強(qiáng)大的系統(tǒng),它將數(shù)值計(jì)算、圖形管理、程序開發(fā)等融為一體,在控制設(shè)計(jì)、信號分析與處理等領(lǐng)域有十分廣闊的應(yīng)用。

在嵌入式軟件開發(fā)過程中,使用MATLAB 的Simulink 工具進(jìn)行應(yīng)用程序開發(fā),能夠使開發(fā)者脫離底層硬件的束縛,專注于邏輯功能的實(shí)現(xiàn)。并且,Simulink 的圖形開發(fā)環(huán)境能夠提供更直觀的邏輯實(shí)現(xiàn)視圖,在Simulink 中直接調(diào)用對應(yīng)的功能模塊,大幅縮短了開發(fā)時(shí)間。

2 MATLAB與CCS聯(lián)合開發(fā)

MATLAB 與CCS 的聯(lián)合是基于MATLAB 應(yīng)用程序接口支持CCS 的IDE LINK。MATLAB 的代碼生成工具Embedded Coder在MATLAB 和CCS 的處理器之間提供了一種連接,可以利用MATLAB 強(qiáng)大的數(shù)值計(jì)算功能去控制一個(gè)信號處理應(yīng)用程序,也可以通過創(chuàng)建MATLAB 腳本文件或者調(diào)用函數(shù)文件驗(yàn)證需要在目標(biāo)芯片中執(zhí)行的算法。在MATLAB 中設(shè)計(jì)需求對象的控制模型,調(diào)用對應(yīng)的功能模塊,將生成的代碼導(dǎo)入CCS 進(jìn)行集成,具體實(shí)現(xiàn)方式如下。

圖1:目標(biāo)芯片參數(shù)配置

圖2:MATLAB 模型設(shè)計(jì)

2.1 環(huán)境參數(shù)配置

為了讓Embedded Coder 生成的目標(biāo)代碼移植到CCS 中能夠識別目標(biāo)板和仿真器,需要在CCS 中創(chuàng)建一個(gè).ccxml 格式的目標(biāo)配置文件,目標(biāo)芯片和仿真器型號在這個(gè)文件中選擇。應(yīng)用程序的編譯順序和鏈接規(guī)則需要在MATLAB 中指定,以保證生成的目標(biāo)代碼在CCS 或MATLAB 環(huán)境下都能夠執(zhí)行。在MATLAB 的命令窗口輸入xmakefilesetup,在XMakefile 用戶配置界面,配置子菜單編譯器、鏈接器、函數(shù)庫及工具路徑,完成上述參數(shù)配置后,即可完成MATLAB 和CCS 的無縫對接。

圖3:電機(jī)母線電流曲線

2.2 模型構(gòu)造與設(shè)計(jì)

在模型設(shè)計(jì)之前,需要根據(jù)硬件原理圖確定嵌入式應(yīng)用程序的處理器。Simulink 平臺中的工具箱Embedded Coder 只支持TI 的C2000,C5000,C6000 三個(gè)系列的部分芯片,目標(biāo)芯片須在這個(gè)范圍內(nèi)選擇。在Simulink 平臺下創(chuàng)建模型,將Target Preference 添加到模型中,在Target Preference 參數(shù)配置界面,可以選擇目標(biāo)芯片及系統(tǒng)時(shí)鐘,同時(shí)也可以完成芯片的內(nèi)存管理和外設(shè)配置。確定目標(biāo)芯片后,需要實(shí)現(xiàn)芯片的不同功能,TI 芯片的功能在MATLAB中以不同的模塊形式表現(xiàn),在建模過程中,將需要使用的模塊添加到模型中,根據(jù)應(yīng)用程序需要實(shí)現(xiàn)的功能配置各個(gè)模塊的參數(shù)。通過實(shí)線或CPU 內(nèi)部邏輯可以完成模塊間的連接。在建立復(fù)雜模型時(shí),可以嵌套子系統(tǒng),可以靈活實(shí)現(xiàn)不同的功能,而且使得系統(tǒng)的層級更清晰。目標(biāo)芯片參數(shù)配置如圖1所示。

2.3 生成目標(biāo)代碼

在系統(tǒng)模型設(shè)計(jì)完成后,直接編譯模型工程,代碼生成工具Embedded Coder 將在工程路徑下自動(dòng)生成工程的.cmd 文件、.c 文件和.h 文件。工程編譯完成后,可以在工程的當(dāng)前文件下查看已生成的目標(biāo)文件,MATLAB 生成的.c、.h 以及cmd 文件可以被導(dǎo)入到CCS 中集成,以生成最終的可執(zhí)行文件。

2.4 執(zhí)行和驗(yàn)證

Embedded Coder 生成的目標(biāo)代碼有兩種執(zhí)行方式。第一種方式是將這些代碼移植到CCS 中執(zhí)行。先在CCS 開發(fā)環(huán)境建立一個(gè)空白的軟件工程,將Simulink 生成的目標(biāo)文件(cmd、.c 及.h)移植到該空白工程中,在CCS 環(huán)境下編譯、調(diào)試和運(yùn)行。這種方式可以充分利用CCS 的集成開發(fā)環(huán)境進(jìn)行程序的調(diào)試,可以利用CCS 的變量窗口、反匯編窗口、斷點(diǎn)工具、內(nèi)存管理工具等實(shí)時(shí)調(diào)試MATLAB 生產(chǎn)的目標(biāo)代碼,非常方便開發(fā)者判斷程序的變量是否符合既定要求以及程序運(yùn)行結(jié)果的正確性,這種方式充分融合了MATLAB 生成目標(biāo)代碼的快捷性與CCS 調(diào)試程序的高效性。

第二種方式目標(biāo)代碼直接在MATLAB 環(huán)境下執(zhí)行,工程編譯完成后,連接仿真器,Simulink 自動(dòng)執(zhí)行已生成的目標(biāo)代碼,可以在硬件電路板上看到程序執(zhí)行的結(jié)果。這種方式程序的編輯、鏈接和執(zhí)行都是在MATLAB 環(huán)境下完成。程序開發(fā)過程中不需要啟動(dòng)CCS,在調(diào)試程序過程需要多次修改參數(shù)時(shí),可以避免每次修改參數(shù)后都需要將MATLAB 生成的目標(biāo)代碼移植到CCS 中的繁瑣過程。

3 電機(jī)驅(qū)動(dòng)應(yīng)用實(shí)例

3.1 模型設(shè)計(jì)

根據(jù)上文闡述,基于TMS320F28035 芯片,在MATLAB 中開發(fā)一個(gè)直流有刷電機(jī)驅(qū)動(dòng)程序,采用開環(huán)控制方式,在Simulink平臺下建立模型,采用正弦波激勵(lì)信號,通過PWM(Pulse With Module,脈沖寬度調(diào)制)控制電機(jī)輸入電壓的幅值,AD 模塊采集電機(jī)母線電流,通過CAN(Controller Area Network,控制器局域網(wǎng))將電機(jī)母線電流傳輸?shù)缴衔粰C(jī),通過上位機(jī)軟件實(shí)時(shí)監(jiān)測電機(jī)的電流曲線,如圖2所示。

3.2 運(yùn)行結(jié)果分析

通過仿真器連接硬件電路板,選擇在MATLAB 環(huán)境下執(zhí)行已設(shè)計(jì)的程序。程序執(zhí)行后,在MATLAB 工程的文件夾下可以看到生成的目標(biāo)代碼,檢測目標(biāo)板輸出的電壓,電壓波形的幅值、頻率及占空比符合設(shè)計(jì)目標(biāo)值,通過上位機(jī)軟件觀測電機(jī)的線電流曲線,如圖3所示,與輸入的正弦函數(shù)趨勢基本一致,幅值符合預(yù)期值。這充分說明了程序的正確性以及在MATLAB 環(huán)境下進(jìn)行嵌入式程序開發(fā)的可行性與可靠性。

4 結(jié)束語

基于MATLAB 的嵌入式應(yīng)用軟件開發(fā),充分體現(xiàn)了在Simulink 平臺下建模和生成代碼的快捷性和高可靠性。在搭建初始化環(huán)境后,建模過程只需配置不同功能模塊的參數(shù)即可完成程序設(shè)計(jì),大幅提高了編程的效率;系統(tǒng)設(shè)計(jì)采用圖形化編程,各個(gè)模塊、信號流之間的邏輯關(guān)系一目了然,便于理解,不容易出錯(cuò);在MATLAB 中建立目標(biāo)模型可以利用其強(qiáng)大的仿真功能幫助檢查系統(tǒng)的正確性,這是CCS 所不具備的優(yōu)點(diǎn)。

總之,在滿足一定的應(yīng)用環(huán)境下,MATLAB 與CCS 聯(lián)合編程進(jìn)行嵌入式系統(tǒng)開發(fā),是一種不同于傳統(tǒng)嵌入式軟件開發(fā)的高效可靠的編程方法。

猜你喜歡
環(huán)境模型
一半模型
長期鍛煉創(chuàng)造體內(nèi)抑癌環(huán)境
一種用于自主學(xué)習(xí)的虛擬仿真環(huán)境
重要模型『一線三等角』
重尾非線性自回歸模型自加權(quán)M-估計(jì)的漸近分布
孕期遠(yuǎn)離容易致畸的環(huán)境
不能改變環(huán)境,那就改變心境
環(huán)境
孕期遠(yuǎn)離容易致畸的環(huán)境
3D打印中的模型分割與打包
主站蜘蛛池模板: 久久精品国产999大香线焦| 国产一区二区三区夜色 | 国产日韩精品一区在线不卡| 亚洲女同一区二区| 天天视频在线91频| 强奷白丝美女在线观看| 欧美亚洲国产日韩电影在线| 免费国产小视频在线观看| 新SSS无码手机在线观看| 亚洲精品成人福利在线电影| 国产视频你懂得| 国产成人高清在线精品| 欧美成人综合在线| 国产永久在线观看| 99r在线精品视频在线播放 | 欧美日韩成人在线观看| 中文国产成人久久精品小说| 国产成人福利在线| 午夜电影在线观看国产1区| 丝袜亚洲综合| 91成人在线观看视频| 欧美成人综合视频| 亚洲av无码久久无遮挡| 亚洲高清国产拍精品26u| 亚洲精品色AV无码看| 亚洲一级色| 国产丝袜啪啪| 91精品人妻一区二区| 美女潮喷出白浆在线观看视频| 免费在线国产一区二区三区精品| 亚洲视屏在线观看| 免费看av在线网站网址| 亚洲大尺度在线| 日韩视频福利| 欧美午夜在线观看| 国产欧美高清| 香蕉蕉亚亚洲aav综合| 激情综合婷婷丁香五月尤物| 国产成人在线无码免费视频| 久久99国产视频| 亚洲美女高潮久久久久久久| 亚洲欧美人成电影在线观看| 精品色综合| 国产成人精品日本亚洲| 久操中文在线| 成人福利在线免费观看| 91成人在线免费视频| 制服丝袜国产精品| 国产一级二级在线观看| 久久精品人人做人人爽97| 中文字幕在线观| 国产啪在线91| 久久久久青草大香线综合精品| 成人午夜视频网站| 亚洲视频影院| 草逼视频国产| 国产一区二区人大臿蕉香蕉| 女同国产精品一区二区| 亚洲精品国产精品乱码不卞 | 国产精品视频观看裸模| 黄色网址手机国内免费在线观看| 亚洲色偷偷偷鲁综合| 99热这里只有精品久久免费| 99成人在线观看| 91av成人日本不卡三区| 国内精品一区二区在线观看| 日本伊人色综合网| 伊人久综合| 欧美国产日韩在线| 久久性视频| 亚洲αv毛片| 五月天福利视频| 亚洲精品无码高潮喷水A| 日韩免费视频播播| 中文无码精品A∨在线观看不卡| 亚洲日韩国产精品无码专区| 91亚洲精品国产自在现线| 国产女人在线| 国产成人精品第一区二区| 亚洲人成在线免费观看| 国产小视频a在线观看| 激情网址在线观看|