Cypress技术论坛
直播中

张虎豹

7年用户 1556经验值
私信 关注
[问答]

如何使用VDAC来获得输出?

大家好,
如何使用VDAC来获得输出?
我在CY8CITK-050套件中从代码示例FieldAdAccVDACK民意调查中删除了VDAC和OPAP,使用电位器ASADC输入,并添加UART在PC上RS232的帮助下查看结果。
直到ADC的输出一切都很好。
问题是在滤波器输出端的结果。我知道它们是2的补码,但我不知道如何才能从它们中得到“正常值”。我只是想能够得到4V时,电位是4V。等等。如果有人告诉我24位分辨率的解决方案,那就太好了。
我想使用类似的东西
UIT8后滤器=滤光器Read 8(滤液通道);
Simulf(FielSouthSouth:“过滤后原始:%i”,后过滤器);
UARTHAR1L字符串(FILL字符串);
得到一个等式,把这些值转换成可以理解的值,但是这些值对于我来说太乱了,而且依赖于我使用的数据类型(UINT8,浮点,int…等)!!
谢谢你的帮助。

回帖(7)

王琳

2019-10-17 09:38:55
欢迎来到论坛。
2的补码是“正规”整数。你可能需要一个符号展开,但通常你的电位计值是正的。
您应该将(24)位值转换为32位整数。
您的变量“后过滤器”是未签名的,但是您选择的格式%i是签名的。请看这里的格式说明符。
我不太确定:滤波器是用来过滤频率的,但是你的电位器不传送一个,而是纯DC。
使用滑动平均值不是更合适吗?
鲍勃
PS:你在德国的什么地方?我住在不来梅附近
举报

张虎豹

2019-10-17 09:48:58
谢谢你的评论,鲍伯!我正在尝试不同种类的输入,但是移到电位器,希望能更好地理解滤波器输出。我知道输入正确,所以我想我能理解这个2的补码表示…还不太成功!关于输出,它的范围从0到255(我从8位值开始),但从27(大约2,5伏电位器),它直接跳到228!这把我逼疯了!!!!我注意到这%I后张贴,并将其更改为%u。我的情况没有什么不同。我住在图林根。在森林里:- - PPS:我从论坛开始,几个星期后。你在这里帮了大忙
举报

王琳

2019-10-17 09:59:40
能否请您发布您的完整项目,以便我们都可以查看您的所有设置。要做到这一点,使用C造饰者和GT;文件-GT;创建工作区束(最小)并附加结果文件。
鲍勃
举报

张虎豹

2019-10-17 10:14:39
我已经附加了它,连同输出日志文件(将它更改为TXT)。提前感谢
输出程序
408字节
Cyrkk.Access V01.Zip
915.5 K
举报

更多回帖

发帖
×
20
完善资料,
赚取积分