- 基本计时实验
- 输入捕获实验(实验3的基础)
- 电容按键检测实验
- 输出PWM实验
- PWM驱动无刷电机实验
原理其实非常简单,通过TIM定时器的输入捕获功能判断电容的充电时间(没有触摸的充电时间短,有触摸的充电时间长)经过对比来确定是否有手指触碰。
图片来源:零死角玩转STM32(库函数版)刘火良由上面两个图片可以看出,没有手指触摸时电容为Cx,有手指触摸时电容为Cx+Cs
Vc=V0*(1-e(-t/RC))
- TIM定时器初始化(TIM5_Config)
- 电容按键初始化,并设置触摸阈值(TPAD_Init)
- 获取没有触摸的充电时间t0(TPAD_GetVal)
- 循环获取充电时间tx并将与t0对比(TAPD_GetMaxVal)
- 若tx超过触摸阈值,判定为有触摸(TPAD_Scan)
(0)宏定义
(1)TIM5_Config函数
(2)按键初始化
(3)触摸按键复位函数
(4)获取充电(触摸)时间
(5)获取最大触摸按键时间
(6)按键扫描函数
这一次实验没有什么难度,就是输入捕获的一个实际应用,但是有一个问题我始终不明白,在TIM5_Config函数中,如果我开启了TIM5的计数中断和CC2溢出中断,程序就会跑死,删除这句后,程序也可以正常执行,不理解,各位大佬如果知道可以评论告诉我,谢谢~
到此这篇max232程序(max232cwe应用图)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!版权声明:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权、违法违规、事实不符,请将相关资料发送至xkadmin@xkablog.com进行投诉反馈,一经查实,立即处理!
转载请注明出处,原文链接:https://www.xkablog.com/kjbd-yiny/29282.html