隆太威电子网欢迎您!
新闻资讯

瑞萨RL78/F22 MCU基于CS+开发环境创建触摸应用样例工程

作者:    发布时间:2026-03-11 14:02:16    浏览量:

目录

01 概述
02 瑞萨RL78/F22 Target Board简介
03 基于CS+创建触摸应用样例工程
–在CS+中创建新工程
–在Smart Configurator中为新工程添加驱动程序
–使用QE for Capacitive Touch开发触摸应用
–添加应用代码实现LED闪烁

1概述

本文包含以下主要内容:

瑞萨RL78/F22 Target Board简介

基于CS+创建触摸样例工程

使用QE for Capacitive Touch开发触摸应用

触摸和LED闪烁演示

本文基于以下开发环境

软件运行环境

硬件运行环境

2瑞萨RL78/F22 Target Board简介

瑞萨RL78/F22 target board

(RTK7F125FPC01000BJ)

硬件运行环境搭建

硬件连接框图

3基于CS+创建触摸样例工程

在CS+中创建新工程

打开CS+

在菜单栏点击[File]->[New]->Create New Project

按照下图所示进行设置

点击[Create]新建工程 RL78/F22_TB_TOUCH_SAMPLE

配置Debug tool

点击RL78 Simulator(Debug Tool)

鼠标右键打开Using Debug Tool,选择[RL78 E2 Lite]

在Smart Configurator中为新工程添加驱动程序

打开Smart Configurator

双击[Smart Configurator Design Tool]

Smart Configurator

打开后如下图所示

默认显示Overview选项卡

Smart Configurator设定

Clocks选项卡

设定VDD Setting

本例为2.7V ≤ VDD ≤ 5.5V

其他设置保持默认

System选项卡

按照下图进行设定

Components选项卡

r_bsp设定

保持默认

Components选项卡

点击

按钮

在New Component对话框中选择Capacitive Sensing Unit driver.(r_ctsu)

Components选项卡

r_ctsu设定

根据实际电路设定触摸通道

勾选TSCAP

勾选TS2

勾选TS3

按下图所示

Components选项卡

点击

按钮

在New Component对话框中选择Touch Middleware.(rm_touch)

Components选项卡

rm_touch设定

按下图所示设定

Components选项卡

点击

按钮

在New Component对话框中选择UART Communication

Components选项卡

UART Communication设定

按下图所示设定

Components选项卡

UART Communication设定

Transmission选项卡

按下图所示设定

Components选项卡

UART Communication设定

Reception选项卡

按下图所示设定

Pins选项卡

确认UART的RXD0和TXD0引脚

RXD0:P16

TXD0:P15

按下图所示

Components选项卡

点击

按钮

在New Component对话框中选择Ports

Components选项卡

Ports设定

用于驱动Test LED

按右图所示

Components选项卡

确认r_bsp

Initialization of peripheral functions by Code Generator/Smart Configurator

Enable

点击

生成驱动程序

返回到CS+窗口

确认驱动程序的添加

使用QE for Capacitive Touch开发触摸应用

打开QE For Capacitive touch Ver4.20 Standalone版本

Preparation

工程设定

工程设定

选择工程文件夹

选择MCU

Configuration

建立配置

建立配置

在画布中添加Button

双击Button建立配置

为Button设定触摸通道和阻尼电阻(Button00/TS02/560ohm,Button01/TS03/560ohm)

建立配置

点击Create完成设定

输出调优(Tuning)需要的文件

输出到工程路径下新建的qe_gen文件夹

输出调优(Tuning)需要的文件后,在弹出的对话框中,设定外设工作频率(本例中为32Mhz)

输出调优(Tuning)需要的文件后,在弹出的对话框中,设定MCU供电电压(本例中使用仿真器供电3.3V)

输出调优(Tuning)需要的文件后,在弹出的对话框中,接下来将按照提示进行相关设定,为后续调优(Tuning)做准备

调优(Tuning)前的准备工作

双击工程目录下的CC-RL(Build Tool),打开CC-RL Property

调优(Tuning)前的准备工作

在Common Options选项卡中Frequently used Options(for Compile)的Macro definition中添加QE_TOUCH_CONFIGURATION

调优(Tuning)前的准备工作

