matlab n-lut,MATLAB学习第一天——基础知识

一、内部环境

1.搜索路径:变量——内部函数——程序文件(当前文件夹—文件搜索路径)(文件搜索路径的设置方法:1.path()函数 2.主页-设置路径)

二、数值数据

1.sin(弧度制),sind(角度)

2.abs() 实数求绝对值,复数求模,字符求ASCII值

3.取整函数:

fix():舍小数取整

round():四舍五入取整

ceil():向上取整

floor ():向下取整

4.取余函数:rem(m,n)

1f22bc520d6ab4887715c09d4d145fa7.png

5.判断素数的函数:isprime()

三、变量管理

1.save():创建一个文件夹,将变量存入。

2.loud():将文件装入当前工作文件夹,后可直接使用变量。

四、矩阵表示

1.eg:a=[1,2,3;4,5,6]

2.含冒号表达式eg:b=[1:5;6:10]

3.结构矩阵

4.单元矩阵:每个元素是不同的类型

五、元素的引用

1.下标(会自动扩展)

6a91e15cc41812111ad3b6ea4642af03.png

2.序号应用(矩阵元素的储存顺序:列储存)

82d43524347e813a2b38724053609979.png

3.sub2ind()函数(s参数一般用size函数获得)

b3ef0b0e6a6ea1b552575efd5b1369bf.png

4.ind2sub()函数

3b038400dc0a53cdcd058326552cdc47.png

5.用冒号表达式取子矩阵

22e2625e371fa04c1d05ef72d2811f3d.png

6.空矩阵的删除功能**(**只改变了矩阵的形状,并不改变储存结构)

d6456192c71c1f853acccfa9224c357b.png

六、基本运算(都是以矩阵形式进行)

1.算术运算

注意左除,右除/(看除号上部指向区分)

点运算是矩阵对应元素计算,与普通运算不同,(点运算要求是同型矩阵)

2.关系运算

不等于:~=

3.逻辑运算

注意:1.运算符的先后关系:

单目>双目

算>关系>逻辑

eg:~9==1

得到0

2.关系与逻辑运算如果是同型矩阵之间的运算,则得到一个元素只含零和一的矩阵。

七、字符串的相关操作

1.字符串含引号的表达方式(引号用双引号表示)

eg:‘I’‘am a teacher’

2.字符串与ASCII码之间的转换

char()函数与abs()函数

3.字符串之间的比较

strcmp(s1,s2)逐一比较

strncmp(s1,s2,n)比较前n个

strcmpi(s1,s2)忽略大小写比较

strncmpi(s1,s2,n)忽略大小写比较前n个

4.替换操作

aa675bf88562e39a5eaba4a66d34aeb0.png

注意:

6a2931f74476d33888ac6a7c266e803b.png

find():找到符合相关条件元素的下标

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
DDS(Direct Digital Synthesis)直接数字合成技术是一种数字信号处理技术,用于产生高精度、高稳定度、高分辨率的周期性信号。DDS技术的主要思路是:将一个固定的参考频率信号和一个可变的相位调制信号相乘,从而产生所需频率的输出信号。 在MATLAB中,我们可以通过使用内置函数sin()来生成正弦波信号。例如,我们可以生成一个频率为10 Hz,振幅为1的正弦波信号,并将其绘制成图形: ``` t = 0:0.001:1; x = sin(2*pi*10*t); plot(t,x); ``` 在Verilog中,我们可以使用DDS模块来生成正弦波信号。以下是一个简单的DDS模块: ``` module dds( input clk, //时钟信号 input reset, //复位信号 output reg [7:0] sin_out //正弦波输出信号 ); reg [31:0] phase_acc; //相位累加器 reg [7:0] sin_lut [0:255]; //正弦波查找表 //初始化正弦波查找表 initial begin for (i = 0; i < 256; i = i + 1) begin sin_lut[i] = $signed(127*sin(2*3.14159*i/256)); end end always @(posedge clk) begin if (reset) begin phase_acc <= 0; sin_out <= 0; end else begin phase_acc <= phase_acc + 100; //相位累加器步进为100 sin_out <= sin_lut[phase_acc[31:24]]; //从查找表中读取正弦波值 end end endmodule ``` 在这个DDS模块中,我们使用相位累加器来控制正弦波的频率,使用查找表来存储正弦波的值。在时钟上升沿时,相位累加器步进100,从查找表中读取正弦波值,并将其输出。 需要注意的是,在这个DDS模块中,我们使用了固定的步进值100。如果我们想要生成不同频率的正弦波信号,我们需要改变步进值。例如,如果我们想要生成频率为1 kHz的正弦波信号,我们需要将步进值改为1000*256/时钟频率。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值