PIC 多路脉冲检测问题

2020-02-09 11:29发布

最近一个客户要求用PIC做个小东西,用PIC芯片(指定)检测多路脉冲(10路)  将脉冲的个数和脉冲个数内的时间上传到上位机上。PIC重没入手过,大家有没有那款有多路的PCA捕获之类的型号,手头有PIC16系列的!】

最理想的就是有10个PCA捕获,弄个时间片,可以轻松的搞定,
最糟糕的就是用普通的IO,扫描端口电平的变化来确定脉冲数,还好脉冲的频率低(小于5K吧)


不知道论坛里的高手们指点下,用什么型号好?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
10条回答
headwolf_83
2020-02-10 04:29
用PIC24FJGA1XX系列。GA1系列,IC模块(就是类似PIC16F中的CCP的捕捉模块),始终源可以是系统时钟源,也可以是T1到T5之间的任任一个,换句话说,你有足够的空间来设置这个合适的时钟,以便ICXBUF能比较合理捕捉到脉冲宽度。
GA1系列,比如PIC24FJ128GA106,有9路IC模块,你需要捕捉10路,最后一路随便找个INT引脚再搭配一个定时器就搞定了。

需要注意的是GA0,比如PIC24FJ128GA010系列并不适合,因为捕捉通道只有5路,而且时钟只能用T2或者T3,很受限制。

至于PIC24H,DSPIC33,主要是时钟限制,通道也有8,9路,够你折腾。当然,DSPIC33/PIC24H,9个定时器,如果你想都改成INT+定时器,或者电平变化中断引脚+定时器,我估计24H/33F也能凑合着对付。比如拿几路脉冲周期接近的,拿去IC模块处理,剩余几路差异大的,一路一个定时器看着,最后留个定时器做按键去抖。不过我个人是不大倾向用这么麻烦的方案,折腾啊。

如果想用PIC24FJGA106,可以联系我,可以提供开发板。

一周热门 更多>