資料介紹
引言
隨著電子產品功能日益增多、性能日益增強,低成本32位微處理器、多層PCB板被廣泛應用,軟件和開發團隊的規模隨之擴大,同時開發周期呈指數增長。因此,以往的開發方式越來越不適應項目開發的需要。目前,國內磁場檢測儀器主要集中應用在工業用低頻強磁場和通信用的高頻弱磁場測量上,而中頻強磁場測量仍是磁場測量領域的一個難題。基于嵌入式操作系統的中頻強磁場的測量系統開發中,涉及到高速硬件電路設計、多層PCB板布線、32位微處理器編程、上位機軟件編程等多項工作,因此,需要眾多開發人員協同開發。
通過長期的實踐發現,在項目開發中引入開源項目管理平臺Redmine、嵌入式操作系統μC/OS-II、仿真軟件Proteus和調試軟件Bus Hou nd,能夠有效地提升整個項目的協同開發能力和管理水平。采用協同開發管理模式,可以達到以下4方面的顯著效果:提高嵌入式軟件和硬件之間的協同開發效率;提高嵌入式軟件各模塊間的開發效率和開發質量;提高上位機和下位機軟件的開發效率和開發質量;有效提高整個項目協同開發的管理水平。
1 磁場檢測儀開發管理平臺
項目管理的好壞關系到項目開發質量的高低,同時,對開發效率和開發質量也將產生重大的影響。目前市場上,基于Web的開源項目管理軟件已經發展得很成熟,此類軟件在高校的教學和研究,以及中小企業的項目開發管理中,都得到了廣泛的應用。
現階段,在磁場檢測系統項目開發中,由于軟硬件的開發復雜,開發人員眾多且開發人員存在著開發能力參差不齊、流動性大等特點,加上項目的開發時間跨度大等原因,使得項目管理變得十分困難。經過筆者應用分析,從軟件的成熟度、穩定性、流行性、社區發展情況,以及安裝配置的簡易性這幾方面進行詳細的分析比較,最終在Launchpad、Redmine和Trac這3個軟件中,選擇了Redmine。
在磁場檢測系統的項目管理平臺搭建中,首先,利用BitNami Redmine Stack提供的一鍵式安裝包,安裝好Redmine平臺,然后把中頻磁場檢測系統開發團隊的成員、任務(問題)、文檔、討論、Wiki、版本管理,以及各種形式的資源整合在此平臺上,大家通過一起參與更新任務、更新文檔等來推動項目的進度。同時,系統地利用時間線索和各種報表,動態顯示項目的進度狀態。
在項目中引入Redmine管理平臺,界面如圖1所示。起到了立竿見影的效果:
①開發團隊中新加入的成員通過此平臺,可以快速地了解項目的詳細情況,從而能夠快速地接手項目;
②團隊中如有成員離開,其他成員可以快速地接手該成員原來負責的任務;
③相對于以往采用客戶端TortoiseSVN訪問SVN的方式,開發成員更容易接受Redmine提供的Web訪問方式,來訪問和操作SVN版本控制器;
④為團隊成員的內部溝通和交流提供了高效的平臺;
⑤根據項目的進展情況,可以及時地調整項目的進度,從而實現高效的動態管理。
2 嵌入式軟件和硬件協同開發
Proteus可以實現原理圖設計、PCB布板以及微處理器與外圍電路的協同仿真。Proteus微處理器模型支持8051、PIC、MSP430、AVR、ARM 7和HC11等系列微處理器。其中,2011年推出的Proteus7.10版本,增加了對ARM Correx-M3系列處理器的支持。
電子產品從芯片的選型、電路設計、PCB布板到樣板焊接調試,這中間一般需要幾個月的時間,這段時間對整個項目開發來說,是非常關鍵的。在磁場檢測儀樣板制作的同時,嵌入式軟件開發人員在Proteus中繪制基本原理圖后,就可著手在Proteus的ARM Cortex-M3微處理器模型上編寫程序。
由于采用Proteus和IAR聯調,即在IAR集成開發環境中進行代碼調試,運行和調試結果直接在Proteus中顯示,因此不用等到樣板制作完畢再開始嵌入式軟件的調試,從而做到嵌入式軟件和硬件的同步開發。
另外,相對于直接在樣板上調試,Proteus更容易判斷出某個功能不能實現的具體原因,是由于硬件的故障還是軟件的編程問題引起的,從而避免了誤將硬件故障認為是軟件編程問題的情況發生,大大提高開發效率。另一方面,在磁場檢測儀LCD顯示驅動程序的調試中,利用Proteus提供的邏輯分析儀虛擬儀器測量LCD驅動時序,可以非常直觀地調試LCD的驅動程序,快速地完成LCD驅動程序的編程和調試。
由于磁場檢測儀中每一版本的PCB都只焊接制作了3塊樣板,大部分調試都在Proteus上完成。所以,用Proteus代替實際樣板調試,可以很大程度地減少元件的購置,減少樣板的制作;同時,也大大減少了JTAG仿真器、示波器、邏輯分析儀等調試設備的購置。為磁場檢測系統開發節約大量的資金和寶貴的開發時間。
3 嵌入式軟件各模塊協同開發
3.1 引入嵌入式操作系統實現任務分解
現在,國內低端手機設計上廣泛使用聯發科技MTK的方案,將手機芯片和手機軟件平臺預先整合到一起。MTK的整套軟件系統十分龐大且復雜,但其架構是引入Nucleus嵌入式操作系統,將手機軟件分解成多個任務并行開發。
MTK使用了Nucleus實時操作系統,但在其上做了內核抽象層的封裝,以適應最終生產廠商選擇其他實時操作系統的需要(如選擇替換為ThreadX)。Nucleus、ThreadX和μC/OS-II這3個嵌入式操作系統功能上很類似,但商用license是不一樣的。其中μC/OS-II應用在市場上銷售的產品,是需要購買license的;而針對高校的教學和研究,是免費的。這也是μC/OS-II廣泛被高校教師和學生認知的一個重要原因,同時這也是我們優先采用μC/OS-II作為磁場檢測儀的嵌入式操作系統的一個重要原因。
目前,ARM程序的規模一般都很大,需要多人協同開發。由于不帶嵌人式操作系統的程序,僅依靠全局變量和函數傳遞信息,程序耦合度十分高,很難實現多人的協同開發。引入嵌入式操作系統后,各個任務間通過消息郵箱、消息隊列或信號量同步,大大降低程序的耦合度,極大地提高團隊協同開發的效率。
引入嵌入式操作系統后,一般將程序分成幾個任務(線程),分別由專人負責。嵌入式軟件開發流程中,首先是對電路板和嵌入式操作系統進行初始化,接著創建若干任務,剩下的工作就是編寫每個任務或中斷處理的程序代碼。圖2為磁場檢測儀的中斷和任務間的同步關系框架圖。
隨著電子產品功能日益增多、性能日益增強,低成本32位微處理器、多層PCB板被廣泛應用,軟件和開發團隊的規模隨之擴大,同時開發周期呈指數增長。因此,以往的開發方式越來越不適應項目開發的需要。目前,國內磁場檢測儀器主要集中應用在工業用低頻強磁場和通信用的高頻弱磁場測量上,而中頻強磁場測量仍是磁場測量領域的一個難題。基于嵌入式操作系統的中頻強磁場的測量系統開發中,涉及到高速硬件電路設計、多層PCB板布線、32位微處理器編程、上位機軟件編程等多項工作,因此,需要眾多開發人員協同開發。
通過長期的實踐發現,在項目開發中引入開源項目管理平臺Redmine、嵌入式操作系統μC/OS-II、仿真軟件Proteus和調試軟件Bus Hou nd,能夠有效地提升整個項目的協同開發能力和管理水平。采用協同開發管理模式,可以達到以下4方面的顯著效果:提高嵌入式軟件和硬件之間的協同開發效率;提高嵌入式軟件各模塊間的開發效率和開發質量;提高上位機和下位機軟件的開發效率和開發質量;有效提高整個項目協同開發的管理水平。
1 磁場檢測儀開發管理平臺
項目管理的好壞關系到項目開發質量的高低,同時,對開發效率和開發質量也將產生重大的影響。目前市場上,基于Web的開源項目管理軟件已經發展得很成熟,此類軟件在高校的教學和研究,以及中小企業的項目開發管理中,都得到了廣泛的應用。
現階段,在磁場檢測系統項目開發中,由于軟硬件的開發復雜,開發人員眾多且開發人員存在著開發能力參差不齊、流動性大等特點,加上項目的開發時間跨度大等原因,使得項目管理變得十分困難。經過筆者應用分析,從軟件的成熟度、穩定性、流行性、社區發展情況,以及安裝配置的簡易性這幾方面進行詳細的分析比較,最終在Launchpad、Redmine和Trac這3個軟件中,選擇了Redmine。
在磁場檢測系統的項目管理平臺搭建中,首先,利用BitNami Redmine Stack提供的一鍵式安裝包,安裝好Redmine平臺,然后把中頻磁場檢測系統開發團隊的成員、任務(問題)、文檔、討論、Wiki、版本管理,以及各種形式的資源整合在此平臺上,大家通過一起參與更新任務、更新文檔等來推動項目的進度。同時,系統地利用時間線索和各種報表,動態顯示項目的進度狀態。
在項目中引入Redmine管理平臺,界面如圖1所示。起到了立竿見影的效果:
①開發團隊中新加入的成員通過此平臺,可以快速地了解項目的詳細情況,從而能夠快速地接手項目;
②團隊中如有成員離開,其他成員可以快速地接手該成員原來負責的任務;
③相對于以往采用客戶端TortoiseSVN訪問SVN的方式,開發成員更容易接受Redmine提供的Web訪問方式,來訪問和操作SVN版本控制器;
④為團隊成員的內部溝通和交流提供了高效的平臺;
⑤根據項目的進展情況,可以及時地調整項目的進度,從而實現高效的動態管理。
2 嵌入式軟件和硬件協同開發
Proteus可以實現原理圖設計、PCB布板以及微處理器與外圍電路的協同仿真。Proteus微處理器模型支持8051、PIC、MSP430、AVR、ARM 7和HC11等系列微處理器。其中,2011年推出的Proteus7.10版本,增加了對ARM Correx-M3系列處理器的支持。
電子產品從芯片的選型、電路設計、PCB布板到樣板焊接調試,這中間一般需要幾個月的時間,這段時間對整個項目開發來說,是非常關鍵的。在磁場檢測儀樣板制作的同時,嵌入式軟件開發人員在Proteus中繪制基本原理圖后,就可著手在Proteus的ARM Cortex-M3微處理器模型上編寫程序。
由于采用Proteus和IAR聯調,即在IAR集成開發環境中進行代碼調試,運行和調試結果直接在Proteus中顯示,因此不用等到樣板制作完畢再開始嵌入式軟件的調試,從而做到嵌入式軟件和硬件的同步開發。
另外,相對于直接在樣板上調試,Proteus更容易判斷出某個功能不能實現的具體原因,是由于硬件的故障還是軟件的編程問題引起的,從而避免了誤將硬件故障認為是軟件編程問題的情況發生,大大提高開發效率。另一方面,在磁場檢測儀LCD顯示驅動程序的調試中,利用Proteus提供的邏輯分析儀虛擬儀器測量LCD驅動時序,可以非常直觀地調試LCD的驅動程序,快速地完成LCD驅動程序的編程和調試。
由于磁場檢測儀中每一版本的PCB都只焊接制作了3塊樣板,大部分調試都在Proteus上完成。所以,用Proteus代替實際樣板調試,可以很大程度地減少元件的購置,減少樣板的制作;同時,也大大減少了JTAG仿真器、示波器、邏輯分析儀等調試設備的購置。為磁場檢測系統開發節約大量的資金和寶貴的開發時間。
3 嵌入式軟件各模塊協同開發
3.1 引入嵌入式操作系統實現任務分解
現在,國內低端手機設計上廣泛使用聯發科技MTK的方案,將手機芯片和手機軟件平臺預先整合到一起。MTK的整套軟件系統十分龐大且復雜,但其架構是引入Nucleus嵌入式操作系統,將手機軟件分解成多個任務并行開發。
MTK使用了Nucleus實時操作系統,但在其上做了內核抽象層的封裝,以適應最終生產廠商選擇其他實時操作系統的需要(如選擇替換為ThreadX)。Nucleus、ThreadX和μC/OS-II這3個嵌入式操作系統功能上很類似,但商用license是不一樣的。其中μC/OS-II應用在市場上銷售的產品,是需要購買license的;而針對高校的教學和研究,是免費的。這也是μC/OS-II廣泛被高校教師和學生認知的一個重要原因,同時這也是我們優先采用μC/OS-II作為磁場檢測儀的嵌入式操作系統的一個重要原因。
目前,ARM程序的規模一般都很大,需要多人協同開發。由于不帶嵌人式操作系統的程序,僅依靠全局變量和函數傳遞信息,程序耦合度十分高,很難實現多人的協同開發。引入嵌入式操作系統后,各個任務間通過消息郵箱、消息隊列或信號量同步,大大降低程序的耦合度,極大地提高團隊協同開發的效率。
引入嵌入式操作系統后,一般將程序分成幾個任務(線程),分別由專人負責。嵌入式軟件開發流程中,首先是對電路板和嵌入式操作系統進行初始化,接著創建若干任務,剩下的工作就是編寫每個任務或中斷處理的程序代碼。圖2為磁場檢測儀的中斷和任務間的同步關系框架圖。
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- Type-c設計及PD相關軟硬件實現詳解 40次下載
- 米飯氣味檢測儀資料說明 11次下載
- 專業軟硬件開發
- STM32學習筆記1——軟硬件基礎之keil5編程與GPIO開發
- 嵌入式ARM開發教程之ARM9微控制器LPC3180的軟硬件平臺的設計
- 基于FPGA芯片的軟硬件平臺的使用 20次下載
- 電磁智能平衡車控制系統的設計軟硬件結構和開發流程論文 21次下載
- USB的串行通信軟硬件設計 14次下載
- 基于USB的串行通信軟硬件設計 127次下載
- 面向HDTV應用的音頻解碼軟硬件協同設計
- 基于NI的軟硬件開發標準的測試平臺
- 基于EDA 的嵌入式系統軟硬件劃分方法
- 谷物品質快速檢測儀關鍵部件的設計
- 基于單片機的板栗成分檢測儀的開發
- 單片機測控系統的軟硬件平臺技術
- 美容儀氣密性檢測儀的使用方法 171次閱讀
- 桌面式氣密性檢測儀的保養方法 151次閱讀
- 什么是SPI錫膏檢測儀? 748次閱讀
- 帶你了解氣密性檢測儀的優勢 554次閱讀
- KubeCASH:基于軟硬件融合的容器管理平臺 819次閱讀
- 基于CW32單片機做的軟硬件開源項目 893次閱讀
- 軟硬件融合的概念和內涵 1118次閱讀
- 嘉楠科技開源最新一代K230芯片軟硬件開發包簡介 3719次閱讀
- 基于MSP430系列單片機快速開發紅外體溫檢測儀原型機 3942次閱讀
- 蓄電池檢測儀使用教程_蓄電池檢測儀測量什么 2.8w次閱讀
- 基于FPGA的交流電磁場檢測儀的激勵源設計 5279次閱讀
- 引導濾波的軟硬件協同加速器設計與實現 1424次閱讀
- Board從入門到精通(五):軟硬件協同設計 2108次閱讀
- 基于FPGA的軟硬件協同仿真加速技術 5077次閱讀
- 基于嵌入式Linux流媒體播放器系統軟硬件解決方案 2740次閱讀
下載排行
本周
- 1TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 2開關電源基礎知識
- 5.73 MB | 6次下載 | 免費
- 3100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 4嵌入式linux-聊天程序設計
- 0.60 MB | 3次下載 | 免費
- 5基于FPGA的光纖通信系統的設計與實現
- 0.61 MB | 2次下載 | 免費
- 6基于FPGA的C8051F單片機開發板設計
- 0.70 MB | 2次下載 | 免費
- 751單片機窗簾控制器仿真程序
- 1.93 MB | 2次下載 | 免費
- 8基于51單片機的RGB調色燈程序仿真
- 0.86 MB | 2次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應用800例(新編版)
- 0.00 MB | 33564次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關電源設計實例指南
- 未知 | 21548次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數字電路基礎pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅動電路設計》 溫德爾著
- 0.00 MB | 6653次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 78.1 MB | 537796次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191185次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183278次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論
查看更多