⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 生成mif.txt

📁 错误检测与纠正电路的设计与实现用VHDL语言在CPLD上实现串行通信.doc
💻 TXT
字号:
========================正弦波========================
index = linspace(0,pi/2,2^6);                      %将0到pi/2平均分成2^6份
sine_value = sin(index);                                  % 生成2^6个值
sine_value = sine_value * (2^6 -1 );            %将产生的值得放大,减一是防止溢出
sine_value = fix(sine_value);                    %将值转化为16位整数
len = length(sine_value);
fid = fopen('d:\sine_value.mif','w');                         %为幅度值的存储准备一个文件
for i = 1 : len
fprintf(fid,'%X\n',sine_value);                  %循环将值写入文件中,格式为16进制
end
fclose(fid);

========================三角波=========================
Fs=255;
t=0:0.2/Fs:0.2;
x1=(sawtooth(2*pi*5*t,0.5)+1)/2*15;
plot(t,x1),axis([0,0.2,0,15])
x=round(x1);

len=length(x)
fid = fopen('d:\rom.mif','w');                         %为幅度值的存储准备一个文件
fprintf(fid,'MEMORY_INITIALIZATION_RADIX=16;\n');
fprintf(fid,'MEMORY_INITIALIZATION_VECTOR=\n');

fprintf(fid,'%X,\n',x);                  %循环将值写入文件中,格式为16进制

endfclose(fid);

========================fix,floor,round,ceil================
fix(x),将x向0取整,		如1.1>=1,	2.9>=2;
floor(x),直接舍弃小数部分,	如1.1>=1,	2.9>=2;
round(x),向最近的整数取整,	如1.4>=1,	1.5>=2;
ceil(x),向上取整,		如1.1>=2,	2.9>=3;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -