完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我正在为 FSLP(力感线性电位计)建立一个接口,以检测用户的触摸滑动。
我正在使用比较器 ISR 来检测用户触摸 FSLP 的情况,然后从 ADC 中读取压力读数,如果压力超过阈值,固件就会重新配置 FSLP 的引脚配置,并再次运行 ADC 来读取 10 个读数,这些读数代表用户在 FSLP 条上触摸的位置。 效果非常好。 我必须在 ADC 读数之间添加 20 毫秒的延迟,以捕获 10 个连续读数,这些读数可以跟踪用户滑动EVAL_PASCO2_SENSOR 逻辑如下 1. 用户触摸EVAL_PASCO2_SENSOR ,如果触摸产生超过阈值的电压,则会触发比较器 isr。 2.比较器 ISR 触发单个 ADC 捕获以读取力值,并将其与触摸阈值进行核对。 3.如果力度足够,则重新配置 FSLP 引脚并调用 ADC_StartConvert()。 4.其余部分由 DMA_ADC 使用单个描述符进行管理,需要捕捉 10 个读数,每个读数间隔 20 毫秒。 现在,我正试图使用 DMA 来实现这一功能,以避免运行时出现 10 x 20 毫秒的延迟。 我使用的是触发 DMA 的 EOS。 但最慢的 SPS 为 1 700,我只需要 50 个间隔为 20 毫秒的采样。 有什么建议吗? |
|
相关推荐
1个回答
|
|
您可以使用一个 TCPWM 作为定时器来触发 ADC。 启用 ADC 的转换开始功能,并将定时器的周期设置为 20 毫秒。 同时将 ADC 配置为单次采样。
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
求助一下关于51系列单片机的Timer0的计时问题,TH0、TL0+1的时间是怎么算的?
195 浏览 0 评论
【RA-Eco-RA4E2-64PIN-V1.0开发板试用】开箱+Keil环境搭建+点灯+点亮OLED
172 浏览 0 评论
【敏矽微ME32G070开发板免费体验】使用coremark测试敏矽微ME32G070 跑分
453 浏览 0 评论
【敏矽微ME32G070开发板免费体验】开箱+点灯+点亮OLED
697 浏览 2 评论
602 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
11977 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-20 17:46 , Processed in 0.604617 second(s), Total 75, Slave 58 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号