由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
EE版 - 问个2的补码的小白问题
相关主题
请问!!用c写code跟写入到firmware里面有什么不同??请教电路设计: 读入变阻器电阻转换为整数输出
问个技术问题 I2C协议 (转载)Mechanical Eng本科读EE/IE Master会怎样?
[转载] ZT:我们的CPU感觉MSP430系列单片机功能非常强大呀
SQUID measurement help (转载)请教一个基本的复位电路的问题
推荐一款单片机脉冲开关
请问一下哪儿能买到单片机的套板 (转载)创意:在店时间点卡换积分网游模式刺激消费,缓
求大拿们推荐学校~有没有单片机的spice model?
只能由实验值确定一个公式的参数,公式有意义吗?请教,EE做CODER需要什么?
相关话题的讨论汇总
话题: 补码话题: 2v话题: 校准话题: 除以话题: 最高
进入EE版参与讨论
1 (共1页)
w***w
发帖数: 1552
1
做adc的数据转换,出来时2的补码,0x7FFF对应2v, 0x0000对应0v, 0x8000对应-2v,
怎么样简单从补码换算成电压?直接就输入补码转换成原码,除以0x7FFF?感觉这样算
是有点误差的。另外matlab2009里面好像没有找到直接补码换原码的函数?
谢谢
b**********7
发帖数: 120
2
最高为0,直接除以7FFF再乘2V
最高为1,取反加1再除
a****l
发帖数: 8211
3
adc出来的是16bit signed integer,你要把0x的数字cast成16bit signed integer.
matlab 中好像可以用typecast(x,type)转换的.
有误差是因为你没有校准过,简单的的确是可以用除法,比较准确的是要先校准再用线性
拟和.校准是必须的,所有的电子测量仪器都要校准的.

2v,

【在 w***w 的大作中提到】
: 做adc的数据转换,出来时2的补码,0x7FFF对应2v, 0x0000对应0v, 0x8000对应-2v,
: 怎么样简单从补码换算成电压?直接就输入补码转换成原码,除以0x7FFF?感觉这样算
: 是有点误差的。另外matlab2009里面好像没有找到直接补码换原码的函数?
: 谢谢

w***w
发帖数: 1552
4
谢谢。
最高位为1,取反加1再除以2^16而不是2^16-1?

【在 b**********7 的大作中提到】
: 最高为0,直接除以7FFF再乘2V
: 最高为1,取反加1再除

w***w
发帖数: 1552
5
谢谢。线性拟合看着太复杂了。能简单介绍一下校准部分吗?

【在 a****l 的大作中提到】
: adc出来的是16bit signed integer,你要把0x的数字cast成16bit signed integer.
: matlab 中好像可以用typecast(x,type)转换的.
: 有误差是因为你没有校准过,简单的的确是可以用除法,比较准确的是要先校准再用线性
: 拟和.校准是必须的,所有的电子测量仪器都要校准的.
:
: 2v,

a****l
发帖数: 8211
6
非常简单,就是你给输入一个x伏的电压,看输出的数字是多少.多测几个就出来标定的曲
线(实际应该是直线)了.

【在 w***w 的大作中提到】
: 谢谢。线性拟合看着太复杂了。能简单介绍一下校准部分吗?
l***g
发帖数: 1035
7
所以说光做算法没有用。如果是面世估计就直接pass leh...
用fixedpoint math 直接 cast to sfix16 就可以了。

2v,

【在 w***w 的大作中提到】
: 做adc的数据转换,出来时2的补码,0x7FFF对应2v, 0x0000对应0v, 0x8000对应-2v,
: 怎么样简单从补码换算成电压?直接就输入补码转换成原码,除以0x7FFF?感觉这样算
: 是有点误差的。另外matlab2009里面好像没有找到直接补码换原码的函数?
: 谢谢

w***w
发帖数: 1552
8
谢谢。学傻了,看着校准也没反应过来。

【在 a****l 的大作中提到】
: 非常简单,就是你给输入一个x伏的电压,看输出的数字是多少.多测几个就出来标定的曲
: 线(实际应该是直线)了.

w***w
发帖数: 1552
9
谢谢。用的matlab是2009的,还没带几个工具箱。虽然自己写了个小程序转换了一下16
位的数据。懒得写 32位和64位的, 想着有没有什么函数直接用。破matlab没有fix po
int toolbox。

【在 l***g 的大作中提到】
: 所以说光做算法没有用。如果是面世估计就直接pass leh...
: 用fixedpoint math 直接 cast to sfix16 就可以了。
:
: 2v,

i*****t
发帖数: 24265
10
同上,直接判断最高bit,自己编程几句就行了,不用去找什么函数

【在 b**********7 的大作中提到】
: 最高为0,直接除以7FFF再乘2V
: 最高为1,取反加1再除

c****p
发帖数: 6474
11
把最高位翻转,乘以4,除以2^16-1,再减2就好了。

2v,

【在 w***w 的大作中提到】
: 做adc的数据转换,出来时2的补码,0x7FFF对应2v, 0x0000对应0v, 0x8000对应-2v,
: 怎么样简单从补码换算成电压?直接就输入补码转换成原码,除以0x7FFF?感觉这样算
: 是有点误差的。另外matlab2009里面好像没有找到直接补码换原码的函数?
: 谢谢

i*****t
发帖数: 24265
12
搞单片机多了,看到除法头疼
1 最高bit=0正,没问题
2 最高bit=1负,补码伺候
没有必要浪费乘除资源,如果单片机的话
1 (共1页)
进入EE版参与讨论
相关主题
请教,EE做CODER需要什么?推荐一款单片机
入门请教. 想弄懂指纹考勤机, 收银机之类和database地连接,应该学习什么?请问一下哪儿能买到单片机的套板 (转载)
为什么系统有微小漂移?求大拿们推荐学校~
外行求助:想买一个“分时器”只能由实验值确定一个公式的参数,公式有意义吗?
请问!!用c写code跟写入到firmware里面有什么不同??请教电路设计: 读入变阻器电阻转换为整数输出
问个技术问题 I2C协议 (转载)Mechanical Eng本科读EE/IE Master会怎样?
[转载] ZT:我们的CPU感觉MSP430系列单片机功能非常强大呀
SQUID measurement help (转载)请教一个基本的复位电路的问题
相关话题的讨论汇总
话题: 补码话题: 2v话题: 校准话题: 除以话题: 最高