1
完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
在做就是外部中断adc检测 在这个条件下,用keil跑裸机,每秒中断速度可以到达1w次一秒 而在rtt中最多一秒钟只能1k次上下,是外部io中断,io中断都是按照原始hal库写法 求回答 |
|
相关推荐
6个回答
|
|
是否read_adc里面耗时呢?可以测一下,找出原因。
另外,你这程序结构可以改进下,不然不管是1W次还是1K次,都是占用了太多了CPU。 可以改为由timer触发ADC,这样采样频率就是确定的,不会变化。 而ADC的数据可以由DMA自动搬到内存了。 |
|
|
|
我如果纯跑count_test++,也是这个数,我外部的中断无论是14000还是1400都只能跑到这个1320
|
|
|
|
|
|
|
|
|
|
|
|
我的疑惑是:
你的代码是否先把 count_test 清0, 然后外部在960ms发1W4个中断,发完1次就中止了吗? 此时RT-Thread这边再把 count_test 打印出来? 根据我的经验,系统影响中断延迟是有可能的。但不会有这么大。 毕竟tick在几十Mhz以上的系统中都是直接设置为1k的。 如果再来个外部中断里面只进行count++都只能来1K左右,那说明CPU一直在tick中断和IO中断里面,别的活都干不了了。 |
|
|
|
我开始把count清零了,就是我这边拉高一个引脚,对面在未来960ms给我1w个脉冲我这边本来是做adc测量,但是就是我如果光在handler里面跑++就是结束960毫秒然后print,结果就是这样1.3k
问题在于就是我在这960ms之内如果提前关了线程切换,就是上线程锁能稍微多那么一两次响应,但是我觉得这个handler不应该跟系统相关啊,我优先级已经给到0了 |
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
590 浏览 0 评论
AI模型部署边缘设备的奇妙之旅:如何在边缘端部署OpenCV
2241 浏览 0 评论
tms320280021 adc采样波形,为什么adc采样频率上来波形就不好了?
1233 浏览 0 评论
1788 浏览 0 评论
1464 浏览 0 评论
74803 浏览 21 评论
小黑屋| 手机版| Archiver| 德赢Vwin官网 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-22 20:23 , Processed in 0.526273 second(s), Total 49, Slave 43 queries .
Powered by 德赢Vwin官网 网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
德赢Vwin官网 观察
版权所有 © 湖南华秋数字科技有限公司
德赢Vwin官网 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号