- 本课程为精品课,您可以登录eeworld继续观看:
- 实验三 如何使用CapTIvate软件库
- 登录
- 课程目录
- 课程笔记
欢迎回到CapTivate Technology
软件设计快速指南系列课程
接下来我将带领大家来完成我们最后一个实验
如何使用CapTivate软件库
在本实验中 我们需要学习如何使用CapTivate软件库
去访问我们的sensor data
以及如何将我们的touch状态通过LED来表示出来
上一讲当中 我们学习了如何使用在线调试工具
进行touch相关参数的调试
这一讲 我们将学习如何利用TI CapTivate函数库
撰写用户自定义的Callback 函数
在撰写Callback函数之前
我们来看一下所生成工程的源代码的结构
首先我们来看CapTivate文件夹
CapTivate文件夹里面就是我们所包含的CapTivate函数库
所定义的源代码
第二个文件夹 CapTivate下划线APP那么这里呢
是我们的一些阴性的函数
包括我们的 在梦函数里面所执行的一些CapTivate初始化
CapTivate处理的一些函数
我们的BSP.C里面
是进行我们MCU系统的一些[Inaudible]配置
时钟配置
以及我们timer的配置
Watchdog的配置
CapTivate的Config
这个我们应该很熟悉了 就是我们刚才在我们CDC里面
所调试的所有touch相关的参数配置
[Inaudible]配置
Drive Live是我们TI
针对于MSP430平台所推出的
系统性的函数库
好 我们回到
我们的梦函数 那么 在这里呢
我们将要加入两个Callback函数
第一个函数是我们的button group Callback函数
名称叫做my Keypad Callback
该Callback函数 我们所执行的功能是
当我手指按到Keypad任何一个按钮的时候
我们的LED2点亮
当我手指离开的时候 LED2关闭
大家可以看到 我们在这里调用了CapTivate函数库[Inaudible]所定义的
sensor touch 这样的一个标志位
我们首先判断Keypad这个sensor 的B sensor touch
等于触 也就是我的
状态是touch的状态
并且我要判断上一个
扫描周期 touch状态Pre-touch
是false
也就是我从没有触摸到触摸
状态转换的一个过程
当这个过程发生的时候 LED2点亮
那么同样的 当上一个周期为touch这个周期
为没有touch
那我的LED2关闭
第二个Callback函数是slider Callback函数
我们名为 my slide Callback
Slider Callback函数去判断利用了API所定义的
slider position 这样一个变量
判断当 slider的位置大于500的时候
LED1点亮
当Slider的位置小于500的时候LED1关闭
那么在撰写完这两个Callback函数以后
我们需要把Callback函数利用我们的
API接口去定义到转换周期中去
那上一讲我们所讲了 我们需要在
Cap App start 函数 调用之前去注册
Callback函数
那我们现在将我们的Callback函数注册到这里
这两步函数调用我们就已经将我们的两个
Callback函数去注册到我们两个相应的sensor上面去
在这里呢 我们进入Y循环
当我们的主循环中 系统默认自动生成的是一个
Demo 的 LED点亮
熄灭的一个过程
这里 我们需要把这一段程序注释掉
我们只需要调用Cap App handler
这样一个函数
这个函数需要在每个循环周期中进行调用
好的 重新下载程序
运行程序
此时 当我手按上button group 任意按键的时候
大家可以看到 我们的LED2会点亮
但我手指在滑动滑条的时候
滑条的位置大于500 LED1会点亮
小于500以下 LED1关闭
好的 试验3到此为止
谢谢!
课程介绍
共计8课时,54分38秒
CapTIvateTM 技术软件设计快速指南
CapTIvateTM 技术是TI 推出的高性能低功耗电容触摸方案,包含电容式触摸测量技术、CapTIvateTM Design Center设计平台、电容触摸软件库以及电容触摸硬件开发平台。本课程介绍如何使用CapTIvateTM 技术进行电容触摸方案软件设计。
猜你喜欢
换一换
推荐帖子
- MCU调试大法:使用串口实现简单shell功能
- MCU程序调试方法有很多,比如软/硬件仿真、添加数据打印等。 像Keil MDK就支持不少单片机的软件仿真,在没有拿到单片机的情况下,就可以先仿真调试部分功能,查看代码逻辑是否正确。硬件仿真则需要借助仿真器,如调试Cortex内核MCU常用的J-Link/ST-Link等。通过watch窗口可以查看变量的值: 在代码中添加数据的打印,则需要借助MCU的串口功能,将运行时的关键数据...
-
Jacktang
微控制器 MCU
- TMS320C6748的GPIO操作
- TMS320C6748的GPIO特性 参考TI技术文档SPRUFL8B(《TMS320C674x/OMAP-L1x Processor GPIO User's Guide》)的1.2Features部分我们可以看出TMS320C6748的GPIO有如下特性: 1.可以通过单独的数据设置和清除寄存器来设置/清除GOIO功能和可通过软件在没有critical...
-
fish001
DSP 与 ARM 处理器
- 数字电路历史、摩尔定律及未来趋势
- 我们都知道在计算机世界中,归根到最底层的计算,只有两种状态,既数字电路的开和关,对应于二进制数字1或0。任何最强大的计算机、最繁杂的计算也最终都是用通过1,0来实现的。这实际上暗合了中国古典哲学的"阴阳",1,0生万物。数字电路的发展史,又慢到大,有大到小,计算的性能越来越强大,但是发展却一直符合一条规则,今天虫虫就和大家一家一起聊聊电子电路发展史、...
-
Aguilera
模拟与混合信号
- FAQ蓝牙传输类问答
- 蓝牙传输类问答(由TI 嵌入式现场应用工程师 Michael Qian 整理提供) 1. 蓝牙5.0的功耗相对蓝牙4.0有什么优势?目前手机大部分为蓝牙4.0,能否连接5.0的蓝牙穿戴设备? 答:进入蓝牙5.0时代,将能实现传输距离更远,数据吞吐量更大。 2. 蓝牙5.0支持组网吗?通信速率多高? 答:不支持,组网...
-
qwqwqw2088
无线连接