基于RL78/G16 FPB的触摸样例工程创建
本篇将分两部分为大家介绍RL78/G16 FPB触摸样例工程创建演示,首先是RL78/G16快速原型开发板(FPB),然后是如何在e2 studio开发环境中创建触摸工程,以及通过添加LED点亮的应用代码来演示触摸按键按下抬起的效果。
快速原型开发板FPB
创建工程
触摸和LED闪烁演示
e2 studio:2023-10 (QE for Cap touch v3.4.0)
仿真器:E2 Lite2
开发板:RL78/G16快速原型开发板
*RL78/G16的Captouch开发必须使用3.2.0以上的版本
从开发板左侧注释来看,包含MCU Header、Pmod接口、Grove接口、用户LED、RL78/G16 MCU,USB Type C接口、电源LED,以及复位按键等等。
从开发板右侧注释来看,包含Arduino接口、Pmod接口、仿真器接口、用户按键、触摸Slider和button,以及MCU Header等等。
您可点击文末阅读原文访问RL78/G16 FPB产品页了解更多信息。
下面介绍如何在e2 studio中创建触摸工程
首先打开e2 studio 2023-10
选择/设定工作空间
新建基于Renesas CC-RL Tool chain的RL78工程
设定工程名,新工程的Project Name以RL78G16_FPB_Touch_demo为例
选择Tool chain,这里默认为Renesas CC-RL,Device选择RL78-G16 32pin R5F121BCxFP
仿真器选择E2 lite(RL78)
使用智能配置器
来到智能配置器的Overview标签页,可以看到下方有board、clocks、System、components等选项卡
在Clocks选项卡中,设定工作模式,VDD setting设定为2.7V≤VDD≤5.5V
System页根据需要来设定,例如在on-chip debug setting中,需要根据使用的仿真工具来设定,如当选择使用e2 lite时,选择使用Use emulator,然后设置使用RESET pin,以及复位产生电平为2.52V
接下来在Components中添加相应的驱动,例如,首先添加触摸需要的r_ctsu,也就是触摸感应单元的底层驱动
然后对r_ctsu进行配置,例如选择使用Tscap引脚以及使用的触摸通道
Button:TS06,TS07
Slider:TS08,TS09,TS12
添加触摸需要的Touch middleware,也就是rm_touch,是button、slider、wheel等触摸应用的驱动
然后对Touch middleware进行配置,由于RL78/G16需要使用串行通信进行Auto tuning process和monitor监控,这里要设定support QE monitor using UART为enable,support QE tuning using UART为enable,并设定UART通道为UART0
然后添加Ports端口的驱动,在RL78/G16 FPB触摸样例工程创建演示中,我们使用通用IO来驱动LED的点亮
使能PORT1的设定
具体使用通用IO PORT1的P12和P15来驱动LED
LED1: P12 output
LED2: P15 output
由于RL78/G16需要使用串行通信进行Auto tuning process,也就是自动调整过程,因此需要添加UART的驱动。这里设置为UART0通道,操作设定为发送和接收。
下图是UART配置页面,发送和接收的波特率都设置为115200。
此时智能配置器的设定就全部完成了,点击右上方的Generate code,然后编译程序。
编译完成后,进行debugger的配置,如果使用E2 lite或者EZ-Cube-2,EZ-cube3,那么在debugger选项卡里的Debugger hardware这里选择e2 lite(RL78)
完成以上设定,我们就可以通过QE for CapTouch工具来一步一步创建触摸应用程序了。首先打开QE for CapTouch的workflow工作流准备建立配置,在步骤一Preparation里的Select a Project里选择需要创建触摸应用的工程,然后在Prepare a Configuration里选择Create a new configuration
这时,会弹出创建触摸接口的页面,在右侧触摸接口的列表里分别选择button和slider,并拖入左边的画布,然后为每一个触摸电极设定正确的触摸通道,可以看到在设定前每个触摸电极的颜色为红色
在正确设定完成后,每个触摸电极的颜色变为绿色,点击Create按键,关闭页面
2 Button:TS06、TS07
1 Slider:TS12、TS09、TS08
在Auto tuning自动调整步骤之前,需要先开始自动调整前的准备。设定串口中断服务程序,由于需要使用串口连接目标板进行Tuning,因此需要添加建立串口连接的相关代码,例如,在Config_UART0_user.c中,在相应位置正确添加touch_uart_callback(uint16_t event) 函数的声明和相关调用
然后在第二步Tuning Touch Sensors步骤里点击Output files,这会在工程目录下生成qe_gen文件夹以及相关文件。
主程序中,添加qe_touch_sample.c中void qe_touch_main(void);函数声明,以及main函数中对 “qe_touch_main();”的调用。
然后编译程序,并运行程序
连接仿真器-E2-Lite,连接PC。硬件连接完成后,进入仿真状态,运行程序。
点击Start Tuning进入自动调整,在这个步骤里,完成触摸电极寄生电容的测量、偏置电流的调整、以及灵敏度的调整。这里不做过多介绍。
注意,波特率和Port端口要设定正确。
自动调整完成后,会显示调整的结果,在列表中显示了寄生电容、sensor驱动频率,阈值以及扫描时间等信息
点击Output Parameter Files,输出自动调整的结果参数文件,并在工程目录下生成qe_gen文件夹以及三个配置文件,包括qe_touch_config.c, qe_touch_config.h,qe_touch_define.h.
注意,这三个文件在auto tutuning自动调整步骤中已经生成过,此处会覆盖之前生成的同名文件
在第三步Coding步骤中,点击Show Sample,输出触摸Sample code
在弹出的对话框中,可以先预览即将生成的Sample,然后点击Output a file即可,在demo工程目录下的qe_gen文件夹中将生成sample code文件,qe_touch_sample.c
注意,这个文件在auto tutuning自动调整步骤中已经生成过,此处会覆盖之前生成的同名文件
触摸Sample Code主要由qe_touch_main函数组成,包含了触摸应用的主要函数API的循环调用,例如rm touch Open,完成触摸驱动的初始化,rm_touch_scanstart启动触摸通道的测量,rm touch dataget,取得button、slider、wheel的触摸结果,并保存在button status、slider position、wheel position三个变量中
根据Button1和Button2的状态点亮LED的Sample Code
LED1、LED2宏定义、初始化
下面,我们添加LED点亮的应用代码,首先在qe_touch_sample.c中,添加USER_LED1和USER_LED2的宏定义以及完成初始化
然后在RM_TOUCH_DatayGet()函数后添加按键判断的应用代码,然后编译,至此,Demo的样例代码就完成了。
编译完成,进入仿真状态,在QE for CapTouch的第四步Monitoring监控里,点击Connect,通过串口建立连接,然后点击Monitoring步骤中的Show View按键
在打开的多个监控窗口中,即可以图形方式来查看触摸按键的相关效果,比如左上角的board monitor 视图里可以显示触摸行为,左下角的multi status chart视图窗口可以显示多个按键的测量计数值曲线,中间的status chart视图里可以显示单个按键的计数值、参考值、阈值、信噪比等具体信息,最右侧的parameter参数窗口显示当前触摸按键运行参数的设定值。
如您在使用瑞萨MCU/MPU产品中有任何问题,可识别下方二维码或复制网址到浏览器中打开,进入瑞萨技术论坛寻找答案或获取在线技术支持。
https://community-ja.renesas.com/zh/forums-groups/mcu-mpu/
1
END
1
推荐阅读
RL78/G16快速原型开发板FPB与EZ-Cube3仿真器连接演示
RL78/G16触摸套件开发板(EVB)演示(上)
RL78/G16触摸套件开发板(EVB)演示(下)