前篇回顧
新品開箱 | RL78/G15開發板開箱與開發環境搭建
基于e2 studio點燈
新建工程
文件->新建->瑞薩C/C++項目->Renesas RL78
構建項目
仿真配置
點開Renesas GDB Hardware Debug下的led Hardwaredebug
仿真器設置如下,點擊調試
進入仿真環境如下
配置好后可以直接點擊如下圖標進入
參考《RL78/G15 Fast Prototyping BoardUser’s Manual》
IO點燈
從原理圖可以看到P20和P21控制LED2和LED1,低點亮。
閱讀《RL78/G15 User’s Manual: Hardware》的《CHAPTER 4 PORT FUNCTIONS》
和《CHAPTER 2 PIN FUNCTIONS》
寄存期
PM0/PM2/PM4/PM12:設置指定端口指定IO的輸入輸出,一個bit對應一個IO,0輸出,1輸入
P0, P2, P4, P12, P13:輸出或讀指定端口的指定IO的狀態,一個bit對應一個IO。
PU0, PU2, PU4, PU12:設置指定端口指定IO的上拉電阻是否使能,一個bit對應一個IO,1使能,0不使能。必須滿足以下條件
● PMmn = 1 (Input mode)
● PMCmn = 0 (Digital I/O)
● POMmn = 0 (Normal output mode)
POM0, POM2, POM4:設置指定端口指定IO的輸出模式,一個bit對應一個IO,0正常模式,1開漏輸出
PMC0, PMC2:設置指定端口指定IO的模數模式,一個bit對應一個IO,0數字端口,1模擬端口
PIOR0 to PIOR3:外設功能重定向。
配置代碼
寄存器定義位于
iodefine.h
iodefine_ext.h
led.c中包含該頭文件即可
#include"iodefine.h"
#include"iodefine_ext.h"
代碼如下
/***************************************************************/
/* */
/* PROJECT NAME : led */
/* FILE : led.c */
/* DESCRIPTION : Main Program */
/* */
/* This file was generated by e2 studio. */
/* */
/***************************************************************/
int led_init(void)
{
PM2 &= ~(1u<<0); /*P20 out*/
P2 |= (1u<<0); /*P20 out 1*/
PU2 &= ~(1u<<0); /*P20 On-chip pull-up resistor not connected */
POM2 &= ~(1u<<0); /*P20 Normal output mode */
PMC2&= ~(1u<<0); /*P20 Digital I/O (alternate function other than analog input */
PM2 &= ~(1u<<1); /*P21 out*/
P2 |= (1u<<1); /*P21 out 1*/
PU2 &= ~(1u<<1); /*P21 On-chip pull-up resistor not connected */
POM2 &= ~(1u<<1); /*P21 Normal output mode */
PMC2&= ~(1u<<1); /*P21 Digital I/O (alternate function other than analog input */
return 0;
}
int led_set(int id,int value)
{
switch(id)
{
case 0:
if(value)
{
P2 &= ~(1u<<0); /*Set P20 output to low,LED1 on*/
}
else
{
P2 |= (1u<<0); /*Set P20 output to hight,LED1 off*/
}
break;
case 1:
if(value)
{
P2 &= ~(1u<<1); /*Set P20 output to low,LED2 on*/
}
else
{
P2 |= (1u<<1); /*Set P21 output to hight,LED2 off */
}
break;
default:
break;
}
return 0;
}
int led_delay(int t)
{
volatile int cycle = 100;
for(int i=0; i{
cycle = 100;
while(cycle-- > 0);
}
return 0;
}
int main(void) {
led_init();
while(1) {
// TODO: add application code here
led_set(0,1);
led_set(1,1);
led_delay(100);
led_set(0,0);
led_set(1,0);
led_delay(100);
}
return 0;
};>
仿真調試
編譯
暫停在了復位代碼處
運行
停在了main函數的斷點處,繼續運行
可以看到LED1和LED2閃爍
可以在指定位置雙擊打斷點
查看對應的寄存器
參考
開發板資源
https://www.renesas.cn/cn/zh/products/microcontrollers-microprocessors/rl78-low-power-8-16-bit-mcus/rtk5rlg150c00000bj-rl78g15-fast-prototyping-board
主要下載查看User's manual用戶手冊和Schematic原理圖。
MCU資料
https://www.renesas.cn/cn/zh/products/microcontrollers-microprocessors/rl78-low-power-8-16-bit-mcus/rl78g15-compact-low-pin-count-microcontrollers-rich-peripheral-functions-general-purpose-applications
主要下載查看Datasheet數據手冊和User’S Manual用戶手冊,編程主要參考后者,其他按需參考。
總結
以上step by step,介紹了RL78/G15開發板及其資源,搭建了開發環境并直接根據手冊配置寄存器進行了點燈測試,介紹了仿真調試。入門RL78/G15開發,這一篇就夠了。通過以上體驗,總結如下:
1.開發板未提供MicroUSB線,最好能提供,這樣開箱即可使用。
2.e2 studio基于eclipse整體而言入手比較簡單。
3.板載調試器這一點非常方便。
4.官方開發文檔資料非常詳細。
5.還可以跑RTOS μITRON,不過這里還沒試 參見https://www.renesas.cn/cn/zh/software-tool/ri78v4-v2-real-time-os-rl78-family。
6.封裝小,適合各種低成本低功耗應用場景。
7.開發工具開發方式比較簡單。
1
END
1
-
mcu
+關注
關注
146文章
17301瀏覽量
352136 -
瑞薩
+關注
關注
35文章
22310瀏覽量
86583
原文標題:新品開箱 | RL78/G15開發板 Step by Step點燈
文章出處:【微信號:瑞薩MCU小百科,微信公眾號:瑞薩MCU小百科】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論