天天看點

【STC8A8K64D4開發闆】——第1-2講:搭建開發環境

作者:電子友人章

第1-2講:搭建開發環境

需要安裝的工具軟體

表1:需要的工具軟體

序号 軟體工具 說明
1 Keil C51 9.52安裝檔案 Keil C51內建開發環境。
2 ch341ser驅動 USB最新驅動可到沁恒官網下載下傳:www.wch.cn/downloads/CH341SER_EXE.html
3 stc-isp-15xx-v6.90D軟體 可到STC官網下載下傳該軟體最新安裝包:www.stcmcudata.com
  • 搭建開發環境需要安裝的工具軟體在資料包中的位置:
  • Keil C51 9.52安裝檔案:“...\第2部分:開發軟體工具\ 1 - KEIL C51安裝軟體”目錄下的“c51v952”。
  • ch341ser驅動:“...\第2部分:開發軟體工具\ 3 - CH340驅動程式” 目錄下的“ch341ser”。
  • stc-isp-15xx-v6.90D軟體:位于“...\第2部分:開發軟體工具\ 2 - STC-ISP下載下傳軟體”目錄下的“stc-isp-15xx-v6.90D”。
  • 注意事項:
  • Keil的安裝路徑不宜太深,安裝路徑不可有中文。(并非安裝路徑有中文就一定會出問題,隻能說安裝路徑使用全是較簡潔的英文會大大降低安裝出錯的機率,請知悉!)
  • 使用者在安裝Keil C51前電腦可能已經安裝有了Keil MDK版本的軟體,務必注意建議将Keil C51安裝在其他盤的目錄下。
  • stc-isp-15xx-v6.90D軟體無需安裝,直接輕按兩下打開即可使用。

搭建Keil開發環境

Keil C51簡介

Keil C51是美國Keil公司(該公司2005年被ARM公司收購)出品的51系列相容單片機C語言軟體開發系統。

與彙編相比,C語言在功能、結構性、可讀性、可維護性上有明顯的優勢,因而易學易用。Keil提供了包括C編譯器、宏彙編、連接配接器、庫管理和一個功能強大的仿真調試器等在内的完整開發方案,通過一個內建開發環境(uVision)将這些部分組合在一起。Keil C51是支援8051微控制器體系結構的Keil開發工具,适合每個階段的開發人員,不管是專業的應用工程師,還是剛學習嵌入式軟體開發的學生。

擴充知識:Keil公司開發的ARM開發工具MDK(Microcontroller Development Kit),是用來開發基于ARM核的系列微控制器的嵌入式應用程式。

本文檔中使用的Keil C51版本是9.52,打開後的主界面如圖所示。

【STC8A8K64D4開發闆】——第1-2講:搭建開發環境

圖1:Keil C51主界面

安裝Keil C51

開發闆配套資料包裡面已經下載下傳好了Keil C51安裝檔案,安裝檔案的位置在開發闆資料包的“...\第2部分:開發軟體工具\ 1 - KEIL C51安裝軟體”目錄下。

  1. 解壓壓縮檔案c51v952.zip,輕按兩下“c51v952.exe”,彈出 Keil C51 V9.52的安裝向導,單擊[Next],如下圖所示。
【STC8A8K64D4開發闆】——第1-2講:搭建開發環境

圖2:安裝Keil C51

  1. 勾選[I agree to ...],然後點選[Next],如下圖所示。
【STC8A8K64D4開發闆】——第1-2講:搭建開發環境

圖3:勾選Keil C51安裝協定

  1. 選擇安裝路徑,如下圖所示。

此處,可以根據自己的需要選擇安裝路徑,本文檔設定的預設安裝路徑是C:\Keil_51,即安裝在C槽,(也可選擇安裝路徑是D:\Keil_51或者其他盤)。

【STC8A8K64D4開發闆】——第1-2講:搭建開發環境

圖4:添加Keil C51安裝路徑

  • 注:安裝在預設路徑下,可以省去一些不必要的麻煩。如果使用者安裝在其他路徑,要注意路徑不宜過深,并且路徑中不要有中文,否則,在打開、編譯工程或者仿真的時候可能會出現問題。
  1. 根據提示填入相關使用者資訊,然後點選[Next], 如下圖所示。
【STC8A8K64D4開發闆】——第1-2講:搭建開發環境

圖5:填寫Keil C51安裝資訊

  • 說明:未注冊版本有2K的代碼限制,當超過2K時,是無法編譯工程的。
  1. 等待Keil C51安裝完成,如下圖所示。
