資源描述:
《基于python的嵌入式開發(fā)工具的設(shè)計(jì)與實(shí)現(xiàn)》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在學(xué)術(shù)論文-天天文庫。
1、AthesissubmittedtoZhengzhouUniversityforthedegreeofMasterDesignandImplementationofEmbeddedDevelopmentTool·-chainbasedonPythonByFanchaoMengSupervisor:Prof.HuiyingYeJ1■■●一CircuitandSystemInformationandEngineeringSchoolMay2014原創(chuàng)性聲明本人鄭重聲明:所呈交的學(xué)位論文,是本人在導(dǎo)師的指導(dǎo)下,獨(dú)立進(jìn)行研究所取得的成果。除文中已經(jīng)注明引用的內(nèi)容外
2、,本論文不包含任何其他個(gè)人或集體已經(jīng)發(fā)表或撰寫過的科研成果。對本論文的研究作出重要貢獻(xiàn)的個(gè)人和集體,均己在文中以明確方式標(biāo)明。本聲明的法律責(zé)任由本人承擔(dān)。學(xué)位論文作者:盂勻乏起日期:沁(斗.口多.加學(xué)位論文使用授權(quán)聲明本人在導(dǎo)師指導(dǎo)下完成的論文及相關(guān)的職務(wù)作品,知識產(chǎn)權(quán)歸屬鄭州大學(xué)。根據(jù)鄭州大學(xué)有關(guān)保留、使用學(xué)位論文的規(guī)定,同意學(xué)校保留或向國家有關(guān)部門或機(jī)構(gòu)送交論文的復(fù)印件和電子版,允許論文被查閱和借閱;本人授權(quán)鄭州大學(xué)可以將本學(xué)位論文的全部或部分編入有關(guān)數(shù)據(jù)庫進(jìn)行檢索,可以采用影印、縮印或者其他復(fù)制手段保存論文和匯編本學(xué)位論文。本人離校后發(fā)表、使用學(xué)位論
3、文或與該學(xué)位論文直接相關(guān)的學(xué)術(shù)論文或成果時(shí),第一署名單位仍然為鄭州大學(xué)。保密論文在解密后應(yīng)遵守此規(guī)定。學(xué)位論文作者:日期:如/q.秒鄉(xiāng).≯口,N、弋·v,tt摘要現(xiàn)今的嵌入式微控制器開發(fā)工具普遍存在開發(fā)流程繁瑣、功能單一、價(jià)格昂貴、缺乏諸如代碼智能補(bǔ)全等特性的問題。因此,研究了現(xiàn)有嵌入式設(shè)備使用的編譯器,集成開發(fā)環(huán)境等的功能及其設(shè)計(jì)方法,并針對現(xiàn)存編譯器,集成開發(fā)環(huán)境的不足,設(shè)計(jì)并實(shí)現(xiàn)了一種輕量級編程語言DragonEgg(下文中簡稱DE語言)以及與此相配套的仿真用的虛擬機(jī),一套為C語言提供面向?qū)ο笾С值目蚣?下文中簡稱OOC框架),用于編寫代碼的集成開發(fā)
4、環(huán)境DragonBreathe(下文中簡稱DB集成開發(fā)環(huán)境)。這些構(gòu)成了一套簡易的嵌入式設(shè)備開發(fā)工具鏈。針對嵌入式開發(fā)工具支持的編程語言單一的問題,設(shè)計(jì)了DE編程語言。在設(shè)計(jì)和實(shí)現(xiàn)這一語言編譯器的過程中,研究了詞法解析,語法解析,語義解析的相關(guān)算法,總結(jié)歸納了arm公司cortex.m系列處理器的匯編指令,同時(shí)還是先了與之配套的虛擬機(jī)以方便在x86平臺進(jìn)行軟件仿真。編譯器和虛擬機(jī)的實(shí)現(xiàn)完全使用Python語言,這降低了代碼的復(fù)雜度,提升了代碼的可讀性和可維護(hù)性。針對現(xiàn)有嵌入式C語言編程抽象能力不足的問題,分析了C++現(xiàn)有的對象模型,針對C語言的特點(diǎn)設(shè)計(jì)了一
5、套新的對象模型,并利用現(xiàn)代C語言編譯器的元編程技巧和宏特性,開發(fā)了OOC框架,提升了嵌入式C語言開發(fā)的抽象能力。最后,利用Python語言的PyQt圖形庫以及QScintilla編輯器庫實(shí)現(xiàn)了一套具備工程管理,代碼編輯并支持以圖形化方式調(diào)用編譯器,鏈接器完成編譯、下載等功能的DB集成開發(fā)環(huán)境。通過DB集成開發(fā)環(huán)境,將DE語言的編譯器以及OOC框架很好的結(jié)合了起來,在簡化了嵌入式開發(fā)的同時(shí),為嵌入式開發(fā)模式提供了多種選擇。關(guān)鍵字:嵌入式;編譯器;編輯器;集成開發(fā)環(huán)境;PythonAbstractInordertosimplifythecomplexityof
6、theprocessoftheembeddeddevicesdevelopmen_t,Istudiedthebuildingprocessofthecompilerandtheintegrateddevelopmentenvironmentfortheembeddeddevices.Aimingatimprovingthecurrentthedevelopmentprocessofembeddeddevices,Idesignonenewsimpleprogramminglanguageandimplementitscompilerforembeddedd
7、evicesanditsvirtualmachineforsimulatingonthex86computers,oneframeworkforwrit噸objectorientedcodeswithpureclanguageandoneintegrateddevelopmentenvironment.Allthesethingsconstituteonetoolchainforthedevelopmentofembeddeddevices.Thispaperwilldiscusstheprocessofimplementingallthesethings
8、indepthandthedifficultyencountere