本節描述了使用MINICUBE2 進行片上調試的系統配置,啟動/關閉順序和調試中的若干注意事項。 1.2.1 調試功能
以78K0S 微控制器作為目標設備,表5-3 列出了ID78K0S-QB 調試器的調試功能。如果未使用ID78K0SQB作為調試器(使用第三方制造商的調試器),則調試功能可能會有所不同,所以請檢查所使用調試器的說明。
注意 INTP 引腳的使用描述請參考文檔QB-MINI2 Operating Precautions.X1和X2引腳只在調試器第一次啟動時使用(下載監視器程序時). 1.2.2 系統配置
<1> 主機
要求有USB 接口
<2> 軟件
包括調試器,USB 驅動器,設備文件等等.
<3> USB 線(附件)
<4> MINICUBE2(本產品)
<5> 16-Pin 目標線纜(附件)
<6> 目標連接口(單獨出售) 1.2.3 系統啟動順序
本節描述了系統啟動的順序。請注意按次序操作。
(1) 軟件的準備和安裝
以下軟件是在線調試所必須的。關于軟件的準備和安裝,請查閱MINICUB2 附帶的安裝手冊。
• 調試器
• USB 驅動
• 設備文件(如果使用第三方調試器,可能不需要)
(2) 開關設置
將模式選擇開關設置為“M1”,電源選擇開關則請查閱表5-4。
注意 在USB 線連接狀態時,請勿改變開關的設置。
注意最大允許電流100mA,所以請勿將MINICUBE2 連接到電流很大的目標系統上。在MINICUBE2 與主機連通后,主機始終保持向MINICUBE2 供電。
(3) 連接目標系統
MINICUBE2 到目標系統的連接如圖5-14 所示。在打開給目標系統的電源前連接。
(4) 連接USB 線纜
請在目標系統上電之前,將MINICUBE2 連接到主機。
當電源選擇開關打在“T”位置時,連接后模式燈為白色并開始閃爍。
當電源選擇開關打在“3”或者“5”位置時,連接后模式燈點亮為白色。
(5) 目標系統上電
打開目標系統的電源。如果電源選擇為“3”或“5”,則這一步并不是必需的。在上電后模式燈點亮為白色。
(6) 啟動調試器
打開調試器,模式燈變為綠色。
此步驟之后的操作,請參閱調試器的用戶手冊。
如果調試器無法正常開啟或者操作不穩定,可能是由以下問題引發的。
• MINICUBE2和目標系統之間通信錯誤
通信是否正常可以用OCD 檢測器來檢查。具體細節請查閱OCD 檢測器用戶手冊。
• 用戶資源沒有預留
為了用MINICUBE2 進行調試,調試監視區域必須被預留。具體細節請查閱5.2.5 節用戶資源的保留。
• 使用了不支持的軟件(調試器,設備文件或者固件)
所使用的軟件可能不支持目標設備的調試。請查閱文件“QB-MINI2 操作注意事項”,檢查目標設備所支持的正確版本。當使用的軟件由NEC Electronics 第三方合作公司提供時,請查閱第三方公司提供的相關文檔。
• MINICUBE2損壞
MINICUBE2可能被損壞。 1.2.4 系統關閉順序
停止調試并關閉系統時,請按照下列順序操作。
如果沒有按照下列順序操作,目標系統或者MINICUBE2 可能被損壞。
(1) 停止調試器
停止調試器的運行。
(2) 目標系統電源關閉。
關閉目標系統的電源。如果電源選擇開關放在“3”或“5”的位置,則無需本步操作。
(3) 移除USB 線纜
從MINICUBE2 或主機上將USB 線拔下。
(4) 移除目標線纜
從MINICUBE2 或目標系統上將目標線纜拔下。 1.2.5 用戶資源的保留
用戶必須準備下面的事項來執行MINICUBE2 和目標設備之間的通訊和實現每一個調試功能。參考下面幾頁的描述并在用戶程序或編譯器選項里進行設置。
• 內存空間的保留
圖5-16 中的陰影部分是存放調試監視程序的保留區域,因此用戶程序不能分配到這些空間。
通訊用的串行接口保留
千萬不要改變由調試監視程序執行,用作MINICUBE2 與目標設備間通訊的INTP 引腳的寄存器設置。
(1) 調試監視程序的保留區域
在目標設備的內部ROM 中,圖5-16 的陰影部分是被分配的調試監視程序的區域。調試監視程序執行的是對調試通訊接口的初始化處理和對CPU 的RUN 或break 處理。內部ROM 區域必須填滿0xFF。這個區域千萬不要被用戶程序重寫。
[如何預留區域]
如果用戶程序不使用這塊區域就沒有必要一定要保留這塊區域。
為了避免調試器啟動期間可能產生的問題,因此,推薦通過編譯器來提前保留這塊區域。
下面列出了使用NEC 電子的匯編編譯器RA78K0S 來保留區域的例子,像下面的一樣增加匯編源代碼。
注意聲明到0ed0h部分的地址要和目標設備的flash內存容量一致(參考下面的表格)。
(2) 調試用堆棧區域的保留
在目標設備的內部RAM 空間里,圖5-16 的陰影部分是調試監視程序用作堆棧(5 字節)的區域。由于本區域的指定緊鄰在被用戶程序使用的堆棧區域之前,所以本區域的地址根據堆棧的增加和減少而有所不同。因此,堆
棧指針必須被設置以留出用作調試的堆棧大小(5 字節)的余量。
下圖展示了堆棧區域增加時的情況,圖中的內部高速RAM 從0xFE00 開始。
[如何預留這段區域]
請參考下面的地址范圍來設置堆棧指針。
例當內部高速RAM 從0xFE00 開始時
在0xFE05 到0xFEFF 范圍內
(3) 通訊串行接口的保留
INTP 引腳用作MINICUBE2 和目標系統間的通訊。和INTP 引腳相關的設置通過調試監視程序來執行,但是如果這個設置被用戶程序改變,會產生通訊錯誤。
為了防止這樣的問題產生,在用戶程序里通訊串行接口必須保留。
[如何保留通訊串行接口]
生成用戶程序時要注意下面的幾點。
• 中斷屏蔽標志寄存器
不要使用INTP 引腳對應的中斷屏蔽標志寄存器來取消中斷。
1.2.6 X1 和X2 引腳復用功能的調試
X1 和X2 引腳在調試器第一次啟動(下載監視程序時)和用QB-Programmer 執行編程時使用。
在監視程序已經被下載到目標設備后不需要使用X1 和X2 引腳,因此X1 和X2 引腳和它們的復用功能可通過下面的順序來調試。為了實現X1 和X2 引腳的調試,電路必須要恰當的設計。詳細信息請參考5.1.5 節X1 和X2 引腳的連接。
(1) 斷開外部和目標設備X1,X2 的連接。(若設計成如圖5-11 所示的電路,短接跳線針1 和2)
(2) 給目標系統和MINICUBE2 上電。
(3) 啟動調試器。在這個時候不要下載load 模塊注意。(監視程序會在啟動后隨即自動被下載。)
(4) 關閉調試器。
(5) 目標系統和MINICUBE2 的電源。
(6) 連接外部和目標設備的X1,X2 引腳。(若電路如表5-11 所示設計, 短接跳線針2 和3。)
(7) 按照5.2.3 節系統啟動順序給目標系統和MINICUBE2 上電。
(8) 啟動調試器。
注意如果已經由項目管理器(PM+)生成項目,load模塊會自動被下載。這種情況下,關閉PM+然后啟動調試器。
備注 下一次調試器啟動,從步驟(7)執行。然而,假如程序通過QB-Programmer寫入,監視程序被擦除,順序必須重新從步驟(1)開始。 1.2.7 調試注意事項
本節描述了在78K0S 微控制器上進行在線調試的注意事項。
請認真閱讀下列事項,以保證MINICUBE2 的正常使用。
(1) 處理用于調試的設備
不要在批量生產的產品上安裝曾用于調試的設備,因為Flash 存儲器在調試過程中曾被多次重寫,Flash 存儲器的重寫次數無法保證。
(2) 調試器操作速度降低的情況
當過多內存或者寄存器內容被顯示在一個調試器窗口里時,調試器操作速度可能會降低。當使用USB1.1 接口的主機時會特別明顯。
當flash 內存被過多寫入時調試器響應也會變慢。
這種現象可以通過提高CPU 操作時鐘頻率,設置PCC 或PPCC 寄存器來加以改善。
(3) Reset 處理
如果目標設備的RESET 引腳是作為端口使用,要通過用戶程序設置使能RESET 引腳,如option byte 設置。
(4) 當斷點不能執行時
如果滿足下面條件其中之一,強制斷點不會被執行。
• 中斷被禁止(DI)
• 被用作MINICUBE2 和目標設備間通訊的INTP 引腳產生的中斷被屏蔽
• INTP引腳對應的復用功能端口沒有被設置成輸入模式
• 和INTP引腳對應的外部中斷沿沒有被設置為上升沿
• 通過可屏蔽中斷待機模式被禁止時,進入待機模式
(5) Flash 自編程
如果分配給調試監視程序的空間被flash 自編程重寫,調試器將不再正常操作。
(6) reset 后的操作
在外部引腳reset 或者內部reset 后,監視程序會執行調試初始化處理。因此,從reset 產生到用戶程序執行的時間會和實際設備的操作有所不同。
(7) POC 功能仿真
目標設備的POC 功能不能被仿真。要確保調試期間給目標系統的電源不能被斷掉。
(8) 使用實機調試而不使用MINICUBE2
如果是用實機調試而不是MINICUBE2,使用QB-Programmer 寫入用戶程序。通過調試器下載的程序包括監視程序,如果不通過MINICUBE2 控制會有程序故障。
(9) 保護字節的注意事項
設置保護字節以執行對整個塊的編程和整個塊的擦除。
文章來源:http://www.originic.hk/Item/Show.asp?m=1&d=2055
|