STM32如何通过SPT读取CPLD中的数值?

2020-02-04 10:21发布

各位大侠,我现在利用CPLD对3路外部脉冲进行计数处理问题描述如下:
1、CPLD对第一路脉冲只进行计数,每秒钟会有一个计数结果A[31:0],
2、CPLD对第二路不定宽的脉冲进行脉冲宽度测量,采用计数的方法,这时候每来一个脉冲会产生一个脉冲宽度计数结果B[15:0],
3、第三路同步骤2,同样会产生计数结果C[15:0],
4、现在我需要STM32利用spi每秒钟读取CPLD中的A,并对其清零;  实时读取B和C;

问题:各位大侠对此问题描述的实现方法有和高见? 求教!谢谢!

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
12条回答
玄德
1楼-- · 2020-02-05 11:58
风之神515 发表于 2016-7-14 00:21
A数据我可以在MCU中定时每秒钟去读取(这里处理好竞争与冒险的关系),B和C的话是不是可以各自整一个FIFO ...


可以,不限于此。
条条大路通罗马,选一条就是了。


gaoyuanping
2楼-- · 2020-02-05 17:48
CPLD去触发中断不太好吧,比如当你触发了去读B和C的时候恰恰该读A了怎么办
2010wqz
3楼-- · 2020-02-05 23:13
LCR?
风之神515
4楼-- · 2020-02-06 00:07
 精彩回答 2  元偷偷看……
风之神515
5楼-- · 2020-02-06 00:18
gaoyuanping 发表于 2016-7-14 10:48
CPLD去触发中断不太好吧,比如当你触发了去读B和C的时候恰恰该读A了怎么办

这么说会有这种可能,用优先级来解决这个问题的话,会导致丢数,不知道您有没有什么好的想法?
waiter
6楼-- · 2020-02-06 05:57
其实你每秒钟才读一次CPLD,也就是对实时性要求不高,那么怎么读都可以吧?

一周热门 更多>