一、背景
在常见的智能家居、工业应用场景中,温度测量通常是必不可少的。瑞萨R78/G15这款16位MCU为实现高可靠性、低功耗、低成本性的温度测量电路提供了可能。
其主要的外设功能如下:
CPU主频:16MHz
定时器:8 路 16 位定时器,1 路看门狗定时器,1 路 12 位间隔定时器。
模拟功能:11 路 10 位 A/D 转换器,比较器。
片上振荡器 (MHz):高速:1、2、4、8、16MHz;低速:15kHz。
通信接口:SCI(CSI、UART、简单版 I2C)、I2C。
其他:可选通电重置、低电压检测、片上调试 2.4V 到 5.5V(单线、双线)。
RL78系列的封装引脚在8 到 20 引脚,包含了WDFN、LSSOP、SSOP等多种系列的封装。其适用于-40℃-125℃的各种工作环境温度,具有极高的产品稳定性。产品内置高精度(±1.0%)高速片上振荡器、数据闪存和丰富的串行接口和比较器,对于小型应用场景,极大的节省了空间。RL78/G15包括丰富的开发环境,只需连接USB线缆, 即可编写和调试评估板。
二、方法说明/操作说明
所用开发工具:e2 studio 24.10.0
使用R78/G15评估板:拟完成串口通信驱动、温度传感器SHT20驱动
三、 系统框图介绍
RL78/G15板载串口类调试器一个,在不使用仿真器情况下可以进行大部分的调试工作,串口通信需要使用单独的USB转TTL模块,RL78/G15获取温度传感器SHT20的方式是IIC通信
四、工程创建&代码介绍
4.1
E2 studio开发环境安装可以参考以下文章,这里对工程创建进行介绍
https://bbs.eeworld.com.cn/thread-1232728-1-1.html
新建一个e2 studio工作空间,然后新建RL78工程
选择RL78/G15型号为R5F12068xSP,在目标板处下拉选中RL78/G15 FSP
右边的创建硬件调试配置,选择通信端口
生成工程结构一览
4.2
工程新建完成点击
编译无误后,在菜单栏下找到运行打开调试配置
将COM端口设为开发板与PC机的实际连接端口
完成后点击调试,进入调试状态
4.3 使能串口外设
点击加号添加组件
选中UART组件
串口外设设置
以上为串口发送的参数设置,设置无误后点击右上角Generate Code
main函数加入串口外设使能
int main(void) { EI(); R_Config_UART0_Start(); } int main(void) { EI(); R_Config_UART0_Start(); const uint8_t send_buff[]="Hello RL78/G15.\n"; while(1) { // TODO: add application code here R_Config_UART0_Send(send_buff,sizeof(send_buff)); R_BSP_SoftwareDelay(500, BSP_DELAY_MILLISECS); } return 0; }
运行结果
4.4 配置IIC外设
智能配置器新增IIC外设
板载3个IIC可选,由于串口外设与IIC外设出现引脚冲突,这里选择IIC1
IIC外设参数设置,这款MCU对不同外设分配的时钟信号有一定限制,所以不同外设之前对于fCLK时钟的分频系数尽量保持一致,否则会报错
五、结果&结论
使用e2 studio能够快速构建开发板应用工程,e2 studio作为基于Eclipse的嵌入式IDE工具,其操作响应速度很不错,驱动串口外设能够正常工作,但是IIC驱动目前还有些问题,待后续再解决。低功耗性能相当不错。
六、点灯测试Demo
七、心得体会
RL78/G15的编程开发有点类似之前接触的51单片机,其工程是可以支持寄存器编程开发的,作为初学者我选择了官方的FSP驱动库,总体来说,这款MCU在普通应用领域它的性能足以胜任,开发工具的使用体验也很不错。