完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
这个传感器信号采集系统中有两个采集对象,分别为传感器A和传感器B,希望实现的效果为,在传感器A的上升沿信号到来时,同时进行对传感器B的数据的读取,然后将两者的数据写入FIFO输出到上位机程序。 现在我通过设置一个时钟为40MHZ的定时循环读取DIO22 / DIO23 即传感器A的A相和B相信号,通过布尔相交判断其上升沿,每两个上升沿之间进行计数,并在新的上升沿到来时退出该循环。
而读取传感器B的信号是根据时序图配置芯片的引脚电平来实现的,因此添加了平铺式顺序结构,设置了一定的延时留时间给芯片进行配置。 上述两个部分均在一个大的while循环中,每执行完一遍以上的程序,就重新开始一次循环。 现在的问题是,当传感器A的信号频率上升到100KHz以上时,计时循环的输出值出现了错误,在同一个周期下计数值呈现规律性递减,猜测是读取传感器B信息的那些延时影响到了计数循环,但是理论上数据流应该是并行的,因此我对这种错误的发生产生了费解。 我想问的问题是: 1、在同一个while循环内,定时循环和平铺式顺序结构是否完全并行运行? 2、有没有方法将读取传感器A和传感器B的定时循环和带有延时的顺序结构分别放到两个同步且并行的循环里,再进行输出? 3、我本来想采用事件结构,根据与传感器A信号布尔相交的值的改变进行事件触发,但是FPGA模块中的结构里没有事件结构,采取以下几种结构是否有可能达到我根据一个信号的上升沿同步执行其余操作? |
|
相关推荐
1个回答
|
|
捞一捞,有没有朋友能提点建议呀?
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
133 浏览 0 评论
1513 浏览 2 评论
1583 浏览 4 评论
labview如何实现电机位置与图像清晰度计算值相对应,或者说如何实现电机每步距计算一次清晰度值?
1859 浏览 2 评论
2413 浏览 1 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-2-11 09:22 , Processed in 0.691171 second(s), Total 46, Slave 37 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号