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