用VHD语言设有无符号数X,Y,编写求Z了一个X乘17的乘法器,但是加使能端出错,求加使能端。直接发程序。

在没有乘法器的单片机上实现指數运算 [问题点数:40分结帖人yu__jia]

这个是在写BMP180的时候算出某点的大气压  根据大气压我需要算出高度

其精度要达到1m 求高手指导


用单片机做指数运算还是很麻烦的,何况你这还是<1的非整数指数运算不过如果你的存储空间够的话,似乎可以想点其他办法

因为你求高度精度1M以内,我沒算你的高度范围估计总不会超过几万米吧,你可以再计算机上计算出上述曲线然后每隔1m取一个p值,将p和高度对应存一个表放单片機里,几万个点的数据几十K的存储空间而已,单片机不够随便加个SPI-FLASH就可以了。

计算的时候算出你采样的值在哪两个点范围内,然后這两个点拉直线求你的p的值,精度肯定是<1米的

其实连插值都可以省去。

先确定你的高度允许精度比如说 0.5 米。

公式变换一下变成从高度计算气压。

从你测量的可能最小值起步进 0.5 米,直至可能最大值分别求出对应气压。

查表时找到大于等于的第一个气压值,对应嘚高度误差不超过 0.5 米

我的单片机才3K  我完成出来啦 就是运用泰勒公式的思想实现出来的 占用空间大约是在1.5K左右

匿名用户不能发表回复!

我要回帖

更多关于 设有无符号数X,Y,编写求Z 的文章

 

随机推荐