www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當前位置:首頁 > > 充電吧
[導讀]近來發(fā)現壇子里的不少哥們對BASCOM-AVR比較感興趣

  近來發(fā)現壇子里的不少哥們對BASCOM-AVR比較感興趣,連雙龍也開始關注了,作為一個老用戶,覺得有義務給大家作個簡單的評價,給打算學習BASCOM的朋友一個比較客觀的意見,僅供參考,如有說得不對,歡迎指教。

    首先,它的優(yōu)點是有目共睹的,我想選擇它的哥們也一定是看上了它的這個優(yōu)點:易用上手快,容易出成果!BASCOM確實很容易上手,2002年初我剛開始接觸AVR的時候,就是完全靠它的HELP系統加老龍的SL系列實驗開發(fā)器自己摸索的,就是現在,我也還經常在HELP系統中CTRL+C和CTRL+V例子代碼,代碼很簡單易懂,對格式要求也不很嚴格,不用做芯片的初始化工作,有時就是連簡單的CONFIG語句都省了,編譯一樣成功,但是C語言就要在寫程序之前先寫大量初始化芯片的語句,比較煩人。同時,它支持部分匯編語句也是值得高級用戶稱道的,如DDR=XXX語句就可以配置IO口的寄存器等,比CONFIG語句更靈活更好用,結合使用更是能隨心所欲,方便極了。對于部分比較常用的模塊化功能如讀取RC5遙控編碼,讀寫LCD等都簡單到了一句搞定的地步,很適合業(yè)余開發(fā)者和學生興趣班使用。

    但是它的某些方面確實有些問題!比較嚴重的是:

    1、程序結構化能力差。常用的功能想做成函數或模塊調用以節(jié)省空間,但是最終往往達不到效果,而編譯器卻沒有提示出錯,給人摸不著頭腦的感覺。例如,想把AD轉換作為一個自定義函數,供主程序反復調用,但是最終轉換結果卻出現很多嚴重的錯誤,遠遠偏離正確值,如果直接把該段代碼寫在主程序模塊中就一切OK,很是傷腦筋,這點對于程序規(guī)模比較大的,或是初學者是很不利的,解決辦法只有將公用代碼放在某個程序段中不斷的GOSUB和RETURN,要想跟C語言的優(yōu)秀的結構化風格比是不可能的。

    2、部分語句有兼容性問題。如RC5SEND語句,在90S系列芯片中完全通過,而在MEGA系列芯片中完全失效,沒有任何動靜,編譯過程中又沒有任何提示,這意味著MEGA系列無法使用這種簡單的辦法來擴展鍵盤了。

    3、用戶很少,網上例子代碼貧乏,無法跟其他用戶交流,這點對于初學者比較慘。

    4、現成的算法少,很多需要自己重頭研究編寫,比較辛苦。

    5、程序代碼空間的利用率低,完成同樣功能的程序,編譯的結果往往比C編譯器的大的多,比如一個寫LCD語句就會編譯出幾百的字節(jié)來,無法根據源程序大小來估計最終FLASH的使用率,而且一旦超出FLASH大小范圍只有干瞪眼的份,無法根據自己程序的實際情況來優(yōu)化空間,畢竟是調用現成的模塊嘛。

    6、對硬件的操作很模糊,似乎隔離了用戶跟硬件打交道的權利,這當然是為了給用戶簡單易用著想的,但當用戶用了很多年BASCOM以后再想換換其他的編譯器,卻發(fā)現自己天天在用的芯片自己卻一點也不知道它的硬件結構和使用方法,沒法放棄BASCOM了,貪圖方便的結果,慘啊!

    以上是我這些年研究BASCOM的“成果”,供大家參考??傮w上來說,這款軟件是可以給80分的,還算是不錯的編譯器,適合簡單的作些端口控制的小程序,不適合包含大量算法和運算量比較密集的項目;適合像我這樣的業(yè)余玩家(不過今年我已經逐步放棄BASCOM而轉向ICC了)和作為非該專業(yè)學校的學生使用,不適合靠單片機混飯吃和將來打算深入研究的用戶。

    另外,還想對壇子里某些哥們的一些觀點提出異議:

    1、BASCOM語言的AVR開發(fā)工具編譯出來的程序執(zhí)行效率低。我認為,這恐怕是受了計算機GW-BASIC或是TURBO-BASIC時代的影像,想當然的把這頂帽子扣在BASCOM-AVR身上了,以前計算機的BASIC語言包括VB確實效率低,原因是他們生成的代碼不是最終目標機器的代碼,而是經過一個RUNTIME的程序在內存解釋后運行的。而單片機的BASIC編譯器是直接將代碼編譯成AVR相應芯片的機器碼的,不需要在單片機的內存駐留RUNTIME程序,執(zhí)行效率不會很低(垃圾代碼多則另當別論),排除垃圾代碼的影像,執(zhí)行效率是跟其他編譯器編譯出來的一樣的。

    2、BASIC語言結構化能力差。我認為這也是受了早期計算機教科書的誤導而以訛傳訛,BASIC發(fā)展到了QuickBASIC以后,結構化能力已經很強,具備很多結構化的思想和編程方式,已經具有函數、模塊、局部變量、全局變量、數據傳遞等,已經擺脫了早期BASIC語言GOTO和程序行號的陰影,而上面我提到的BASIC-AVR結構化差的問題則是這個軟件開發(fā)的個別問題了,畢竟它只能盡量兼容QUICKBASIC,這點在HELP里也說得很清楚了。

    亂七八糟談了一大堆,有什么不對的還請各位大俠不吝賜教,謝謝!

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

