基于STM32的低成本高速存储测试装置的制作方法

文档序号:19278085发布日期:2019-11-29 22:33阅读:215来源:国知局
基于STM32的低成本高速存储测试装置的制作方法

本发明属于测控技术领域,特别涉及一种基于stm32的低成本高速存储测试装置。



背景技术:

存储测试是在对被测对象无影响或影响在允许范围的条件下,在被测体或测试现场放置微型数据采集与存储测试仪,现场实时完成信息的快速采集与记忆,事后回收并由计算机处理和再现测试信息的一种动态测试技术。存储测试的主要技术特点是现场实时快速完成动态数据采集与存储记忆,特别是在多种恶劣环境和紧凑设计条件下完成动态参数测试,事后回收处理再现。随着电力系统的发展与完善,对电信号存储测试装置的精确性、传输速度、成本等各方面指标都提出了更高的要求。传统的存储测试装置如:中国专利cn207601777u公开了一种高速数据存储装置,该装置使用fpga芯片高速采集,但成本过于昂贵,难以得到普及;中国专利cn201621087089.0公开了一种基于stm32的微震数据采集与存储系统,该系统采集速率很难满足高速(采样速率≥10mbps)的要求,无法应对更高要求的测试环境。

由上可知,传统的电信号存储测试装置的存储空间和通信速度有限,普遍具有容量小、实时性差、精度低、成本高等缺点。研究一种低成本高精度的高速存储测试装置具有重要的意义。



技术实现要素:

本发明的目的在于提供一种基于stm32的低成本高速存储测试装置,能够以一种低成本的方式实现电信号的高精度高速存储测试。

实现本发明目的的技术解决方案为:一种基于stm32的低成本高速存储测试装置,包括:

stm32主控模块,用于控制采集调理电路模块、adc采集模块、多片选nandflash存储模块、串口通信模块工作;

采集调理电路模块,用于实现阻抗匹配;

adc采集模块,用于在stm32主控模块的控制下,高速采集经采集调理电路模块处理后的信号;

多片选nandflash存储模块,用于在adc采集模块采集完成后,在stm32主控模块的控制下,持久性存储测试数据;

串口通信模块,用于在stm32主控模块的控制下,将多片选nandflash存储模块存储的数据传至上位机。

本发明与现有技术相比,其显著优点为:1)本发明使用的芯片及元器件价格低廉,成本低;2)本发明通过流水线方式控制多片选nandflash芯片,相比于同类型产品的1msps的采集速度,本发明可达到10msps以上的高速采集速度。

下面结合附图对本发明作进一步详细描述。

附图说明

图1为本发明基于stm32的低成本高速存储测试装置的系统框图。

图2为本发明基于stm32的低成本高速存储测试装置的stm32主控模块电路图。

图3为本发明基于stm32的低成本高速存储测试装置的采集调理电路模块电路图。

图4为本发明基于stm32的低成本高速存储测试装置的adc采集模块电路图。

图5为本发明基于stm32的低成本高速存储测试装置的多片选nandflash存储模块电路图。

图6为本发明基于stm32的低成本高速存储测试装置的stm32主控模块与多片选nandflash存储模块的连接图。

图7为本发明基于stm32的低成本高速存储测试装置的流水线工作流程图。

图8为本发明基于stm32的低成本高速存储测试装置的dma工作框图。

具体实施方式

结合图1,本发明基于stm32的低成本高速存储测试装置,包括stm32主控模块1,用于控制采集调理电路模块2、adc采集模块3、多片选nandflash存储模块4、串口通信模块5工作;

采集调理电路模块2,用于实现阻抗匹配;

adc采集模块3,用于在stm32主控模块1的控制下,高速采集经采集调理电路模块2处理后的信号;

多片选nandflash存储模块4,用于在adc采集模块3采集完成后,在stm32主控模块1的控制下,持久性存储测试数据;

串口通信模块5,用于在stm32主控模块1的控制下,将多片选nandflash存储模块4存储的数据传至上位机。

进一步地,采集调理电路模块2的信号输入端与被采信号相连,其输出端与adc采集模块3的输入端相连;adc采集模块3的输出端与stm32主控模块1相连;多片选nandflash存储模块4与stm32主控模块1相连;串口通信模块5的输入端与stm32主控模块1相连,串口通信模块5的输出端与上位机相连。

