打印

从A/D输入到单片机的数据怎么转化

[复制链接]
1604|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
木易洋|  楼主 | 2008-8-1 09:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
农民讲习所| | 2008-8-1 09:22 | 只看该作者

标准做法:先转为ASCII格式的字符串

使用特权

评论回复
板凳
computer00| | 2008-8-1 09:39 | 只看该作者

先根据参考电压计算出ADC结果实际表示多少电压,然后再显

我的做法是: 电压值(mV)= ADC结果*参考电压*1000/ADC最大值

然后再将这个整数转化为一位位(对10取余把每位求出来)送到LCD显示。这样显示的单位为mV,如果要以V显示,则将小数点定在倒数第三位。

使用特权

评论回复
地板
木易洋|  楼主 | 2008-8-1 09:45 | 只看该作者

不要乘以1000不就表示V了

不要乘以1000不就表示V了,输入的数据只有前12位有效,后4位补0,那最大值应该算多少啊?4096吗

使用特权

评论回复
5
computer00| | 2008-8-1 10:20 | 只看该作者

乘不乘1000,看你精度要求了。

既然是后面补0,那就直接拿来用,最大值为65536。

使用特权

评论回复
6
木易洋|  楼主 | 2008-8-1 10:24 | 只看该作者

谢谢

谢谢啦,需要用到查表法吗???
我们老师说可以用查表法来显示数据

使用特权

评论回复
7
computer00| | 2008-8-1 10:29 | 只看该作者

是线性的数据,不用查表,直接计算即可。

使用特权

评论回复
8
qlqwl| | 2008-8-1 10:29 | 只看该作者

查不查表是显示的问题,跟AD转换无关

使用特权

评论回复
9
木易洋|  楼主 | 2008-8-1 11:22 | 只看该作者

是非线性数据,老师说要一个一个测出来做成一个表

使用特权

评论回复
10
computer00| | 2008-8-1 11:25 | 只看该作者

那就不用换算成电压了,直接根据ADC结果查表。

建立一张4K的表,够你受的。

通常用半查表加线性插值法。

使用特权

评论回复
11
木易洋|  楼主 | 2008-8-1 15:12 | 只看该作者

这个也还是要啊

要求要显示电压,还要显示A/D的模拟量,因为模拟量是非线性的,所以要事先一个一个测出来,再制成表,用查表法来显示对应的模拟量。
查表法是不是很复杂啊,没做过都不懂

使用特权

评论回复
12
gyt| | 2008-8-1 18:38 | 只看该作者

查表是最简单的方法

就是占用资源比较多

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

20

主题

97

帖子

0

粉丝