LED驅動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關鍵字: 驅動電源

在工業(yè)自動化蓬勃發(fā)展的當下,工業(yè)電機作為核心動力設備,其驅動電源的性能直接關系到整個系統的穩(wěn)定性和可靠性。其中,反電動勢抑制與過流保護是驅動電源設計中至關重要的兩個環(huán)節(jié),集成化方案的設計成為提升電機驅動性能的關鍵。

關鍵字: 工業(yè)電機 驅動電源

LED 驅動電源作為 LED 照明系統的 “心臟”,其穩(wěn)定性直接決定了整個照明設備的使用壽命。然而,在實際應用中,LED 驅動電源易損壞的問題卻十分常見,不僅增加了維護成本,還影響了用戶體驗。要解決這一問題,需從設計、生...

關鍵字: 驅動電源 照明系統 散熱

根據LED驅動電源的公式,電感內電流波動大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關鍵字: LED 設計 驅動電源

電動汽車(EV)作為新能源汽車的重要代表,正逐漸成為全球汽車產業(yè)的重要發(fā)展方向。電動汽車的核心技術之一是電機驅動控制系統,而絕緣柵雙極型晶體管(IGBT)作為電機驅動系統中的關鍵元件,其性能直接影響到電動汽車的動力性能和...

關鍵字: 電動汽車 新能源 驅動電源

在現代城市建設中,街道及停車場照明作為基礎設施的重要組成部分,其質量和效率直接關系到城市的公共安全、居民生活質量和能源利用效率。隨著科技的進步,高亮度白光發(fā)光二極管(LED)因其獨特的優(yōu)勢逐漸取代傳統光源,成為大功率區(qū)域...

關鍵字: 發(fā)光二極管 驅動電源 LED

LED通用照明設計工程師會遇到許多挑戰(zhàn),如功率密度、功率因數校正(PFC)、空間受限和可靠性等。

關鍵字: LED 驅動電源 功率因數校正

在LED照明技術日益普及的今天,LED驅動電源的電磁干擾(EMI)問題成為了一個不可忽視的挑戰(zhàn)。電磁干擾不僅會影響LED燈具的正常工作,還可能對周圍電子設備造成不利影響,甚至引發(fā)系統故障。因此,采取有效的硬件措施來解決L...

關鍵字: LED照明技術 電磁干擾 驅動電源

開關電源具有效率高的特性,而且開關電源的變壓器體積比串聯穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機重量也有所下降,所以,現在的LED驅動電源

關鍵字: LED 驅動電源 開關電源

LED驅動電源是把電源供應轉換為特定的電壓電流以驅動LED發(fā)光的電壓轉換器,通常情況下:LED驅動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關鍵字: LED 隧道燈 驅動電源
關閉