前篇回顾
新品开箱 | rl78/g15开发板开箱与开发环境搭建
基于e2 studio点灯
新建工程
文件->新建->瑞萨c/c++项目->renesas rl78
构建项目
仿真配置
点开renesas gdb hardware debug下的led hardwaredebug
仿真器设置如下,点击调试
进入仿真环境如下
配置好后可以直接点击如下图标进入
参考《rl78/g15 fast prototyping board user’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. *//* *//***************************************************************/#include iodefine.h#include iodefine_ext.hint 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< 0);}return 0;}int main(void) {led_init();while(1) {// todo: add application code hereled_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
同步整流基本原理
USB传输的嵌入式心电图量测系统设计
基于ARM编译器版本5的工程迁移与适配-堆栈初始化以及总线异常问题
TA8772AN引脚功能的电压资料参数
空调螺杆机组是什么 它的工作原理是什么
新品开箱 | RL78/G15开发板 Step by Step点灯
STM32F10x_硬件I2C主从通信 (轮询发送,中断接收)
10000mAh卖69元移动电源设计解密:直逼小米!
中国首例机器人辅助冠状动脉介入治疗手术完成
诺基亚贝尔特邀多领域专家于线上举办“全球5G大咖谈”直播会议
UPS电源如何使用,在过载时保护它
2021年FTF青少年无人机大赛浙江省选拔赛通知
MCU硬件在环(HiL)仿真测试系统组成
TDK首款紧凑SMD技术的CeraCharge固态充电电池
正激式开关电源使用什么MOS管
Vivo与Elliptic Labs合作的首款智能手机Vivo Y78+发布
如何看待3D DRAM技术?
虹科TSA HSM时间戳服务器的详细介绍
首台达芬奇机器人上岗 标志着河北迈入了“机器人微创手术”新阶段
具有热能收集功能的无电池设备