F2812芯片AD模块数据处理时为什么把两数相乘

[复制链接]
 楼主| yjw16 发表于 2014-3-29 09:25 | 显示全部楼层 |阅读模式
DatQ15 = (AdcRegs.ADCRESULT0>>1)&0x7FFF;           // Convert raw result to Q15 (unipolar signal)
Tmp = (int32)p->Ch1Gain*(int32)DatQ15;      // Tmp = gain*dat => Q28 = Q13*Q15
p->Ch1Out = (int16)(Tmp>>13);               // Convert Q28 to Q15

Ch1Gain是int16类型。这三行程序没看懂,有大神指导下吗?
zhangmangui 发表于 2014-3-29 15:27 | 显示全部楼层
将采集结果乘了增益什么的   不知道为什么
你要看看它具体使用什么方式来处理AD采集值的
 楼主| yjw16 发表于 2014-3-29 16:22 | 显示全部楼层
zhangmangui 发表于 2014-3-29 15:27
将采集结果乘了增益什么的   不知道为什么
你要看看它具体使用什么方式来处理AD采集值的 ...

这个是无刷直流控制的AD模块
您需要登录后才可以回帖 登录 | 注册

本版积分规则

9

主题

19

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部