瑞萨CapTouch触摸按键程序的
测试环境搭建
硬件准备
使用RA2 MCU群组中国本地评估板CPK-RA2L1或CPK-RA2E1
使用CPK板载的J-Link-OB也可以
RA2L1 MCU群组中国本地评估板
https://www.renesas.com/us/en/products/microcontrollers-microprocessors/ra-cortex-m-mcus/cpk-ra2l1-evaluation-board
软件准备
e2 studio:2022 - 04 或者以上版本
BSP(板级支持包)文件:CPK评估板的BSP - FSP 3.7.0以上适用
SEGGER SystemViewer : 版本V332
在以下链接中,可以下载最新版本并进行安装
https://www.segger.com/products/development-tools/systemview/
可按照以下连接的指南在目标工程中添加Systemviewer的支持
https://wiki.segger.com/FreeRTOS_with_SystemView
使用e2 studio创建基于
FreeRTOS的CapTouch线程
1. 在e2 studio中创建基本的FreeRTOS工程
创建新工程CPK_RA2_CTSU_Freertos
选择CPK-RA2L1 MCU评估版(LQFP64)
RTOS selection选择FreeRTOS
选择FreeRTOS - Blinky
2. 创建基于FreeRTOS的CapTouch线程
新建Thread
Symbol修改为cap_touch_thread
Name 修改为Cap Touch Thread
Cap Touch Thread Stacks中添加Touch module
使能TS通道:TS28,TS32,TS33
Generate Project Content
在QE for CapTouch中建立接口
1.Starting Tuning
2.Output Parameters files
3.Generate Sample Code
在cap_touch_thread_entry.c 中添加qe_touch_main()
编译即可
FSP中Cap Touch Thread的基本配置如图
Priority修改为3
FSP生成的代码,如下图
加入qe_touch_main();
改写qe_touch_main();
- 打印log帮助分析:
添加SEGGER_SYSVIEW_Print
- 模拟按键处理:
添加R_BSP_SoftwareDelay(1, BSP_DELAY_UNITS_MILLISECONDS)
*下图红色箭头处
- 设置循环处理的间隔:
单线程运行时,可以使用R_BSP_SoftwareDelay或者改为vTaskDelay()
此处将默认的20ms延时改为2ms,便于分析
R_BSP_SoftwareDelay(1, BSP_DELAY_UNITS_MILLISECONDS);
*下图绿色箭头处
分析CapTouch触摸按键的
基本运行过程
使用SEGGER systemviewer对基本的Cap Touch触摸按键运行过程进行分析
CTSU Captouch单线程运行,三个TS通道循环重复测量
SystemView各窗口中查看CTSU的运行时序
通过打印log帮助分析
CTSU单次测量的时间约为200us
三个TS通道在三频率工作模式下的测量时间约为2ms
在模拟按键处理时间为1ms,循环处理定时间隔为2ms的设定下,Cap Touch Thread的时间间隔约为7ms
其中,TS通道的数量越多,等待时间越长,当前为3个通道
全部0条评论
快来发表一下你的评论吧 !