TKStudio 介紹,非常強大的一款集成開發環境,僅僅當個文本編輯、代碼查看也是非常不錯的。


1. TKStudio概述

TKStudio集成開發環境是廣州致遠電子股份有限公司開發的一個嵌入式芯片級、系統級軟件開發平台,是一款內置強大編輯器的多內核編譯調試環境,支持Keil C51、SDCC、GCC ARM、ADS、IAR ARM、MDK、RVDS、GCC AVR、WindRiver CCORE、CCoreGcc、RemoteGcc等編譯工具鏈,支持8051、ARM7/ARM9/ARM11、CortexM3/CortexM0、XScale、AVR、CCORE等內核調試,支持Linux bootloader、Linux內核、Linux內核模塊、Linux應用程序等的調試。可以完成從工程建立和管理,編譯,鏈接,目標代碼的生成,到軟件仿真,硬件仿真(掛接TKS系列仿真器的硬件)等完整的開發流程。

常見的集成開發環境如Keil、IAR等其代碼編輯功能都比較一般,而TKStudio最直觀的優點就是其強大的代碼編輯功能,其代碼編輯器整合了SciTe、Emacs、VC6.0、SourceInsight、VS2008等常用編輯器的優點,還可以在幾種風格之間自由切換,在代碼編寫過程中非常方便,即是不用他來進行開發和調試,單純用來進行代碼編輯也是非常方便的。對於本書所主要介紹的STM32的開發來說,更為重要的是TKStudio可以直接導入Keil MDK、IAR等其他開發工具的工程文件,實現無縫過渡,尤其是和Keil MDK,無論是在用戶界面還是在一些選項細節的設置上都非常相像,非常方便使用。

下面借着TKStudio的例子,介紹一下一個優秀的代碼編輯器可以有哪些方便使用的功能。TKStudio的代碼編輯器有以下突出的功能,如所示。

智能感知

代碼參照

快速格式化

智能縮進

區間顯示

函數導航

轉到實現

代碼折疊與提示

.h/.c文件交叉參考

自由縮放代碼

完美支持中文

快速打開包含文件

快速選擇

語法高亮顯示

差異行顯示

一檔多視

快速注釋

即時顯示配對括號

十六進制編輯

查找、替換、書簽

2. 強大的代碼編輯器

下面針對幾項代碼編輯器突出的功能進行簡要的介紹。

(1)自動補全

智能感知,也就是代碼輔助,是指根據當前已經輸入的字符,自動提示所有可用的補全推薦列表,供參考或直接進行選擇,可以有效避免拼寫錯誤,提升編碼速度和准確度。推薦列表會顯示順序以前綴完全匹配為優先,前綴忽略大小寫匹配次之,然后再是非前綴匹配。

如所示,當輸入g時,編輯器就會自動根據已經輸入的字符進行匹配,匹配的內容包括軟件自帶關鍵詞庫,同時當前工程中的文件同樣也會作為匹配庫進行匹配,這一點對於使用第三方的標准外設庫開發非常方便,可以極大的提升輸入效率,而且可以很大程度避免函數輸入錯誤的情況。

clip_image002

(2)成員提示

智能感知除了普通的字符串補全外,還包括成員提示、參數提示和代碼模板等非常實用的功能。

成員提示是指具有復雜結構的變量,當用戶意圖引用它的成員時,系統自動列出它所有的成員供選擇。

clip_image004

(3)代碼參數提示

例如當我們調用一個已經定義好的函數時,傳統情況下需要再次去查看對應函數的參數類型等,在代碼編輯器中來回切換較為麻煩,代碼參數提示功能就是針對這個問題而設計,如所示,當輸入一個函數后,輸入前半個括號時,編輯器會自動補全后半個括號,同時在下方自動提示函數的相關參數。

clip_image006

(4)代碼模板

代碼模板功能則是指當在編輯器中輸入庫中預設的代碼模板,如if、while等,編輯器能夠自動輸入相應的模板,如所示,當輸入if時,編輯器會自動給出提示,按回車鍵后,編輯器會自動補全后面的括號和下方的大括號。

clip_image008

(5)區間顯示

區間顯示是指TKStudio會在源代碼窗口左上方的導航條里顯示當前光標位置所在的區間,這樣在多重嵌套的代碼時可以很清晰地知道當前位置。通過向上箭頭還可以將光標位置移到上一級區間,即所在區間的{前面,向下箭頭則將光標位置所在區間的}前面。區間主要是以{}進行區分。

clip_image010

(6)快速格式化

快速格式化是指以快速的方式調整代碼的縮進量,使代碼格式合理美觀,便於閱讀。快速格式化可以高效地調整亂碼,這使得復制粘貼代碼非常方便,免除了手工調整的麻煩,此功能在嵌入式開發環境中非常少見。

clip_image012

(7)智能縮進

智能縮進是指編輯器會實時根據輸入的內容判斷縮進量,並自動完成縮進的工作,使代碼格式合理美觀,便於閱讀。免除了手動進行縮進的麻煩。根據個人的習慣,開發者還可以方便地進行個性化調整。

(8)代碼參照

