恭喜,你发布的帖子
发布于 2024-09-12 17:37:10
4楼
个人认为,你用 矩形的面积 来计算流量曲线所围的面积,间隔越大,误差越大。
有两个改进方法,你可以试试看:
1. 减小间隔。把中断时间改成 50ms 或 100 ms;
2. 使用梯形的面积 来计算流量曲线所围的面积:
比如说,使用 VD396 记录前一周期的流量值 FT0,VD408 用来记录当前流量值 VD400 与前一周期流量值 VD396 的平均值。
然后在你的 DIV_R 除以 3600 指令之前插入一个 AVG_R VD396, VD408, 2 求数组平均值的指令;
再然后把你的 DIV_R 除以 3600 指令的被除数 由 VD400 换成 VD408;
最后在累加指令 ADD_R 后面再添加一行无条件(SM0.0 使能)的 MOV_R 指令,把 VD400 传送给 VD396。即在累加指令结束之后,把当前流量值 VD400 保存到 VD396,为下一周期累加计算做好准备。
请填写推广理由:
分享
只看
楼主