【STC8A8K64D4開發闆】——第1-2講:搭建開發環境

圖6:Keil C51安裝中

  1. 點選【Finish】完成安裝,如下圖所示。
【STC8A8K64D4開發闆】——第1-2講:搭建開發環境

圖7:Keil C51安裝完後

安裝USB轉序列槽驅動

開發闆上設計了USB轉TTL電路,使用的USB轉序列槽晶片是CH340,使用前需要安裝驅動。

  • 說明:如果計算機上已經安裝了CH340的驅動,則無需再安裝,可直接跳過此步驟。

CH340和CH341是共用同一個驅動的,是以看到驅動的名稱是“CH341ser”時不用奇怪,按照下面的步驟安裝即可。

  1. 解壓壓縮檔案ch341ser,輕按兩下打開 “ch341ser.exe”,出現下面界面,點選安裝。
【STC8A8K64D4開發闆】——第1-2講:搭建開發環境

圖8:打開CH340驅動軟體

  • 說明:安裝USB轉序列槽驅動失敗的處理方法

用Type-C USB資料線将開發闆J1連接配接到電腦的USB口,并将開發闆上的電源開關撥到“ON”的位置,确認開發闆的電源訓示燈已經點亮後,再安裝USB轉序列槽驅動即可。

  1. 檢視CH340的端口号:

需要使用USB資料線連接配接電腦和開發闆并打開開發闆上的電源開關後才能檢視。

選中“我的電腦”後右鍵打開屬性視窗,再打開裝置管理器,在裝置管理器中檢視CH340的端口号,如下圖所示。

【STC8A8K64D4開發闆】——第1-2講:搭建開發環境

圖9:裝置管理器中檢視CH340裝置

安裝stc-isp軟體

STC-ISP-15xx是 STC(宏晶科技)針對STC單片機提供的專用的ISP下載下傳軟體, STC-ISP-15xx使用簡便,并且內建了衆多的實用工具,如序列槽調試助手、波特率和定時器計算工具等,現已被廣泛使用。該軟體版本會在STC官網上不斷更新,使用者後續可檢視并下載下傳最新版本,STC官網:http://www.stcmcudata.com/

STC-ISP-15xx是綠色軟體,無需安裝,解壓後即可使用,但是我們需要使用STC-ISP-15xx軟體将STC器件/頭檔案和仿真驅動添加到Keil,否則,Keil裡面是找不到對應的晶片的,操作步驟如下。

  1. 解壓壓縮檔案stc-isp-15xx-v6.90D,輕按兩下“stc-isp-15xx-v6.90D.exe” 打開STC-ISP-15xx軟體,打開後,會彈出産品通知資訊視窗,如果下圖所示,點選[關閉]按鈕關閉通知視窗即可。
【STC8A8K64D4開發闆】——第1-2講:搭建開發環境

圖10:打開STC-ISP軟體

  1. 打開“Keil仿真設定”頁籤,點選“添加型号和頭檔案到Keil中…”按鈕添加。
【STC8A8K64D4開發闆】——第1-2講:搭建開發環境

圖11:添加頭檔案和仿真設定

  • 注:無論開發闆選擇的是不是仿真型晶片,都需要進行此步操作。
  1. 在彈出的視窗中導航到Keil C51的安裝檔案夾,選中檔案夾後點選[确定],添加成功後會彈出提示視窗,如下圖所示。
【STC8A8K64D4開發闆】——第1-2講:搭建開發環境

圖12:添加頭檔案和仿真設定成功

Keil常用操作

批量注釋和批量取消注釋

在編寫和調試程式的時候,我們經常會遇到需要注釋代碼塊的情況(多行代碼),這裡我們給出兩種常用的批量注釋方法。

  1. 第一種方法:使用菜單欄中的快捷按鈕

批量注釋方法:先選中需要注釋的代碼,然後點選下圖中紅框内的按鈕即可批量注釋代碼。

【STC8A8K64D4開發闆】——第1-2講:搭建開發環境

圖13:批量注釋

取消批量注釋方法:先選中需要取消注釋的代碼,然後點選下圖中紅框内的按鈕即可批量取消代碼注釋。

【STC8A8K64D4開發闆】——第1-2講:搭建開發環境

圖14:批量取消注釋

  1. 第二種方法:使用條件編譯

下圖中使用條件編譯指令“#if…endif”注釋了36、37、38行這三行代碼,如果要取消注釋,把0改為1即可,這種方法簡單快捷,在調試中很實用。

【STC8A8K64D4開發闆】——第1-2講:搭建開發環境

圖15:使用條件編譯指令注釋代碼塊