代碼參照是指不用關閉當前窗口,就可以清楚地知道代碼出現過的位置,以及清晰方便地查看其聲明或實現。代碼參照方便了代碼的閱讀,避免為了查看某段代碼而被迫關閉當前閱讀的代碼,避免了窗口之間的切換。如所示,當鼠標點擊GPIO_Init函數時,下方的代碼定義窗口會自動定位到代碼的定義位置,非常方便代碼的閱讀。

clip_image014

3. 豐富的編譯工具鏈

TKStudio具備了豐富的編譯器選項配置信息,對各種工具鏈的編譯、鏈接、調試提供了靈活的配置參數,對MCS-51、ARM、AVR、CCORE等內核芯片都提供了支持,靈活多樣的工具鏈,這是優於國內其它廠商IDE的關鍵之一。完整版的安裝包中包含了SDCC、RemoteGcc、GCC AVR、GCC ARM等免費開源工具鏈,還可以自行調用Keil C51、ADS、IAR ARM、MDK、RVDS等編譯工具鏈。

更為方便的是TKstudio直接支持Keil C51、ADS、IAR ARM、MDK、RVDS工程的直接導入,非常方便項目開發環境的轉換與遷移。

clip_image016

4. 強大的源代碼級調試器

Keil具有非常強大的調試器,進行相關的仿真非常強大、方便,TKStudio調試器與Keil無論是在界面上還是在使用細節上都有很多相似之處,更為強大的是,它支持8051、ARM、AVR、CCORE等多平台主流芯片的系統級調試,支持斷點、單步、全速等多種調試方式,配備大量窗口以觀察調試信息,並且內置了完備的軟件仿真系統。如所示。

clip_image018

5. 豐富的外部工具

TKStudio自帶了非常豐富的外部工具,如串口調試助手、K-Flash下載器、文件比較器等,下面介紹幾個比較好用的外部工具。

(1)K-Flash在線燒寫器

K-Flash 是一款用於 Flash 燒寫,支持 TKScope 系列仿真器,具有文件燒寫與校驗、數據擦除、數據查空和數據讀取等功能的軟件。 K-Flash具有以下特點:

l 工程化配置,操作簡單、方便、快捷;

l 支持TKScope全系列通用仿真器;

l 支持ARM、C8051F、AVR、DSP等多種內核;

l 支持一次燒寫多個文件,操作更快捷;

l 支持bin文件、hex文件、elf文件等多種類型的文件;

l 支持片內Flash和片外Flash燒寫;

l 具備燒寫校驗功能,驗證燒寫是否正確;

l 具備抽取文件部分數據進行燒寫的功能,可指定地址范圍進行燒寫;

l 多種Flash燒寫操作,可以進行擦除和讀取等操作;

l 具有獨立的數據擦除功能,可指定扇區進行擦除,操作更簡捷;

l 具有數據查空功能,可指定扇區檢查芯片是否有數據;

l 具有獨立的數據讀取功能,可指定地址范圍進行讀取,支持一步到位打開讀取的數據;

l 保存配置到工程文件中,免除繁瑣重復的配置操作;

l 支持各大半導體公司的芯片燒寫,內置多種芯片的默認配置;

l ARM內核燒寫算法文件公開,用戶可自行添加 Flash 算法。

clip_image020

(2)文件比較器

文件比較器TKSDiff用於文本文件比較、目錄比較、二進制文件快速比較、二進制文件智能比較,以圖形界面顯示比較結果(包括沖突的分布和比例),支持沖突的替換和合並,支持選中文本的導出和以多種格式進行復制。文件比較器在查看文件差異時非常直觀高效,能有效地避免人工查找的繁瑣和疏漏。

clip_image022

(3)圖片/字模助手

圖片/字模助手用於把一些常用格式的圖片轉換成嵌入式系統需要的數據格式,也可以方便提取多種字符集的多種字體的字模,方便您將輸出數據用於編寫程序或燒寫到Flash芯片中。具備以下功能:

l 支持常用圖片格式:*.gif; *.jpg; *.bmp; *.png; *.jpeg; *.exif; *.tiff; *.ico; *.wmf; *.emf;

l 可以設置屏幕大小,並根據需要對圖片進行縮放或拉伸;

l 支持多種掃描方式;

l 輸出多種顏色級別;

l 可保存為C 語言數組,二進制BIN 文件,BMP 文件和字符圖文件(只用於單色位圖)等四種格式;

l 對於真彩色可以調整 RGB三種顏色的輸出順序;

l 支持大端、小端兩種輸出方式;

l 可對圖像進行旋轉、鏡像、反色等處理,並可立刻看到處理效果;

l 支持ANSI, GB2312, CHINESE BIG5三種字符集的各種字模的提取;

l 支持多種取模方式;

l 支持一次性提取多個字模;

l 支持字模的編輯和保存。

clip_image024

clip_image026

(4)其他工具

TKStudio另外還集成了眾多非常實用的小工具,如波特率計算工具、Ext2文件查看工具、串口調試助手以及模擬器等,有興趣的可以進一步的了解這些小工具的特點,充分利用方便開發。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM