您现在的位置:首页 >> ★免费资源 >> 源码下载 >> 内容

基于matlab正弦值查找表

时间:2017-12-22 19:29:13 点击:

  核心提示:QQ :1224848052 微信:HuangL1121 邮箱:1224848052@qq.com...
%function address_sin; 
%in=pi/4097:pi/4096:2*pi; 
in=0:7/8192:7; 
quan_width=18; 
in_v=round(in.*(2^quan_width)); %quan_width决定了实际地址和量化后的地址差 
interval=2/2048 
interval_v=round(interval*(2^quan_width-1))%表中的bits小数 
addr=round(in/interval); 
addr_v=fix(in_v/interval_v); 
 
n=1:1000; 
figure(1) 
plot(n,addr(n)-addr_v(n),'r'); 
 
for i=1:8193 
    if (addr(i)==0|addr(i)==3217|addr(i)==6434) 
       addr_quad(i)=0; 
   else   if(addr(i)==1608|addr(i)==4825) 
          addr_quad(i)=1608; 
           else  
               if (addr(i)<1608) 
               addr_quad(i)=addr(i); 
               else if (addr(i)<3217) 
                  addr_quad(i)=3217-addr(i); 
                    else  if (addr(i)<4825) 
                           addr_quad(i)=addr(i)-3217; 
                          else  if(addr(i)<6434)   
                                   addr_quad(i)=6434-addr(i);  
                               else 
                                   addr_quad(i)=1; 
                               end 
                           end 
                  end 
              end 
            end 
        end 
    end 
end 
for i=1:8193 
    if (addr_v(i)==0|addr_v(i)==3217|addr_v(i)==6434) 
        addr_v_quad(i)=0; 
    else  if(addr_v(i)==1608|addr_v(i)==4825) 
                   addr_v_quad(i)=1608; 
           else if (addr_v(i)<1608) 
                     addr_v_quad(i)=addr_v(i); 
                else if (addr_v(i)<3217) 
                       addr_v_quad(i)=3217-addr_v(i); 
                     else  if (addr_v(i)<4825) 
                     addr_v_quad(i)=addr_v(i)-3217; 
                           else if(addr_v(i)<6434)   
                                   addr_v_quad(i)=6434-addr_v(i);  
                               else 
                                   addr_v_quad(i)=1; 
                               end 
                           end 
                     end 
                 end 
             end 
         end 
     end 
      
                        
 
        
%this function is for the creation of .mif file 
%parameters:depth,width,radix 
%function creat_coe(depth,width); 
depth=2^11;%2^11 %depth决定了按量化前后的地址查sin表所得值间区别 
width=15; 
A=2^(width-1)-1; 
sinx=round(A*sin(2*(0:2047)/depth)); 
% length(sinx) 
% plot(addr_quad) 
    sin1=sinx(addr_quad+1); 
    sin2=sinx(addr_v_quad+1); 
    
    error=sin1-sin2; 
    figure(2) 
    plot(error,'g'); 
    figure(3) 
    plot(addr_quad,sin1,'r'); 
    figure(4) 
    plot(addr_v_quad,sin2,'y'); 
    figure(5) 
    plot(addr_quad,sin1,'r',addr_v_quad,sin2,'y'); 

作者:基于matlab正弦值查找表 来源:基于matlab正弦值查找表
  • 您是如何找到本站的?
  • 百度搜索
  • Google搜索
  • 查阅资料过程中
  • 论坛发现
  • 百度贴吧发现
  • 朋友介绍
本站最新成功开发工程项目案例
相关文章
  • 没有相关文章
相关评论
发表我的评论
  • 大名:
  • 内容:
  • MATLAB代做,MATLAB专业代做,MATLAB淘宝代做(www.hslogic.com) © 2018 版权所有 All Rights Reserved.
  • Email:highspeed_logic@163.com 站长QQ: 1224848052

    专业代做/代写/承接、MATLAB、SIMULINK、FPGA项目、博士/硕士/本科毕业设计、课题设计、论文,毕业论文,Coursework、Eassy、Assignment