在Common Options选项卡中Frequently used Options(for Compile)的Additional include paths中添加qe_gen文件夹路径

调优(Tuning)前的准备工作

在Common Options选项卡中Frequently used Options(for Compile)的Additional include paths中添加qe_gen文件夹路径

调优(Tuning)前的准备工作

在Windows浏览器中找到工程文件夹下的qe_gen文件夹,拖拽到CS+中的工程目录的File下面

调优(Tuning)前的准备工作

在main.c中添加qe_touch_main()的声明和调用

调优(Tuning)前的准备工作

在Config_UART0_user.c中添加touch_uart_callback()的声明和调用

调优(Tuning)前的准备工作

仿真器设定–选择仿真器供电

调优(Tuning)前的准备工作

将E2 Lite连接PC以及RL78/F22 target board的CN3

将USB-Serial串口转换板连接到RL78/F22 target board的CN1和CN2

使用长45mmx宽25mmx厚2mm的亚克力板(用户自行准备)覆盖住电极区域

注意:不允许手指直接触摸电极,否则会导致短路或者测量不正确

调优(Tuning)前的准备工作

在PC上插入USB-Serial串口转换板,并在“设备管理器”中确认串口号

USB-Serial串口转换板

调优(Tuning)前的准备工作

编译并运行程序

Tuning

进行自动调优(Tuning)

点击Start Tuning按钮,在弹出的对话框中,设定正确的波特率和串口号,然后点击Connect

进行自动调优(Tuning)

在弹出的对话框中,设定正确的外设时钟(本例中为32MHz),点击OK,开始自动调优(Tuning)

进行自动调优(Tuning)

按步骤显示自动调优(Tuning)对话框,如寄生电容测量,偏置电流调整等无需用户操作的步骤

进行自动调优(Tuning)

进入需要用户参与的灵敏度测量步骤

用户需要使用正常压力按压触摸按键并保持,然后按下PC键盘上的任意键,生成默认的阈值,完成调优(Tuning)

进行自动调优(Tuning)

在弹出的对话框中,显示阈值/溢出信息/警告错误信息,用户点击Continue the Tuning Process按钮完成

进行自动调优(Tuning)

自动调优(Tuning)完成后,在主页面的下方显示调优(Tuning)的结果,包括寄生电容值、驱动频率、阈值、扫描时间等

输出自动调优(Tuning)产生的参数文件

点击Output Parameter Files

输出自动调优(Tuning)产生的参数文件

在弹出的对话框中,选择工程目录下的qe_gen文件夹

输出自动调优(Tuning)产生的参数文件

在工程目录下的qe_gen文件夹中确认新生成的参数文件

例如qe_touch_config.c中的按键阈值(threshold)等

Coding and Monitoring

在CS+中停止程序,断开仿真器连接,重新编译并运行

设定正确的波特率、串口号,点击connect按钮进行连接

在Console中确认连接状态

Connected to \.COM35

在Board Monitor中,点击Enable Monitoring ,并在各个监控窗口中设定需要监控的Touch I/F

按下触摸按键,即可在各个图形化窗口中进行Monitoring以及触摸参数调整

添加应用代码实现LED闪烁

应用代码添加

在qe_genqe_touch_sample.c中

LED1和LED2的宏定义

左右滑动查看完整内容

#defineLED1 (P0_bit.no0)
#defineLED2 (P14_bit.no0)


#defineLED_OFF (1U)
#defineLED_ON (0U)

在qe_genqe_touch_sample.c中

按下触摸按键后点亮LED1和LED2

左右滑动查看完整内容

/*TODO:Add your own code here. */ 
switch(button_status)  
{    
caseCONFIG01_MASK_BUTTON00:
   LED1 = LED_ON;         
  break;    
caseCONFIG01_MASK_BUTTON01:         
   LED2 = LED_ON;         
  break;    
case(CONFIG01_MASK_BUTTON00 | CONFIG01_MASK_BUTTON01):         
   LED1 = LED_ON;         
   LED2 = LED_ON;         
  break;    
default:        
  LED1 = LED_OFF;        
  LED2 = LED_OFF;        
  break;  
}

编译运行后,按下触摸按键Touch Button1点亮LED1

编译运行后,按下触摸按键Touch Button2点亮LED2