打印

有个简单的问题想请教下大家

[复制链接]
1519|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
marymary|  楼主 | 2009-9-27 08:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我有256个数范围为0-255,对应256个数范围为1.58-4.13V.
现在想通过查表法通过单片机把这些值1.58-4.13V送出去。
现在的思路是:首先计算出这些模拟值对应的16进制,然后通过查表法将这些数送到D/A转换器中,输出模拟信号,不知道是否可行?或者还有其他的方法吗,通过浮点数似乎可以实现小数,但似乎不可行?不知道可否像我这样理解?新手请大侠帮忙!谢谢

相关帖子

沙发
duojinian| | 2009-9-27 08:48 | 只看该作者
1.汇编方案:如果D/A转换器的输入是1字节,可以按照你说的解决。
2.C方案:建立数组,用搜索算法实现。

本人理解:00H -> 1.58V; 0FFH -> 4.13V; 差值算法可以计算出xV的数值。

使用特权

评论回复
板凳
marymary|  楼主 | 2009-9-27 08:53 | 只看该作者
楼上你好,汇编不懂,只会C。想请问下具体的C方案,我上面说的也是针对C来说的,不知道是否可行?
00H -> 1.58V; 0FFH -> 4.13V; 差值算法可以计算出xV的数值,不是很理解,可否说得具体点,谢谢

使用特权

评论回复
地板
marymary|  楼主 | 2009-9-27 09:00 | 只看该作者
简单可行就好的,复杂的看不懂

使用特权

评论回复
5
wjp2009| | 2009-9-27 09:11 | 只看该作者
用公式计算一下 y=(x-1.58)/(4.13-1.58)*255 结果取整

使用特权

评论回复
6
marymary|  楼主 | 2009-9-27 09:17 | 只看该作者
大家可以说清楚点吗?多谢

使用特权

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

本版积分规则

17

主题

135

帖子

0

粉丝