EDA365电子论坛网

标题: ADC高速采样与STM32的通信问题 [打印本页]

作者: 庚0209    时间: 2025-4-3 09:10
标题: ADC高速采样与STM32的通信问题
本帖最后由 超級狗 于 2025-4-3 17:22 编辑   u9 t; U0 g9 s. x
; ]9 @. A5 O9 c. d
使用ADS1675进行高速ADC采样,数据传输为LVDS信号。目标是至少2M/16bit的采样率。
4 H, Q5 S: j/ rmcu使用STM32H743系列。
6 L$ `/ |9 ?: e6 k) ?LVDS信号与STM32如何进行通信?未接触过LVDS信号,求大神指点方案。
8 I: V; R( T5 a: f+ C2 @) X* n
如果使用MAX9218,将LVDS信号转为并行口,这种方案可行吗,如果这样的话,ADS1675的CLK使用什么?
: e, g( G0 h6 L. _% T& m如果使用SN65LVDS32DR等,输出能否直接连接到STM32的IO口,是否可行?
% F' N+ X" c% J" ~5 o
3 z$ S% l8 V% T4 ]- O/ C
  {. H) L  a" R- y/ D6 B" n% x8 @

ST STM32H743VI.pdf

7 MB, 下载次数: 0, 下载积分: 威望 -5

TI ADS1675.pdf

764.33 KB, 下载次数: 0, 下载积分: 威望 -5

ADI MAX9218.pdf

761.65 KB, 下载次数: 0, 下载积分: 威望 -5

TI SN65LVDS32.pdf

2.7 MB, 下载次数: 0, 下载积分: 威望 -5


作者: Quiescent_521    时间: 2025-4-3 10:22
通信协议与实现路径
: v1 i& `9 [0 ]/ g) E- C8 Q0 a* n  `信号连接:LVDS差分对需直接连接至STM32的LVDS输入引脚,注意阻抗匹配和信号完整性。9 @# R; X3 s) s. M# j
时钟与同步:ADS1675需提供同步时钟信号,STM32需配置时钟源以匹配数据速率。
9 ?* e( i4 l" F0 \: P0 ?数据解析:STM32需通过LVDS接收模块解码数据,可能需配置帧结构、位顺序等参数。
作者: 庚0209    时间: 2025-4-3 10:27
1、这个系列的STM32无自带的LVDS引脚
作者: taoyulon    时间: 2025-4-3 10:27
DMA传输优化
  P# ^& D* j! a% r* G* v& l9 hSTM32H743支持多通道DMA控制器,可配置DMA传输以减少CPU负载,提升数据吞吐量。+ d0 f6 Q. j( v0 j0 w. E# l
需规划内存缓冲区以存储采样数据,避免数据丢失或溢出
作者: 庚0209    时间: 2025-4-3 10:31
Quiescent_521 发表于 2025-4-3 10:22
! z. j* h5 p) S) L+ m7 Z. g通信协议与实现路径1 s! \$ k: f. a) \& y
信号连接:LVDS差分对需直接连接至STM32的LVDS输入引脚,注意阻抗匹配和信号完整性。4 n; i  f- ^  F0 g
...

8 R* P9 ~0 u; G  \; A接口:这个系列的STM32无自带的LVDS引脚,将一对LVDS电平数据线转换为单端信号连接到STM32?时钟:ADS1675的masterCLK外接晶振吗! v. ^% ~+ ^/ X& D5 k! v8 C
数据解析:如果LVDS电平转换为CMOS电平,一个单端信号使用GPIO口是否能读取数据5 s( S3 i, [5 S' i, r

3 v" x. U# h7 H! U1 h
作者: huo_xing    时间: 2025-4-3 10:33
庚0209 发表于 2025-4-3 10:31" P3 q3 i9 f, F; ~
接口:这个系列的STM32无自带的LVDS引脚,将一对LVDS电平数据线转换为单端信号连接到STM32?时钟:ADS167 ...

. N0 s9 u4 S8 W: R1 `去问下你们软件。你这样搞不仅把自己坑了。也可能把你们软件带沟里
: }& \9 }5 m6 M  L& T
作者: 庚0209    时间: 2025-4-3 10:41
huo_xing 发表于 2025-4-3 10:334 K8 q; e3 `1 {& T& M7 e! i) s+ H
去问下你们软件。你这样搞不仅把自己坑了。也可能把你们软件带沟里
8 V' q, h7 a/ y7 U
要用FPGA吗
作者: huo_xing    时间: 2025-4-3 11:30
庚0209 发表于 2025-4-3 10:41
7 J  f8 i) x1 \6 G! v& K要用FPGA吗

: s3 V% u+ I0 e8 L: J1. 这个mcu的处理能力多少,能不能搞定这个速率的AD。2. lvds转并口后io速率多少。mcu的IO能不能搞定?一般mcu的io估计不超过几十K。; N. n3 s1 z- _8 F& w' E' Z

5 z/ W4 K; G7 G' k+ [3 Z3. 就算硬件理论可以。这种估计没有现成的demo,所有的逻辑控制,数据处理都需要软件独立完成。你们软件能搞定吗?; W+ G& V* r- u# |
4. 搞清楚自己团队的能力边界。是应用工程师还是设计工程师。
9 G! j- }) O5 B! m7 _) H4 C  d' z+ p/ t1 I

作者: myiccdream    时间: 2025-4-3 11:43
本帖最后由 myiccdream 于 2025-4-3 14:44 编辑
! V  z, M# }3 @- ^6 d; s7 q' H2 d) r, T/ g5 j- b
看错了132213
作者: 超級狗    时间: 2025-4-3 12:53
本帖最后由 超級狗 于 2025-4-3 16:57 编辑 8 q( \8 X  r$ a/ Z6 H
$ a+ ?2 D# X5 b$ S
方便詢問一下,
9 ^. J7 u/ P- \1 E; {6 \

6 @9 y1 k2 y! p& V( F
- J- E" [3 }) M$ ~- V2 e" B5 u
狗弟感覺,您就是我老闆偽裝在這個論壇來詢問的。
5 z8 V5 M4 q* \. H9 V$ F$ x$ p, [+ @- W* i; q; K
兩個月前才叫我把市面上多家資料擷取Data A
cquisition)產品架構分析了一次!2 J/ w/ x0 r* I! d* E6 w( L

& X- @* x, l9 x4 A  S

' R% x% r/ f" m$ p
. Q" T% ^! x- b8 m  n
作者: 超級狗    时间: 2025-4-3 13:22
huo_xing 发表于 2025-4-3 10:33/ M2 j* f; b& `6 ~+ b
去问下你们软件。你这样搞不仅把自己坑了。也可能把你们软件带沟里
$ y, r. h# R: J3 `& v
我們軟賤連 RTOS 都不會,但拍胸跟老闆說,他用迴圈Loop)就能搞定!8 R( E+ U! B5 f* Y! ~) ?1 n% V# n
4 ~5 d% _# y# [/ l* D+ [8 H  N