示例性优选地,结合图2,stm32主控模块1包括stm32f407vgt6芯片、第一电阻r1、第二电阻r2、第三电阻r3、第四电阻r4、第一电容c1、第二电容c2、第三电容c3、第四电容c4、第五电容c5、第六电容c6、第七电容c7、晶振;所述第一电阻r1的一端与stm32f407vgt6芯片的37脚相连,另一端接地;第二电阻r2的一端与stm32f407vgt6芯片的94脚相连,另一端与stm32f407vgt6芯片的相短接的20脚、74脚、27脚、10脚相连并接地;stm32f407vgt6芯片的50脚、75脚、100脚、28脚、11脚、6脚短接至3.3v并与第三电阻r3的一端相连,第三电阻r3的另一端与stm32f407vgt6芯片的22脚、第四电容c4的一端、第五电容c5的一端相连,第四电容c4的另一端、第五电容c5的另一端与stm32f407vgt6芯片的19脚、第一电容c1的一端、第二电容c2的一端、第三电容c3的一端相连并接地,第一电容c1的另一端与stm32f407vgt6芯片的49脚相连,第二电容c2的另一端与stm32f407vgt6芯片的73脚相连,第三电容c3的另一端与stm32f407vgt6芯片的21脚相连;stm32f407vgt6芯片的12脚与第四电阻r4的一端、晶振的一端、第六电容c6的一端相连,第六电容c6的另一端与第七电容c7的一端相连,第七电容c7的另一端与晶振的另一端、第四电阻r4的另一端、stm32f407vgt6芯片的13脚相连。

示例性优选地,结合图3,采集调理电路模块2包括opa642芯片、接插件p3、第十一电阻r11、第十三电阻r13;接插件p3的1脚与第十三电阻r13的一端相连并接地;第十三电阻r13的另一端与opa642芯片的2脚、第十一电阻r11的一端相连,第十一电阻r11的另一端与opa642芯片的6脚相连并输出信号out至adc采集模块3,接插件p3的2脚与opa642芯片的3脚相连;opa642芯片的7脚连接+5v电压;opa642芯片的4脚连接-5v电压。

示例性优选地,结合图4,adc采集模块3包括工作频率最高为20mhz的14位的ads850芯片、第八电容c8、第九电容c9、第十电容c10、第十一电容c11、第十三电容c13、第十四电容c14、第十六电容c16、第十七电容c17、第十八电容c18、第十九电容c19、第二十电容c20、第二十一电容c21、第十五电阻r15、第十六电阻r16、第十八电阻r18、第十九电阻r19、第二十电阻r20;所述ads850芯片的1脚、2脚、3脚、4脚、36脚连接+5v电压;ads850芯片的43脚与第八电容c8的一端相连,ads850芯片的40脚与第九电容c9的一端相连,ads850芯片的37脚与第十电容c10的一端相连,第八电容c8的另一端、第九电容c9的另一端、第十电容c10的另一端与ads850芯片的48脚、46脚、44脚、42脚、38脚、35脚、32脚、31脚、29脚、27脚相连并接地;ads850芯片的26脚连接+3.3v电压;ads850芯片的33脚、34脚短接并与第十八电容c18的一端、第二十一电容c21的一端相连,第十八电容c18的另一端、第二十一电容c21的另一端接地;所述输出信号out与第十一电容c11的一端相连,第十一电容c11的另一端与第十八电阻r18的一端相连,第十八电阻r18的另一端与第十六电阻r16的一端、第十九电阻r19的一端、ads850芯片的47脚、第十三电容c13的一端相连,第十三电容c13的另一端接地,第十六电阻r16的另一端与第十五电阻r15的一端、第十六电容c16的一端、第十七电容c17的一端、第二十电容c20的一端相连,第十五电阻r15的另一端与第二十电阻r20的一端、ads850芯片的45脚、第十四电容c14的一端相连,第十四电容c14的另一端接地,第二十电阻r20的另一端与第十六电容c16的另一端、第十七电容c17的另一端、第十九电阻r19的另一端、第十九电容c19的一端相连,第十九电容c19的另一端、第二十电容c20的另一端均接地。

