你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。
chrome
firefox
safari
ie8及以上
ST
意法半导体官网
STM32
中文官网
ST
全球论坛
登录/注册
首页
技术问答
话题
资源
创客秀
视频
标签
积分商城
每日签到
正弦波有效值计算
[复制链接]
kingg209
提问时间:2013-5-13 08:21 /
用stm32f103 检测正弦波,想计算有效值,用一个周期的均方根计算,可是计算一个周期的总是不准。计算出的数总是变化,计算两个信号周期的就变化不大了,但与实际结果不一致。想请教一下,应该注意什么呢?
计算均方根采用的是中断的方式,在20ms周期内采样200个点。
赞
0
收藏
0
评论
2
分享
发布时间:2013-5-13 08:21
举报
请先
登录
后回复
2个回答
kingg209
回答时间:2013-5-13 10:41:24
a0a.1 0b0c
RE:正弦波有效值计算
void TIM2_IRQHandler(void)
{
while (TIM_GetITStatus(TIM4, TIM_IT_Update) != RESET) //
{
TIM_ClearITPendingBit(TIM4, TIM_IT_Update);
ADC_GetConversionValue(ADC1);
SUMI2a = SUMI2a + AD_Value[3]*AD_Value[3];
TIMadc++;
if(TIMadc==200)
{
Ia = sqrt(SUMI2a/200;
SUMI2a=0;
TIMadc=0;
}
}
这么写有什么不对的吗?定时器4定时周期是0.1ms
赞
0
评论
回复
支持
反对
lyxing0722
回答时间:2013-5-16 10:13:23
a0a.1 0b0c
回复:正弦波有效值计算
最好采用定时采样,开方运算是需要时间的,这样你就不能保证一个周期采到200个点了,计算有效值要单独处理!
赞
0
评论
回复
支持
反对
所属标签
相似问题
关于
意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
微信公众号
手机版
快速回复
返回顶部
返回列表
RE:正弦波有效值计算
{
while (TIM_GetITStatus(TIM4, TIM_IT_Update) != RESET) //
{
TIM_ClearITPendingBit(TIM4, TIM_IT_Update);
ADC_GetConversionValue(ADC1);
SUMI2a = SUMI2a + AD_Value[3]*AD_Value[3];
TIMadc++;
if(TIMadc==200)
{
Ia = sqrt(SUMI2a/200;
SUMI2a=0;
TIMadc=0;
}
}
这么写有什么不对的吗?定时器4定时周期是0.1ms
回复:正弦波有效值计算