傳回/前進

浏覽程式的時候,經常需要傳回到上次浏覽的位置或者前進到上次傳回的位置,這時,可以使用下圖所示的快捷按鍵。

【STC8A8K64D4開發闆】——第1-2講:搭建開發環境

圖16:前進和傳回

跳轉到變量或函數定義位置

開發和調試程式時,經常需要檢視一些變量或函數的定義,這時可以按照下圖所示的方法跳轉到變量或函數定義的位置,檢視變量或函數。

  • 說明:必須編譯成功後才可以跳轉。
【STC8A8K64D4開發闆】——第1-2講:搭建開發環境

圖17:跳轉到變量或函數定義位置

查找所有包含目标字元的出處

開發和調試程式時,查找功能是必不可少的,Keil C51中使用查找功能的步驟如下(以在整個工程中查找為例說明)。

  1. 選中待查找的内容(也可以打開查找視窗後手動輸入查找内容),然後點選菜單欄中的“Edit”,在彈出的下拉菜單中點選“Find in files”打開查找視窗,如下圖所示。(也可鍵盤操作快捷鍵CTrl+F)
【STC8A8K64D4開發闆】——第1-2講:搭建開發環境

圖18:打開查找視窗

  1. 設定查找選項(這裡設定:在檔案中查找,查找條件是全文比對,查找範圍為整個工程),之後點選“Find All”按鈕,如下圖所示。
【STC8A8K64D4開發闆】——第1-2講:搭建開發環境

圖19:查找視窗

  1. 檢視結果:Keil資訊視窗中會顯示查找的結果,如下圖所示。
【STC8A8K64D4開發闆】——第1-2講:搭建開發環境

圖20:查找結果

快速打開工程m51檔案

m51檔案将單片機存儲器的使用情況以及變量的資訊展示給開發人員,通過分析m51檔案,開發人員可以了解,往往可幫忙解決許多棘手的問題。m51檔案快遞打開方法如下圖所示。

  • 說明:工程編譯成功後,才會生成m51檔案,是以工程必須編譯後才能打開m51檔案。
【STC8A8K64D4開發闆】——第1-2講:搭建開發環境

圖21:打開工程map檔案

常見問題及解決辦法

工程無法編譯

  • 現象:打開工程後,編譯按鈕無法點選,并且資訊視窗提示“C51工具鍊”未安裝,如下圖所示。
【STC8A8K64D4開發闆】——第1-2講:搭建開發環境

圖22:提示資訊

  • 原因:使用Keil MDK打開了Keil C51的工程。
  • 解決方法:安裝Keil C51軟體。
  • 注:我們電腦裡面可能也安裝了用于開發STC32 的Keil C251,如果用Keil C251打開了Keil C51的工程,也會導緻工程無法編譯。

編譯時提示代碼超限

  • 現象:Keil C51編譯工程,出現如下圖所示資訊。
【STC8A8K64D4開發闆】——第1-2講:搭建開發環境

圖23:編譯報錯

  • 原因:Keil C51沒有注冊,未注冊版本有代碼限制,是以工程較大超出2K後編譯會報錯。
  • 解決方法: 注冊Keil C51。

無法跳轉到函數或者變量的定義

當我們在keil中選中函數或者變量右鍵跳轉到定義的時候,彈出錯誤提示“無可用的浏覽資訊”,進而無法跳轉,如下圖所示。

【STC8A8K64D4開發闆】——第1-2講:搭建開發環境

圖24:無法跳轉到定義

原因主要有以下兩個方面:

  1. 工程沒有編譯或者程式中有錯誤,沒有編譯成功:這種情況下,編譯工程成功後,即可跳轉到定義。
  2. Browse information沒有勾選:點選魔術棒,,如下圖所示。
【STC8A8K64D4開發闆】——第1-2講:搭建開發環境

圖25:點選魔術棒

在彈出的對話框中切換到output頁籤,之後勾選“Browse information”選項,勾選後需要重新編譯工程。

【STC8A8K64D4開發闆】——第1-2講:搭建開發環境

圖26:勾選“Browse information”選項

無法發現器件

使用Keil C51打開工程時,提示“Err:Device not found”,如下圖所示。

【STC8A8K64D4開發闆】——第1-2講:搭建開發環境

圖27:Err:Device not found

這是因為我們沒有使用STC-ISP-15xx軟體将STC器件/頭檔案和仿真驅動添加到Keil,按照下圖所示,将STC器件/頭檔案和仿真驅動添加到Keil即可。

圖28:添加頭檔案和仿真設定

繼續閱讀