国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種自動完成嵌入式軟件庫的挑選與特化的實現(xiàn)方法

      文檔序號:10724597閱讀:272來源:國知局
      一種自動完成嵌入式軟件庫的挑選與特化的實現(xiàn)方法
      【專利摘要】一種自動完成嵌入式軟件庫的挑選、特化與修改的實現(xiàn)方法,從PCB設(shè)計軟件直接獲取電路圖特征文件或數(shù)據(jù),然后把它們導(dǎo)入軟件庫配置軟件;依據(jù)電路圖特征文件或數(shù)據(jù),由軟件庫配置軟件自動挑選出所用到的所有芯片或設(shè)備的相關(guān)程序組件,并經(jīng)過智能分析,推薦其它相關(guān)功能的程序組件供使用者進一步選擇;依據(jù)電路圖特征文件或數(shù)據(jù),由軟件庫配置軟件對挑選出來的程序組件自動進行特化與修改。由此生成一個特定應(yīng)用組件集合,供進一步處理。這種方法由計算機代替人工工作,既提高開發(fā)效率,減少出錯,而且把電路圖設(shè)計與軟件庫可視化設(shè)計合二為一,大大簡化了軟件庫配置軟件的設(shè)計。
      【專利說明】
      一種自動完成嵌入式軟件庫的挑選與特化的實現(xiàn)方法
      技術(shù)領(lǐng)域
      [0001]本發(fā)明涉及嵌入式軟件自動化設(shè)計領(lǐng)域,尤其涉及單片機軟件的自動化設(shè)計和技術(shù)實現(xiàn)。
      【背景技術(shù)】
      [0002]嵌入式系統(tǒng)是一種軟硬件結(jié)合緊密的專用的計算機系統(tǒng),它應(yīng)用于特定場合,其主要特點是可剪裁、可配置。為了提高嵌入式系統(tǒng)的開發(fā)效率,通常人們需要建立軟件庫,在應(yīng)用開發(fā)時可以直接調(diào)用所需的軟件組件。由于嵌入式系統(tǒng)可選用的CPU或MCU種類繁多,而且外圍的存儲、數(shù)據(jù)采集、控制、通訊等設(shè)備種類也是不計其數(shù),因此一個功能齊全的嵌入式軟件庫會顯得非常龐大。在具體調(diào)用軟件庫的時候,通常由人工挑選合適的軟件組件,然后對挑選出的組件進行特化(specialize)和修改(modify),以滿足具體應(yīng)用的需要。這個工作既關(guān)鍵又瑣碎,需要既懂硬件又懂軟件的高水平專業(yè)工程師來完成。人工方法不僅增加了開發(fā)成本,而且也容易出錯。另外,如果使用計算機輔助完成以上所述工作,需要增加許多可視化配置界面,這使計算機輔助軟件會顯得更加復(fù)雜。因此,找到一種簡便的、可替代人工的嵌入式軟件庫自動挑選、特化與修改的方法,顯得十分必要。

      【發(fā)明內(nèi)容】

      [0003]本發(fā)明的目的是提供一種簡便快捷的、由計算機自動完成的嵌入式軟件庫組件挑選、組件特化(specialize)與修改(modify)的實現(xiàn)方法。
      [0004]本發(fā)明的技術(shù)方案如下:
      第一步,從PCB設(shè)計軟件直接獲取電路圖特征文件或數(shù)據(jù),然后把電路圖特征文件或數(shù)據(jù)導(dǎo)入軟件庫配置軟件;
      電路圖特征文件或數(shù)據(jù)包含電路中用到的芯片或設(shè)備的型號以及反映電路連接關(guān)系的信息;
      芯片或設(shè)備型號以及電路網(wǎng)絡(luò)名稱等需要事先定義,不能沖突,使計算機能夠自動識別;
      第二步,依據(jù)電路圖特征文件或數(shù)據(jù),由軟件庫配置軟件自動挑選出所用到的所有芯片或設(shè)備的相關(guān)程序組件(如驅(qū)動程序),并經(jīng)過智能分析,推薦相關(guān)功能的程序組件供使用者進一步選擇;
      第三步,依據(jù)電路圖特征文件或數(shù)據(jù),由軟件庫配置軟件對上一步挑選出來的程序組件自動進行特化(specialize)與修改(modify),即確定參數(shù)或配置電路端口,以及修改部分軟件,以符合電路圖的要求和滿足特定應(yīng)用的需要;
      由此生成一個特定應(yīng)用組件集合,可供軟件庫配置軟件或使用者做進一步的處理。
      [0005]本發(fā)明的有益效果:
      1、嵌入式軟件庫的組件挑選、特化與修改,這個工作既關(guān)鍵又瑣碎,需要既懂硬件又懂軟件的高水平專業(yè)工程師來完成。本發(fā)明由計算機代替人工工作,既提高軟件開發(fā)效率,降低開發(fā)成本,縮短開發(fā)周期,而且也克服了人工容易出錯的缺陷,提高了產(chǎn)品的可靠性。
      [0006]2、本發(fā)明借用了 PCB設(shè)計軟件實現(xiàn)了編程可視化,把電路圖設(shè)計與軟件庫可視化設(shè)計合二為一,顯著提高了應(yīng)用效果,大大簡化了軟件庫配置軟件的設(shè)計。
      【附圖說明】
      [0007]圖1本發(fā)明的技術(shù)方案流程圖;
      圖2本發(fā)明的舉例之電路原理圖。
      【具體實施方式】
      [0008]以下我們結(jié)合附圖和實例對本發(fā)明做進一步闡述。
      [0009]一、本發(fā)明涉及的技術(shù)用語及定義
      1、PCB設(shè)計軟件
      本發(fā)明所指的PCB設(shè)計軟件,是指對外公開發(fā)行的收費或免費的、具有設(shè)計電路原理圖以及PCB圖等功能的專業(yè)工具軟件。例如,常用的有Protel 99SE,Altium Designer系列、Cardence OrCAD/SPB/PSD^Mentor PADS/EN/WG、CadSoft EAGLE等。
      [0010]2、電路圖特征文件或數(shù)據(jù)
      本發(fā)明所指的電路圖特征文件或數(shù)據(jù),是指從PCB設(shè)計軟件直接或間接導(dǎo)出、或者可以從電路圖(或PCB圖等)提取出來的、包含電路中用到的芯片或設(shè)備等元器件的詳細型號以及包含電路連接關(guān)系的文件或數(shù)據(jù)。
      [0011]最典型的電路圖特征文件是PCB設(shè)計軟件Protel99SE自動生成的尾綴為.NET的網(wǎng)絡(luò)表(Netlist)文件,它包含了電路原理圖中各種元器件的型號、編號和封裝等信息,也包含了元器件之間的電路連接關(guān)系,即電路網(wǎng)絡(luò)。這種網(wǎng)絡(luò)表文件采用文本格式,是生成PCB圖的基礎(chǔ),可直接為本發(fā)明所用。
      [0012]網(wǎng)絡(luò)表例如下:
      [
      Ul
      LQFP48
      STM32F103C8T6
      ]
      [
      U2
      S0-8
      AT24C64
      ]
      (
      GND
      U2-1
      U2-2
      U2-3U2-4
      )
      (
      RXDl
      Ul-31
      )
      (
      SCL
      Ul-42
      U2-6
      )
      (
      SDA
      Ul-43
      U2-5
      )
      (
      TXDl
      Ul-30
      )
      需要說明的是,出于計算機自動識別的需要,在設(shè)計電路圖時,必須采用一套事先規(guī)定好的電路圖符號集。這套符號集定義了各種元器件名稱和電路網(wǎng)絡(luò)名稱,這些名稱互不沖突,計算機可以準(zhǔn)確識別且不會產(chǎn)生歧義。芯片或設(shè)備等元器件名稱一般可以直接采用廠家的命名,而電路網(wǎng)絡(luò)命名則可以采用一些容易理解的符號,例如,MCU的串口收發(fā)端連線的電路網(wǎng)絡(luò)可命名為RXD、TXD,12C總線可用SDA、SCL表示。
      [0013]二、本發(fā)明的具體實施步驟
      步驟一,把電路圖特征文件或數(shù)據(jù)導(dǎo)入軟件庫配置軟件
      在電路圖設(shè)計完成之后,本發(fā)明的第一步工作是通過PCB設(shè)計軟件獲取電路圖特征文件或數(shù)據(jù),并把電路圖特征文件或數(shù)據(jù)導(dǎo)入軟件庫配置軟件。
      [0014]1、嵌入式軟件庫
      為了提高開發(fā)效率,軟件開發(fā)人員一般都會建立或引用軟件庫。嵌入式軟件庫通常由處理器(CPU或MCU)配置程序、周邊設(shè)備的驅(qū)動程序、常用庫函數(shù)等組成。它提取了嵌入式系統(tǒng)中通用的軟件部分,方便不同的應(yīng)用項目移植使用。這種方法稱為軟件復(fù)用。軟件復(fù)用是在軟件開發(fā)過程中避免重復(fù)勞動的解決方案。通過軟件復(fù)用,軟件開發(fā)不再采用一切從零開始的模式,而是在已有的工作的基礎(chǔ)上,充分利用過去積累的知識和經(jīng)驗。
      [0015]以TreeOS ComLib軟件構(gòu)件庫為例,它建立在TreeOS 1.0 MCU構(gòu)件化實時操作系統(tǒng)之上,內(nèi)容涵蓋了硬件抽象層、驅(qū)動程序、中間件以及用戶層。它主要包含:
      I多種MCU配置程序:如STC、AVR、STM32等;
      I 常用設(shè)備驅(qū)動程序:如Keyboard.c、RS232.c、I2C.c、PCF8563.c、24C64.c等組件; I常用的庫程序:如數(shù)學(xué)運算、字符轉(zhuǎn)換、界面顯示、數(shù)據(jù)存取等。
      [0016]這些由專家編寫的、經(jīng)過長期實踐檢驗的軟件組件,經(jīng)過特化和簡單修改就可以直接使用于不同的應(yīng)用,極大地提高了軟件開發(fā)效率。
      [0017]本發(fā)明的技術(shù)操作對象是嵌入式軟件庫,它們可以是已對外公開發(fā)行的軟件庫,也可以是個人或單位內(nèi)部使用的軟件庫。
      [0018]2、軟件庫配置軟件
      本發(fā)明的技術(shù)載體稱之為軟件庫配置軟件,它是軟件庫管理工具的一個組成部分,其功能是幫助開發(fā)工程師從軟件庫中挑選所需的軟件組件,并對組件進行特化和修改,以滿足特定應(yīng)用的要求。
      [0019]步驟二,挑選組件
      本發(fā)明的第二步工作是由軟件庫配置軟件依據(jù)電路圖特征文件或數(shù)據(jù)挑選適用的軟件組件。例如,附圖2是一個簡化的原理圖,結(jié)合TreeOS ComLib軟件構(gòu)件庫,其做法是:
      從電路圖特征文件或數(shù)據(jù)中獲知,應(yīng)用系統(tǒng)需用到以下設(shè)備:單片機STM32F103C8T6、串口 UART1、存儲芯片AT24C64、I2C總線。相應(yīng)地從軟件庫中挑出以下軟件組件:MCU(STM32F103C8T6)、RS232、AT24C64、I2C(注:這些組件包括.c程序文件和.h頭文件)。
      [0020]另外,輔助設(shè)計軟件經(jīng)過智能分析,還會列出一些相關(guān)的組件,供使用者選擇是否使用:例如RS485、E2PR0M等。
      [0021 ]步驟三,組件的特化與修改
      本發(fā)明的第三步工作是對挑選出來的軟件組件自動進行特化與修改,即確定參數(shù)或配置電路端口,以及修改部分軟件,以符合電路圖的要求和滿足特定應(yīng)用的需要。例如,對于I2C總線組件,需要配置其總線端口,即修改I2C.h頭文件中的相關(guān)宏定義。
      [0022]軟件組件特化例:
      Sdefine I2C_SCL_HGP10B_>BSRR= GP10_Pin_6
      Sdefine I2C_SCL_LGP10B_>BRR = GP10_Pin_6
      Sdefine I2C_SDA_HGP10B_>BSRR = GP10_Pin_7
      Sdefine I2C_SDA_LGP10B_>BRR = GP10_Pin_7
      Sdefine I2C_SDA_read(GP10B_>IDR & GP10_Pin_7)
      另外,I2C.c文件中,i2c_init函數(shù)也需要修改,以適配電路圖中指定的1 口。
      [0023]軟件組件修改例: void i2c_init(void)
      {
      GP1_InitTypeDef GP1_InitStructure;
      //使能時鐘
      RCC_APB2PeriphC1ckCmd(RCC_APB2Periph_GP1B, ENABLE);
      //1口配置:SCL and SDAGP1_InitStructure.GP10_Pin = GP10_Pin_6;
      GP1_InitStructure.GP10_Speed = GP10_Speed_50MHz;
      GP1_InitStructure.GP10_Mode = GP10_Mode_0ut_0D; GP1_InitStructure.GP1_Pin = GP10_Pin_7;GP1—InitStructure.GP1—Speed = GP1—Speed—50MHz;
      GP1—InitStructure.GP1—Mode = GP1—Mode—Out—OD;
      GP1—Init(GP1B, &GP1—InitStructure);
      I2C_SDA_H;
      I2C_SCL_H;
      }
      三、本發(fā)明所述的對嵌入式軟件庫的挑選、特化與修改實現(xiàn)自動化的技術(shù),可大大提高開發(fā)效率,并使嵌入式編程更加智能化。該技術(shù)已應(yīng)用于TreeOS ComLib軟件構(gòu)件庫,并成功應(yīng)用在多個單片機應(yīng)用項目上。實踐表明,利用該軟件庫結(jié)合本發(fā)明技術(shù),絕大多數(shù)應(yīng)用項目可以實現(xiàn)70%以上的自動化編程。
      【主權(quán)項】
      1.一種自動完成嵌入式軟件庫的挑選與特化的實現(xiàn)方法,其特征在于,包括以下步驟: 第一步,從PCB設(shè)計軟件直接獲取電路圖特征文件或數(shù)據(jù),然后把電路圖特征文件或數(shù)據(jù)導(dǎo)入軟件庫配置軟件; 第二步,依據(jù)電路圖特征文件或數(shù)據(jù),由軟件庫配置軟件自動挑選出所用到的所有芯片或設(shè)備的相關(guān)程序組件(如驅(qū)動程序),并經(jīng)過智能分析,推薦相關(guān)功能的程序組件供使用者進一步選擇; 第三步,依據(jù)電路圖特征文件或數(shù)據(jù),由軟件庫配置軟件對上一步挑選出來的程序組件自動進行特化(specialize)與修改(modify),即確定參數(shù)或配置電路端口,以及修改部分軟件,以符合電路圖的要求和滿足特定應(yīng)用的需要; 由此生成一個特定應(yīng)用組件集合,可供軟件庫配置軟件或使用者做進一步的處理。2.根據(jù)權(quán)利要求1所述的方法,其特征在于:所述的電路圖特征文件或數(shù)據(jù)包含電路中用到的芯片或設(shè)備的型號以及反映電路連接關(guān)系的信息。3.根據(jù)權(quán)利要求1或2所述的方法,其特征在于:所述的芯片或設(shè)備型號以及電路網(wǎng)絡(luò)名稱等需要事先定義,不能沖突,使計算機能夠自動識別。4.根據(jù)權(quán)利要求1或2所述的方法,其特征在于:所述方法的技術(shù)操作對象是嵌入式軟件庫,它們是已公開發(fā)行的軟件庫或個人、單位內(nèi)部使用的軟件庫。
      【文檔編號】G06F9/44GK106095459SQ201610447537
      【公開日】2016年11月9日
      【申請日】2016年6月21日
      【發(fā)明人】林添孝
      【申請人】林添孝
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1