示例性优选地,结合图5,多片选nandflash存储模块4包括mt29f32g08afaca芯片、第二十二电容c22、第二十三电容c23、第二十一电阻r21、第二十二电阻r22、第二十三电阻r23、第二十四电阻r24,并采用流水线工作方式保证传输速度;所述mt29f32g08afaca芯片的12脚、37脚与第二十二电容c22的一端、第二十一电阻r21的一端、第二十三电容c23的一端相连,第二十一电阻r21的另一端连接+3.3v电压,第二十二电容c22的另一端、第二十三电容c23的另一端与mt29f32g08afaca芯片的13脚、36脚相连并接地;第二十二电阻r22的一端与mt29f32g08afaca芯片的19脚相连,第二十二电阻r22的另一端连接+3.3v电压;mt29f32g08afaca芯片的9脚与第二十三电阻r23的一端相连,第二十三电阻r23的另一端与第二十四电阻r24的一端相连并连接+3.3v电压,第二十四电阻r24的另一端与mt29f32g08afaca芯片的10脚相连。

结合图6,mt29f32g08afaca芯片内部存在两个区,平分总存储容量。片选1对应第一个区,片选2对应第二个区。其余信号线两个区共享。每个区在物理上对应一个8k字节的页寄存器。

结合图7,在对多片选nandflash存储模块4进行写操作时,会先向其中的页寄存器加载一页面8k字节的数据量,这个过程称为加载阶段。之后,nandflash会自动将页寄存器中的数据转存到指定的页面地址中,这个过程为编程阶段。本发明使用的mt29f32g08afaca芯片,数据加载过程耗时为180us左右,编程阶段耗时为350us左右,耗时主要在编程阶段,是影响nandflash数据写入速度的主要因素。因此选用多片选nandflash,使用流水线写入技术充分利用编程阶段的时间,提高存储速度。当操作第一个区时,拉低第一个区的片选信号,拉高第二个区的片选信号。第一个区完成数据载入操作后,无需等待编程结束,拉高第一个区的片选信号,拉低第二个区的片选信号,依次将数据载入到第二个区的也寄存器中,完成一个区的数据载入时间为180us,因此完成两个区的数据载入共用2*180=360us,此时第一个区的编程阶段已结束,可以直接进行下一轮的数据写入,这做到了时间利用率最大化。采用该种流水线技术,其平均写入速度为8kb/360us=21.70mb/s,极大地提高了数据的平均写入速度。

示例性优选地,串口通信模块5具体采用基于ch340芯片的通信模块。

进一步地,stm32主控模块1的7脚、80脚、79脚、78脚、66脚、65脚、64脚、63脚、34脚、33脚、18脚、17脚、16脚、15脚分别与dc采集模块3的12至25脚相连;stm32主控模块1的61脚、62脚、81脚、82脚、38脚、39脚、40脚、41脚、85脚、86脚、87脚、58脚、59脚、53脚、54脚分别与多片选nandflash存储模块4的29脚、30脚、31脚、32脚、41脚、42脚、43脚、44脚、8脚、18脚、7脚、16脚、17脚、9脚、10脚相连;stm32主控模块1的68脚、69脚、99脚分别与串口通信模块5的rx端、tx端、gnd相连;信号输入端与采集调理电路模块2的3脚相连;采集调理电路模块2的6脚与adc采集模块3的7脚相连。

结合图8,本发明基于stm32的低成本高速存储测试装置,stm32主控模块1将adc采集模块3转换的数字量保存于内置缓存,之后通过发送dma传输请求将数据传输至多片选nandflash存储模块4。本发明采用的dma传输方式为:

步骤1:根据之前的数据记录,计算nandflash的第一个空存储块地址。

步骤2:stm32主控模块1为nandflash存储模块4分配数据块地址。

步骤3:stm32主控模块1写nandflash地址、编程命令。

步骤4:启动dma。

步骤5:dma完成数据传输,并在传输过程中置位“忙”状态标志,传输结束后“忙”状态标志清零。

步骤6:stm32主控模块1检测“忙”状态标志直到为零;启动nandflash编程。

步骤7:等待编程结束。

本发明基于stm32的低成本高速存储测试装置,以低成本的方式实现对大量测试数据进行高速存储记录,能够应用于各种存储测试环境,具有很好的实用价值和广泛的应用前景。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1