瑞薩微控制器入門
版權宣告:本文為博主原創文章,轉載請宣告
本文作者為yjydyod,轉載自:https://blog.csdn.net/yjydyod
前言
這是一篇關於瑞薩R7F0Cxxx系列微控制器的入門教程,網上關於這方面的資料特別少,可能是使用的人較少的原因吧。由於工作的原因,這段時間接觸了這款微控制器,所以寫下了這篇部落格,希望能給大家一些幫助。
R7F0Cxxx主要針對中國大陸和香港銷售的一個系列,它主要包含以下產品:
這一系列的裝置檔案在官網的IDE中並沒有整合,所以在建立工程之前必須手動匯入裝置檔案。同時IDE自帶的自動生成外圍模組驅動程式的外掛也無法使用,轉而用AP4這個獨立軟體來代替。下面我將用一個例子來展示如何開始第一個R7F0Cxxx微控制器程式。
開始
本篇應用舉例R7F0C014B微控制器控制LED燈閃爍來介紹如何開始第一個R7F0Cxxx微控制器程式。
1 規格
本篇應用說明介紹了使用定時器陣列單元、控制LED燈閃爍
表 1.1 相關外圍功能和用途
外圍功能 | 用途 |
定時器陣列單元 0 通道 0 | 0.5s定時器,用於更新led狀態 |
P70 | LED燈光控制 |
2 開發條件
本應用說明中的參考例程,需要在下面的條件下來進行。
表 2.1 開發條件專案 | 內容 |
所用微控制器 | R7F0C014B |
整合開發環境 | CS+ for CA CX V4.01.00 或者 CS+ for CC V6.01.00 |
外圍電路驅動生成程式 | AP4 for RL78_EC V1.05.00 |
模擬器 | EZ-CUBE |
微控制器裝置檔案 | r7f0c014_dif.zip |
2.1 微控制器
選用的是R7F0C014B的最小系統板,如下圖2.1.1: 圖2.1.1 最小系統板 LED的接線方式,如圖2.1.2:圖2.1.2 LED接線圖
2.2 整合開發環境
Renesas有CS+ for CACX(以下簡稱CA)以及CS+ for CC(以下簡稱CC)兩款整合開發環境,它們之間的區別在於CA終將被淘汰,現在CA版本為4.0,而CC的版本為6.0。
從供應商的技術支援得到的反饋是CA是早期的NEC開發的,而NEC的IP做得是不錯的,而瑞薩的外設做得不錯,然後集兩家之所長,瑞薩做了關於RL78系列的微控制器。但是CA的編譯器編譯效率不太好,然後瑞薩後來直接開發新的編譯器,用於取代CA的編譯器,就是後面的CC。
CA的支援度更高,資源更豐富,官網的demo都是基於CA的,但是我建議大家後面使用CC這個IDE吧,CC的使用方法基本和CA一樣,而且編譯出來的二進位制檔案比CA編譯出來的小20%,且CC能支援long long型別的量,而CA只支援long型變數。
IDE環境下載與安裝我這裡就不說了,至於使用方法我將以CC V6.01為主,CA配置的一些差別也將提及。
2.3外圍電路驅動生成程式
AP4是一個獨立軟體工具,根據使用者設定自動生成外圍模組驅動程式。 可選擇編譯工具(編譯器) 。 AP4為編譯工具產生適合的外圍模組控制程式,還為整合 開發環境生成工作空間檔案和專案檔案。AP4 for RL78_EC 支援用於中國的MCU產品 - R7F0Cxx 系列,並支援 CA78K0R 和 CC-RL 編譯器。其他微控制器可以用IDE生成。
2.4 模擬器
EZ-CUBE是具有flash儲存器程式設計功能的片上除錯模擬器,可以用於除錯程式或將程式燒寫到內建Flash儲存器微控制器中。模擬器可以代理商或者淘寶上購買,含發票價在200元左右。需要資料的話可以在官網搜尋EZ-CUBE,所有資料都能下載的到。
2.5 微控制器裝置檔案
由於R7F0Cxxx系列是針對中國專用的晶片,裝置檔案在整合開發環境中沒有整合,所有必須手動匯入。下載路徑(以R7F0C014為例):
瑞薩官網->產品->用於中國的MCU產品->R7F0C014->軟體和工具->Tools->篩選。如下圖:
3 建立工程
3.1 匯入裝置檔案
將下載的R7F014MCU裝置檔案解壓:
開啟Readme.txt檔案:
這裡介紹了不同版本的IDE如何匯入裝置檔案。就以我為例,我安裝的是CS+ for CC V6.01,所以需要把Device_Custom裡的所有檔案拷貝到C:\Program Files (x86)\Renesas Electronics\CS+\CC\Device_Custom\RL78路徑下去,再新增其他型號的晶片裝置檔案時,只要覆蓋就行。這裡需要注意的是:“第一次安裝的時候,CC資料夾下並沒有Device_Custom\RL78這個路徑,所以需要你手動建立”。
3.2 建立工程
開啟CS+ for CC軟體,在[Create New Project]板塊點選[GO]按鈕。
按照下圖所示配置設定後,點選[建立]。
3.3 程式碼生成
在本節中,您將配置您要使用的微控制器中內建的外設功能。 使用程式碼生成工具,只需執行GUI操作即可自動生成程式。
3.3.1 建立AP4工程
開啟AP4軟體,點選New Project。
按照下圖所示配置設定後,點選[建立]。
注意,這裡的專案名稱和存放位置與建立的工程一樣,這是為了方便專案管理。
3.3.2 系統設定
在這一步中,您可以配置系統的功能,例如設定時鐘或選擇是否使用片上除錯功能。
雙擊時鐘發生器,開啟系統版面。
選擇[Pin assignment]選項卡並單擊[Fix settings]按鈕。
選擇[On-chip debugging setting]選項卡並配置,如下所示。
3.3.3 管腳設定
雙擊Port Function,開啟管腳版面。選擇[Port7]標籤,並作如下設定。
在這一步中,您決定使用哪一個引腳。參閱圖2.1.2,P7的Bit 0作為輸出腳,且預設輸出為1。
3.3.4 定時器設定
雙擊[Timer Array Unit],開啟定時器版面,選擇[General Setting]標籤,並且選擇Channel 0為[Interval timer]
選擇[Channel 0]標籤並按如下設定。
3.3.5 看門狗定時器設定
雙擊[Watchdog Timer],並進行如下設定。
3.3.6 程式碼生成
當設定完成後,還需要選擇編譯器,CS+ for CC選擇CCRL,CS+ for CA CX選擇CA78K0R,最後點選[Generate code]進行程式碼生成。如下圖:
3.4 編碼
3.4.1 新增自動生成的程式碼
從AP4軟體切回CC軟體,右鍵File->Add->Add New Category建立[code generate]資料夾,如下圖。
右鍵code generate->Add->Add File
在彈出的的對話方塊中,選擇建立工程的資料夾,將cg_src中的所有檔案新增
結果如下:
然後把原有的hdwinit.asm、stkinit.asm和main.c移除,結果如下:
到此,就可以開始程式設計了。
3.4.2 編輯
雙擊r_main.c, 在下面新增定時器0通道0啟動函式R_TAU0_Channel0_Start().
雙擊r_cg_tau_user.c,對程式做如下修改
3.4.3 編譯專案
點選儲存->點選[Rebuild Project]標籤,顯示結果如下:
顯示Error0個,警告Warning 4個,其中兩個軟體有效期警告不管,另外兩個出現的原因剛好是下載到偵錯程式需要配置的資訊,這將在下一章講解。
4 除錯
4.1 連線到偵錯程式並下載
4.1.1 選擇除錯工具
右鍵【Debug Tool]->[Using Debug Tool]->[RL78 EZ Emulator].
選擇了RL78 EZ Emulator作為除錯工具
4.1.2 設定偵錯程式使用區域與程式使用區域
這一步很重要,假如不做設定的話,編譯時就出現上面描述過的兩個警告,而在下載程式時會出現E1203124 或 E0204001錯誤。
CC按下圖進行設定:
其中Option byte values for OCD與User option byte value 這兩個值可以從AP4生產的檔案r_option_cc.txt的如下兩項獲取。
再一次編譯後發現,除了軟體有效期警告外其他的兩個警告消失了。
CA按下圖進行設定
對應的值可以在AP4生成的r_option_ca.txt中找到,
4.1.3 連線EZ
按要求與EZ偵錯程式連線。
4.1.4 下載module file 到EZ
點選【Download】下載。
自此可以開始你的瑞薩微控制器之旅了,其他除錯方法以後有時間完善。
版權宣告:本文為博主原創文章,轉載請宣告
本文作者為yjydyod,轉載自:https://blog.csdn.net/yjydyod
前言
這是一篇關於瑞薩R7F0Cxxx系列微控制器的入門教程,網上關於這方面的資料特別少,可能是使用的人較少的原因吧。由於工作的原因,這段時間接觸了這款微控制器,所以寫下了這篇部落格,希望能給大家一些幫助。
R7F0Cxxx主要針對中國大陸和香港銷售的一個系列,它主要包含以下產品:
這一系列的裝置檔案在官網的IDE中並沒有整合,所以在建立工程之前必須手動匯入裝置檔案。同時IDE自帶的自動生成外圍模組驅動程式的外掛也無法使用,轉而用AP4這個獨立軟體來代替。下面我將用一個例子來展示如何開始第一個R7F0Cxxx微控制器程式。
開始
本篇應用舉例R7F0C014B微控制器控制LED燈閃爍來介紹如何開始第一個R7F0Cxxx微控制器程式。
1 規格
本篇應用說明介紹了使用定時器陣列單元、控制LED燈閃爍的應用。相關外圍功能及用途,請參見“表 1.1”。
表 1.1 相關外圍功能和用途
外圍功能 | 用途 |
定時器陣列單元 0 通道 0 | 0.5s定時器,用於更新led狀態 |
P70 | LED燈光控制 |
2 開發條件
本應用說明中的參考例程,需要在下面的條件下來進行。
表 2.1 開發條件專案 | 內容 |
所用微控制器 | R7F0C014B |
整合開發環境 | CS+ for CA CX V4.01.00 或者 CS+ for CC V6.01.00 |
外圍電路驅動生成程式 | AP4 for RL78_EC V1.05.00 |
模擬器 | EZ-CUBE |
微控制器裝置檔案 | r7f0c014_dif.zip |
2.1 微控制器
選用的是R7F0C014B的最小系統板,如下圖2.1.1: 圖2.1.1 最小系統板 LED的接線方式,如圖2.1.2:圖2.1.2 LED接線圖
2.2 整合開發環境
Renesas有CS+ for CACX(以下簡稱CA)以及CS+ for CC(以下簡稱CC)兩款整合開發環境,它們之間的區別在於CA終將被淘汰,現在CA版本為4.0,而CC的版本為6.0。
從供應商的技術支援得到的反饋是CA是早期的NEC開發的,而NEC的IP做得是不錯的,而瑞薩的外設做得不錯,然後集兩家之所長,瑞薩做了關於RL78系列的微控制器。但是CA的編譯器編譯效率不太好,然後瑞薩後來直接開發新的編譯器,用於取代CA的編譯器,就是後面的CC。
CA的支援度更高,資源更豐富,官網的demo都是基於CA的,但是我建議大家後面使用CC這個IDE吧,CC的使用方法基本和CA一樣,而且編譯出來的二進位制檔案比CA編譯出來的小20%,且CC能支援long long型別的量,而CA只支援long型變數。
IDE環境下載與安裝我這裡就不說了,至於使用方法我將以CC V6.01為主,CA配置的一些差別也將提及。
2.3外圍電路驅動生成程式
AP4是一個獨立軟體工具,根據使用者設定自動生成外圍模組驅動程式。 可選擇編譯工具(編譯器) 。 AP4為編譯工具產生適合的外圍模組控制程式,還為整合 開發環境生成工作空間檔案和專案檔案。AP4 for RL78_EC 支援用於中國的MCU產品 - R7F0Cxx 系列,並支援 CA78K0R 和 CC-RL 編譯器。其他微控制器可以用IDE生成。
2.4 模擬器
EZ-CUBE是具有flash儲存器程式設計功能的片上除錯模擬器,可以用於除錯程式或將程式燒寫到內建Flash儲存器微控制器中。模擬器可以代理商或者淘寶上購買,含發票價在200元左右。需要資料的話可以在官網搜尋EZ-CUBE,所有資料都能下載的到。
2.5 微控制器裝置檔案
由於R7F0Cxxx系列是針對中國專用的晶片,裝置檔案在整合開發環境中沒有整合,所有必須手動匯入。下載路徑(以R7F0C014為例):
瑞薩官網->產品->用於中國的MCU產品->R7F0C014->軟體和工具->Tools->篩選。如下圖:
3 建立工程
3.1 匯入裝置檔案
將下載的R7F014MCU裝置檔案解壓:
開啟Readme.txt檔案:
這裡介紹了不同版本的IDE如何匯入裝置檔案。就以我為例,我安裝的是CS+ for CC V6.01,所以需要把Device_Custom裡的所有檔案拷貝到C:\Program Files (x86)\Renesas Electronics\CS+\CC\Device_Custom\RL78路徑下去,再新增其他型號的晶片裝置檔案時,只要覆蓋就行。這裡需要注意的是:“第一次安裝的時候,CC資料夾下並沒有Device_Custom\RL78這個路徑,所以需要你手動建立”。
3.2 建立工程
開啟CS+ for CC軟體,在[Create New Project]板塊點選[GO]按鈕。
按照下圖所示配置設定後,點選[建立]。
3.3 程式碼生成
在本節中,您將配置您要使用的微控制器中內建的外設功能。 使用程式碼生成工具,只需執行GUI操作即可自動生成程式。
3.3.1 建立AP4工程
開啟AP4軟體,點選New Project。
按照下圖所示配置設定後,點選[建立]。
注意,這裡的專案名稱和存放位置與建立的工程一樣,這是為了方便專案管理。
3.3.2 系統設定
在這一步中,您可以配置系統的功能,例如設定時鐘或選擇是否使用片上除錯功能。
雙擊時鐘發生器,開啟系統版面。
選擇[Pin assignment]選項卡並單擊[Fix settings]按鈕。
選擇[On-chip debugging setting]選項卡並配置,如下所示。
3.3.3 管腳設定
雙擊Port Function,開啟管腳版面。選擇[Port7]標籤,並作如下設定。
在這一步中,您決定使用哪一個引腳。參閱圖2.1.2,P7的Bit 0作為輸出腳,且預設輸出為1。
3.3.4 定時器設定
雙擊[Timer Array Unit],開啟定時器版面,選擇[General Setting]標籤,並且選擇Channel 0為[Interval timer]
選擇[Channel 0]標籤並按如下設定。
3.3.5 看門狗定時器設定
雙擊[Watchdog Timer],並進行如下設定。
3.3.6 程式碼生成
當設定完成後,還需要選擇編譯器,CS+ for CC選擇CCRL,CS+ for CA CX選擇CA78K0R,最後點選[Generate code]進行程式碼生成。如下圖:
3.4 編碼
3.4.1 新增自動生成的程式碼
從AP4軟體切回CC軟體,右鍵File->Add->Add New Category建立[code generate]資料夾,如下圖。
右鍵code generate->Add->Add File
在彈出的的對話方塊中,選擇建立工程的資料夾,將cg_src中的所有檔案新增
結果如下:
然後把原有的hdwinit.asm、stkinit.asm和main.c移除,結果如下:
到此,就可以開始程式設計了。
3.4.2 編輯
雙擊r_main.c, 在下面新增定時器0通道0啟動函式R_TAU0_Channel0_Start().
雙擊r_cg_tau_user.c,對程式做如下修改
3.4.3 編譯專案
點選儲存->點選[Rebuild Project]標籤,顯示結果如下:
顯示Error0個,警告Warning 4個,其中兩個軟體有效期警告不管,另外兩個出現的原因剛好是下載到偵錯程式需要配置的資訊,這將在下一章講解。
4 除錯
4.1 連線到偵錯程式並下載
4.1.1 選擇除錯工具
右鍵【Debug Tool]->[Using Debug Tool]->[RL78 EZ Emulator].
選擇了RL78 EZ Emulator作為除錯工具
4.1.2 設定偵錯程式使用區域與程式使用區域
這一步很重要,假如不做設定的話,編譯時就出現上面描述過的兩個警告,而在下載程式時會出現E1203124 或 E0204001錯誤。
CC按下圖進行設定:
其中Option byte values for OCD與User option byte value 這兩個值可以從AP4生產的檔案r_option_cc.txt的如下兩項獲取。
再一次編譯後發現,除了軟體有效期警告外其他的兩個警告消失了。
CA按下圖進行設定
對應的值可以在AP4生成的r_option_ca.txt中找到,
4.1.3 連線EZ
按要求與EZ偵錯程式連線。
4.1.4 下載module file 到EZ
點選【Download】下載。
自此可以開始你的瑞薩微控制器之旅了,其他除錯方法以後有時間完善。