如何为 DAC 转换器编写 MATLAB 代码?
How do I write MATLAB code for a DAC converter ?
在第一步中,我生成了一个位序列 (0,1)..
我使用了 randi 命令 x = randi([0 1],1,3)
来生成随机位
我坚持了这两个步骤:
将序列按3位分成8级
[000, 001, 010, 011, 100, 101, 110, 111]
为每个量子级别分配 [-2, 2]
范围内的振幅值
我不会提供完整的源代码给你留下一些功课,但我会给你一些提示:
randi()
正在创建一个 0 和 1 浮点数序列
- 查看函数
bitpack
的文档。这允许您将数组元素中的位打包到单个字节中。请注意,您需要提供一个 "bits" 的 8 元素数组来填充一个字节。用户 'uint8' 作为 class 参数。
- 在将浮点数数组传递给 bitpack 之前,您必须使用
logical()
函数将其转换为 logical
数组。
- 查看
linspace()
的文档以创建一个包含 8 个元素的数组,其中包含等间距幅度值
- 在此数组中查找每个 "digital" 值的振幅值。
在第一步中,我生成了一个位序列 (0,1)..
我使用了 randi 命令 x = randi([0 1],1,3)
来生成随机位
我坚持了这两个步骤:
将序列按3位分成8级 [000, 001, 010, 011, 100, 101, 110, 111]
为每个量子级别分配 [-2, 2]
范围内的振幅值我不会提供完整的源代码给你留下一些功课,但我会给你一些提示:
randi()
正在创建一个 0 和 1 浮点数序列- 查看函数
bitpack
的文档。这允许您将数组元素中的位打包到单个字节中。请注意,您需要提供一个 "bits" 的 8 元素数组来填充一个字节。用户 'uint8' 作为 class 参数。 - 在将浮点数数组传递给 bitpack 之前,您必须使用
logical()
函数将其转换为logical
数组。 - 查看
linspace()
的文档以创建一个包含 8 个元素的数组,其中包含等间距幅度值 - 在此数组中查找每个 "digital" 值的振幅值。