rms c语言 函数,C中任何更快的RMS值计算?
我正在用C编写一个小型8位微控制器的软件.部分代码是读取电流互感器(ZCT)的ADC值,然后计算RMS值.流过ZCT的电流是正弦曲线但可能会失真.我的代码如下:
float adc_value,inst_current;
float acc_load_current; // accumulator = (I1*I1 + I2*I2 + ... + In*In)
double rms_current;
// Calculate the real instantanous value from the ADC reading
inst_current = (adc_value/1024)*2.5; // 10bit ADC,Voltage ref. 2.5V,so formula is: x=(adc/1024)*2.5V
// Update the RMS value with the new instananous value:
// Substract 1 sample from the accumulator (sample size is 512,so divide accumulator by 512 and substract it from the accumulator)
acc_load_current -= (acc_load_current / 512);
inst_current *= inst_current; // square the instantanous current
acc_load_current += inst_current; // Add it to the accumulator
rms_current = (acc_load_current / 512); // Get the mean square value. (sample size is 512)
rms_current = sqrt(rms_current); // Get RMS value
// Now the < rms_current > is the real RMS current
但是,它有许多浮点计算.这给我的小型MCU增加了很大的负担.我发现sqrt()函数在我的编译器中不起作用.
有没有可以运行得更快的代码?
rms c语言 函数,C中任何更快的RMS值计算?相关推荐
- C语言在BST中找到最接近目标的值的算法(附完整源码)
C语言在BST中找到最接近目标的值的算法 C语言在BST中找到最接近目标的值的算法完整源码(定义,实现,main函数测试) C语言在BST中找到最接近目标的值的算法完整源码(定义,实现,main函数测 ...
- python程序在函数内执行得更快
http://www.cnblogs.com/nepaul/archive/2012/07/15/2592179.html 为什么Python程序在函数内执行得更快?(来源StackOverflow) ...
- C语言函数怎么像python那样返回多个值?(三种方法:1、设置全局变量 2、传递指针 3、使用结构体返回不同类型的数据)
引用文章:c语言函数可不可以返回多个值 文章目录 方法一:设置全局变量 例如:利用一个函数求出正方形的周长和面积. 方法二:使用数组名或指针作为函数的形参 实例2:编写函数求一维整形数组的最大值与最小 ...
- php 数组去重函数,【译】更快的方式实现PHP数组去重
概述 使用PHP的array_unique()函数允许你传递一个数组,然后移除重复的值,返回一个拥有唯一值的数组.这个函数大多数情况下都能工作得很好.但是,如果你尝试在一个大的数组里使用array_u ...
- OpenAI最新发布通用人工智能路线图!AGI比想象中来得更快!
点击下方卡片,关注"CVer"公众号 AI/CV重磅干货,第一时间送达 点击进入->[计算机视觉]微信技术交流群 转载自:机器之心 | 编辑:泽南.小舟 通用人工智能的出现可 ...
- vs2015c语言函数,c++中strcpy函数在VS2015无法使用的问题
本篇文章介绍了c++中strcpy函数在VS2015无法使用的问题. 一:原因:一般认为是vs准备弃用strcpy的,安全性较低,所以微软提供了strcpy_s来代替 然而,strcpy_s并没有st ...
- 德鲁伊 oltp oltp_内存中OLTP –更快变得更简单!
德鲁伊 oltp oltp In-memory OLTP is a revolutionary tool introduced on SQL Server 2014. On SQL Server 20 ...
- R语言将字符串中的数字提取出来作为值
用到的函数 extract() 例子 首先构造数据 week <- c("week1","week2","week3","w ...
- OpenAI发布通用人工智能路线图:AGI比想象中来得更快
来源:机器之心 本文约2600字,建议阅读5分钟 通用人工智能的出现可能只是技术发展历程中的一个小节点,因为 AGI 或许可以加速自身的进步,从而以指数方式扩展能力. 在 ChatGPT 引爆科技圈之 ...
最新文章
- 阅读笔记:Solving the “false positives” problem in fraud prediction
- 2014 Centos 6 minimal 安装mysql5
- 网关的作用是什么_SpringCloud中Zuul网关原理及其配置,看它就够了
- php 删除 r n,PHP去除换行符'/r/n'回车换行与PHP_EOL变量的使用
- 011——数组(十一)array_merge array_merge_recursive array_change_key_case
- Microsoft .NET 框架资源基础 ---摘自:msdn
- oracle中trunc x-1,oracle中trunc函数的说明
- 31 CO配置-控制-产品成本控制-成本对象控制-期末结算-定义结算在产品的记帐规则
- Spring Boot Initilizr - 使用Spring Boot CLI
- python第七章动手试一试_《Python从入门到实践》第八章动手试一试
- 【Flink】Flink RocksDB内存占用一直增大 state.backend.rocksdb.memory.managed
- c#的装箱和拆箱及值类型和引用类型
- socket.io实现简单多人聊天室
- Lyapunov稳定性分析3(离散时间系统)
- 漏斗模型被营销大师们玩烂了
- CentOS查找redis配置文件及防火墙相关命令
- speedoffice表格如何对内容进行分组?
- 苹果手机文件转换html,苹果手机html文件怎么打开?
- 利用华为DTM将事件发送到Firebase
- h2o flow初探