當(dāng)前位置:首頁 > 嵌入式 > 嵌入式軟件
[導(dǎo)讀]專用IC解密技術(shù)AVR應(yīng)用技巧

AVR與傳統(tǒng)類型的單片機(jī)相比,在IC芯片解密技術(shù)中除了必須能實(shí)現(xiàn)原來的一些基本的功能,其在結(jié)構(gòu)體系、功能部件、性能和可靠性等多方面有很大的提高和改善。
  但使用更好的器件只是為設(shè)計(jì)實(shí)現(xiàn)一個(gè)好的系統(tǒng)創(chuàng)造了一個(gè)好的基礎(chǔ)和可能性,如果還采用和沿襲以前傳統(tǒng)的硬件和軟件設(shè)計(jì)思想和方法的話,是不能用好AVR的,甚至也不能真正的了解AVR的特點(diǎn)和長處。
  功能越好的器件,需要具備更高技術(shù)和能力的人來使用和駕馭它。IC芯片解密就象一部好的F1賽車,只有具備高超技術(shù)的駕駛員才能充分體會(huì)到車的特點(diǎn),并能最大限度的發(fā)揮出車的性能。
  AVR具有上手入門快,開發(fā)方便簡單的特點(diǎn),但要充分體會(huì)和發(fā)揮AVR的優(yōu)點(diǎn),還需要應(yīng)用工程師本身的硬軟件設(shè)計(jì)開發(fā)能力IC芯片解密的不斷學(xué)習(xí)、實(shí)踐提高。
  “外行看熱鬧,內(nèi)行看門道”,對(duì)于有一定基礎(chǔ)的嵌入式和單片機(jī)系統(tǒng)設(shè)計(jì)開發(fā)的工程師,不妨先簡單嘗試一下AVR。
  開發(fā)環(huán)境與工具:PC+下載線+實(shí)際的系統(tǒng)板
  PC上的開發(fā)軟件:
  AVR Studio(Free)匯編+匯編調(diào)試+高級(jí)語言調(diào)試+軟件仿真
  ICC、CVAVR、BASCOM-AVR 高級(jí)語言程序開發(fā)+程序下載。其中一個(gè)購買正版全功能,作為主要的開發(fā)環(huán)境,其它使用DEMO版,作為輔助及參考。
  AVR ISP下載線:
  STK200 and STK200+ and STK300 ISP programmer。通過PC的打印機(jī)口,采用ISP技術(shù)將系統(tǒng)運(yùn)行代碼(HEX、BIN)和數(shù)據(jù)寫入AVR芯片的Flash和EEProm中,編程AVR的配置熔絲位和加密位。支持決大多數(shù)的AVR芯片、以及ATMEL的51兼容芯片89S8252、89S52等。在ICC、CVAVR、BASCOM-AVR、BASCOM-8051中都內(nèi)含對(duì)該下載線的支持程序。免費(fèi)專用的下載程序:SLISP、PonyProg2000等。
  盡量不使用仿真器的建議:
  在開發(fā)和調(diào)試系統(tǒng)程序、IC芯片解密時(shí),有許多人完全依賴于IC芯片解密,一旦離開了仿真器時(shí)就感覺無從下手。其實(shí),由于AVR的Flash存貯器可方便的使用ISP技術(shù)在線的多次擦寫,因此建議盡量不使用(依賴)仿真器來開發(fā)和調(diào)試程序。
  在實(shí)際開發(fā)過程中,程序的調(diào)試可以從下幾方面入手:
  現(xiàn)在的高級(jí)語言編譯器(如C編譯器)可以產(chǎn)生效率很高的機(jī)器代碼,因此建議大家盡量使用高級(jí)語言編寫系統(tǒng)程序。
  使用Atmel公司提供AVR Studio軟件模擬仿真環(huán)境,以及其他的軟件模擬仿真環(huán)境(BASCOM-AVR)。
  盡可能使用高級(jí)語言編寫系統(tǒng)程序。
  利用目標(biāo)板上的LED、LCD或異步串口。見附件“沒有仿真器的情況下如何開發(fā)AVR”的介紹。
  提高硬件設(shè)計(jì)的合理性:
  盡量合理和充分使用AVR片內(nèi)的資源,如EEPROM、A/D、內(nèi)部的RC振蕩源。
  盡量采用串口通信連接的外圍器件,大容量的存儲(chǔ)器、LCD控制器、打印機(jī)、不用8279(LED數(shù)碼管+鍵盤)而使用7279等。除了必須外擴(kuò)RAM(如語音和圖象),一般不提倡使用并行擴(kuò)展(573+譯碼電路),減小硬件和連線以及PCB板上錯(cuò)誤的出現(xiàn)概率,同時(shí)也提高了系統(tǒng)的可靠性。并行擴(kuò)展向串行擴(kuò)展是發(fā)展趨勢?,F(xiàn)在有大量的新的外圍器件采用高速的串行接口,如A/D、D/A、RTC、存儲(chǔ)器等。
  盡量使用以及在目標(biāo)板上預(yù)留ISP程序下載接口,或使用IAP技術(shù)。
  優(yōu)點(diǎn):ISP接口與I/O的兼容性比JETAG好。
  缺點(diǎn):不能在線調(diào)試
  注意和掌握AVR配置熔絲位的使用:
  盡量合理采用高級(jí)語言設(shè)計(jì)編寫系統(tǒng)程序。有許多人認(rèn)為使用匯編寫程序比較精簡,而用高級(jí)語言開發(fā)會(huì)浪費(fèi)很多程序空間,其實(shí)這是一種誤解。對(duì)一個(gè)有經(jīng)驗(yàn)的,而且非常熟悉某種單片機(jī)的匯編高手而言,他是能寫出比高級(jí)語言更精簡的代碼。而對(duì)匯編不是很熟的開發(fā)者、或突然更換了一種新的單片機(jī),您能保證一定可以寫出比高級(jí)語言更簡練的代碼嗎?
  現(xiàn)在的高級(jí)語言編譯器(如C編譯器)已可以產(chǎn)生代碼效率很高的機(jī)器代碼,因此建議大家能用高級(jí)語言實(shí)現(xiàn)的程序盡可能使用高級(jí)語言寫,在對(duì)速度和時(shí)序要求特嚴(yán)的場合可以采用混合編程的方法來解決。
  更深入和全面的掌握各種串行通信協(xié)議的規(guī)程:
  嵌入式系統(tǒng)目前以大量的使用串行接口外圍芯片和各種通信接口,如RS232、兩線(I2C)、三線(SPI)、單總線、USB、CAN、TCP/IP等。開發(fā)人員和程序員應(yīng)了解低層協(xié)議,熟悉硬件怎樣和如何實(shí)現(xiàn)低層協(xié)議,如何定義可靠的上層應(yīng)用協(xié)議,以及低層協(xié)議驅(qū)動(dòng)同上層應(yīng)用協(xié)議之間的接口設(shè)計(jì)(中間層軟件的實(shí)現(xiàn))等。
  硬件工程師的軟件編寫能力要提高,采用標(biāo)準(zhǔn)程序編寫方式、完善的軟件整體框架的設(shè)計(jì)、良好的數(shù)據(jù)結(jié)構(gòu)和程序結(jié)構(gòu)系統(tǒng)。(計(jì)算機(jī)軟件專業(yè)的程序設(shè)計(jì)員對(duì)硬件不熟悉、大部分是在操作系統(tǒng)支持下編寫軟件,對(duì)低層接口和協(xié)議的驅(qū)動(dòng)層以及接口也不了解,往往也編寫不出好的單片機(jī)系統(tǒng)程序。)
  通信接口的編寫應(yīng)盡量
  .采用中斷+緩沖區(qū),
  .分層+結(jié)構(gòu)化設(shè)計(jì),
  .盡量不使用輪循方式(降低AVR的效率)。參見URAT(RS232)驅(qū)動(dòng)+中間層軟件示例。
  采用好的系統(tǒng)設(shè)計(jì)模式:
  盡量不使用傳統(tǒng)的前后臺(tái)(中斷)系統(tǒng)設(shè)計(jì)模式,任務(wù)之間相互影響和干擾,無法定時(shí)操作。如設(shè)計(jì)一個(gè)采用動(dòng)態(tài)掃描方式驅(qū)動(dòng)的8位LED數(shù)碼管顯示+動(dòng)態(tài)掃描的4*4矩陣鍵盤。
  采用TimeTip+狀態(tài)機(jī)設(shè)計(jì)+CASE結(jié)構(gòu),實(shí)現(xiàn)多任務(wù)并行運(yùn)行系統(tǒng)設(shè)計(jì)方法?;驎r(shí)間觸發(fā)式的系統(tǒng)設(shè)計(jì)。(見:《時(shí)間觸發(fā)嵌入式系統(tǒng)設(shè)計(jì)模式》中國電力出版社 2004.6)
  移植小型嵌入式操作系統(tǒng),如UCOS-II。在網(wǎng)上有些免費(fèi)的基于AVR的簡潔的操作系統(tǒng)。
  提高C語言的編程能力和軟件應(yīng)用水平:
  熟悉和用好C中的數(shù)據(jù)結(jié)構(gòu)體、指針應(yīng)用、內(nèi)存管理等較高級(jí)的應(yīng)用。
  熟悉和了解你所使用的高級(jí)語言開發(fā)平臺(tái)的特點(diǎn)。這些平臺(tái)是針對(duì)某一類處理器的,包含許多特殊的不兼容的語句和擴(kuò)展的結(jié)構(gòu)、語句、函數(shù)等。盡管使用方便,但由于其不透明性和時(shí)間的不確定性,因此要合理使用。如C中的getchar()、putchar()等。
  AVR有多個(gè)開發(fā)平臺(tái),每個(gè)都有其特點(diǎn)和不足。能夠綜合使用這些平臺(tái),相互互補(bǔ),能夠提高開發(fā)效率。如通過ICC、CVAVR的程序生成器CodeWizard學(xué)習(xí)和了解AVR的硬件設(shè)置,簡化計(jì)算,快速的生成程序基本模塊,如“一個(gè)URAT(RS232)低層驅(qū)動(dòng)+中間層軟件示例”。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動(dòng)力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