我想知道为什么通过uint8传递正弦信号(幅度:1,频率= 1 1 Hz,采样率:0.01秒)会产生方波。虽然我明白如果正弦波的值高于256,它应该被截断为255,正弦波的幅度只有1.为什么方波0到255?
答案 0 :(得分:1)
您所看到的是整数溢出饱和度的函数。 (注意,方波中的255对应于符号波的负部分,不正部分,这是你的问题似乎表明你正在思考。正弦波的正面部分正在向下舍入为零。)
根据Data Type Conversion Block的文档,特别是 Saturate on integer overflow 部分,默认情况下是正弦波的负部分(无法表示)完全在uint8)包裹到255.如果您玩四舍五入的方式,以及如何处理饱和度,您应该更好地了解正在发生的事情。