作者: wen11902    时间: 2025-4-3 13:45
个人想法是使用FPGA+ARM的异构会舒服的多;单纯使用mcu(部分mcu有lvds接口)获取了AD的信号,获取了然后嫩用它弄个微系统?
作者: wen11902    时间: 2025-4-3 13:48
wen11902 发表于 2025-4-3 13:456 V- ?5 ~9 S  |6 P. h
个人想法是使用FPGA+ARM的异构会舒服的多;单纯使用mcu(部分mcu有lvds接口)获取了AD的信号,获取了然后嫩 ...

  A4 N, }7 {6 Y/ p; ?$ G, O0 q那么复杂,想想我都不想想
, [6 x" d( t' E) |8 e. p
作者: huo_xing    时间: 2025-4-3 14:07
wen11902 发表于 2025-4-3 13:45
' b; P: m& @# e. [  K个人想法是使用FPGA+ARM的异构会舒服的多;单纯使用mcu(部分mcu有lvds接口)获取了AD的信号,获取了然后嫩 ...
4 R! D/ m, [1 l' u* l
不全是。我没记错,st的这个料是arm核。但是性能是否足够不好说
) `7 P4 G4 r. V5 A
作者: bazhonglei    时间: 2025-4-3 15:42
利用STM32的SPI接口
作者: 庚0209    时间: 2025-4-3 17:59
超級狗 发表于 2025-4-3 12:53
" T, r, y* n% F方便詢問一下,
* s7 k. X( k& ]) f5 Q0 D$ X7 i
只需要一个通道,采集到的电压值会通过MCU做一些处理,比如按大小归类统计。选用了双核的ARM。
, z* K& G; P% ]/ P2 N0 q7 c
作者: 超級狗    时间: 2025-4-3 21:46
本帖最后由 超級狗 于 2025-4-3 22:14 编辑 5 v( J" R% E9 C9 ]: Z0 R7 G5 O
庚0209 发表于 2025-4-3 17:597 ]4 o* V4 x7 M! Z
只需要一个通道,采集到的电压值会通过MCU做一些处理,比如按大小归类统计。选用了双核的ARM。

1 N$ s8 C' u( V如果你只需要一個通道的話,不考慮就用單片機裡面的 ADC 嗎?
/ h% ~% j- {- j7 O. Z* \. }
; W" b: o9 Q& |% ]3 D8 |STM32H743VI - High-performance and DSP with DP-FPU, Arm Cortex-M7 MCU with 2MBytes of Flash memory, 1MB RAM, 480 MHz CPU, Art Accelerator, L1 cache, external memory interface, large set of peripherals - STMicroelectronics
( G+ |& f" M1 |& q# F
7 [! Y% w  v& i1 g. m* `

STM32H743 Analog Peripheral.jpg (24.43 KB, 下载次数: 13)

STM32H743 Analog Peripheral.jpg

STM32H743 Block Diagram.jpg (22.55 KB, 下载次数: 12)

STM32H743 Block Diagram.jpg

作者: 超級狗    时间: 2025-4-3 23:09
庚0209 发表于 2025-4-3 17:59* c, ]+ R% D7 f! c2 e
只需要一个通道,采集到的电压值会通过MCU做一些处理,比如按大小归类统计。选用了双核的ARM。
选用了双核的ARM。

; b0 a% P9 u! l0 Z7 L% lSTM32H743單核系列
4 f5 b! g1 I1 U5 F" k
4 [: w/ \  H% Y4 P; R
2 Q0 ^8 _( h# X6 A* t5 s9 `3 o& K

STM32H7 Series.jpg (38.68 KB, 下载次数: 7)

STM32H7 Series.jpg

作者: 超級狗    时间: 2025-4-4 10:35
本帖最后由 超級狗 于 2025-4-4 14:25 编辑 7 X4 u( J# M1 R* c1 `& g1 s
庚0209 发表于 2025-4-3 17:59
! p$ u' {% Y% ~' C. y只需要一个通道,采集到的电压值会通过MCU做一些处理,比如按大小归类统计。选用了双核的ARM。

7 C, m! s' b( w: o. \9 f設計要預留空間,以防項目經理或客戶的需索無度。
( v. a" Y7 W/ _6 v0 K! I# d8 B1 k: @' p8 V
常接到需求書寫,單片機只要擷取資料,數據透過乙太網路往後送就可以,其它的事都交給電腦處理。
  ^2 d) `2 Q  m) H
' {# `1 f, X8 R: X0 O( B( z7 ]計畫做到一半就會有人說:) O) s# |" o+ Z7 c% g( G

. U7 Q$ |( K- l! P你老六的!
8 M. c# Z0 c+ W5 n/ O* L7 C
1 b3 M( m0 E% [5 x$ l8 y8 k4 p( F3 M' r; h& }

, e$ I  V* }  n! p* C% \$ [% X! A) j* n5 C& y

. w  |- f, L9 W& y$ V) a( h2 F6 o9 R, L3 j8 F

作者: 庚0209    时间: 2025-4-4 21:26
超級狗 发表于 2025-4-3 23:09
: r& I0 [) S! Z- V, A# a+ FSTM32H743 是單核系列
- m/ I+ W  t- g; w7 `, i
写错了,应该是745/ q/ v+ f' M! N1 _$ U3 k

作者: 庚0209    时间: 2025-4-4 21:31
超級狗 发表于 2025-4-3 21:46, x8 `/ I( z% y! x& H
如果你只需要一個通道的話,不考慮就用單片機裡面的 ADC 嗎?) [3 N' J' ~5 N3 K+ z; ], k
7 m8 A- }7 R0 t) ^7 K: `9 \
STM32H743VI - High-performance and DS ...
& [) v4 N$ g- ~/ o; L4 v
是的,用单片机的ADC更合适。现在是这样做的。, V. s! ?5 Z' ^* L6 u/ \# p
那个方案就是想了,感觉不好实现,放弃了。
' C. b5 X5 s3 j' `' D! c* s8 e1 P
作者: huo_xing    时间: 2025-4-7 09:29
庚0209 发表于 2025-4-4 21:315 _2 }2 o9 |: f
是的,用单片机的ADC更合适。现在是这样做的。) U, k# ]: L5 N% d5 ~
那个方案就是想了,感觉不好实现,放弃了。
. w/ o. l6 w1 E/ ]& R7 J( `2 [
这有点尴尬了。都用到那么高级的adc了,难道不应该是很牛逼的应用吗?结果居然回过头来发现用MCU自带的adc就能搞定。这个点子是哪个聪明蛋提的?0 F# j* {) c- N  d





欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/) Powered by Discuz! X3.2