找回密码
 注册
关于网站域名变更的通知
查看: 469|回复: 2
打印 上一主题 下一主题

stm32f103采集信号问题求助?

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-1-10 08:29 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
stm32f103能采集幅值为200mv频率为1KH正弦波信号吗?我用列程能采集直流电压,把程序中的u16 Get_Adc_Average(u8 ch,u8 times)6 P  T9 z; N) {1 ?
{
9 B; x1 y8 H, E9 X, j  B    u32 temp_val=0;: Y) Y5 @& F! o
    u8 t;
) g, t0 l/ [. k( z8 s4 e; q3 D    u8 a;
3 T- k3 y* x3 B' D3 g9 f* |    for(t=0;t<times;t++). u+ Z7 p) C- l; {% [+ V7 l/ |
    {
9 n0 B. @) q8 v. V/ |+ {, B, G0 W        a=Get_Adc(ch);
! a- u# U/ r: W* U6 ~" Z! E        temp_val+=a;  Y; f& b, h2 C
        delay_ms(5);
* {) z) T: I( w% V' `7 t    }
; d6 k! {$ c& A: U6 c    return temp_val/times;9 o% m' W' e2 f6 m% o! @/ o$ Q
}      
. z2 c) [1 s4 {# N8 M* g& h改成
8 w9 O2 E% ^; |2 ^: J' wu16 Get_Adc_Average(u8 ch,u8 times)' b) z9 s& Z: A$ A$ t
{
9 H  V% F5 D. |  S    u32 temp_val=0;
% f  @$ }/ M: _* u    u8 t;7 I# A! N, s) h. ]$ p/ F& V3 @6 O
    temp_val=Get_Adc(ch);
; [8 V6 d/ q/ i; \4 z. t    temp_val=0;
, G* f9 k2 `6 {8 a$ M    for(t=0;t<times;t++)
9 U" ]- e6 J% M' O6 L0 [    {
5 C+ r8 R* [' ~6 M* L  G* v1 @        temp_val+=Get_Adc(ch)*Get_Adc(ch);
- k4 V5 [. S9 B7 z; [        //delay_ms(5);
5 t& \& E; P* ^  ?    }
" l) r; ^; U! |0 j! J, U    return sqrt(temp_val/times);
) [! K( V+ @) Z7 u; e* ^}      直接采集幅值为200mv频率为1KH正弦波信号为啥不行?如何改程序?- w/ O3 D0 `" }5 e; l( |
* s* ]9 U$ e# V

该用户从未签到

2#
发表于 2020-1-10 09:53 | 只看该作者
先采集固定电压是对的,说明硬件没问题,然后采集快速信建议用DMA+ADC,程序中最好不要用硬延时,除非你这干件事。

该用户从未签到

3#
发表于 2020-1-10 16:14 | 只看该作者
要想充分利用ADC量程,200mV信号要先放大,且须叠加在直流电平上,以1/2Vcc为中心,上下峰值尽量接近0和Vcc。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-7-23 13:51 , Processed in 0.109375 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表