原创 matlab中的persistent變量

函數裏面普通的變量都是局部變量,一旦函數退出,變量也就不復存在,而定義成persistent變量,可以在多次調用同一函數時保留變量的值。這種變量有點類似於全局變量,但和全局變量不同的是,它僅在定義該變量函數中可見,在其它函數中是不可訪問的

原创 matlab中的包文件夾管理:‘+’文件夾

引入 MATLAB中,爲了方便管理類和方法,可以使用package文件夾。即在文件夾名稱前加一個’+’號。它的作用是提供一個命名空間。 實例 有個包文件夾mypack。該目錄下有一個方法pkfcn.m;還有一個類文件夾@myclass

原创 feval,str2func

需求 我們有一個字符串A,而A實際是一個函數名或類名,我們想要執行函數A(),或新建一個A對象。 what [y1,...,yN] = feval(fun,x1,...,xM) fun爲函數名或句柄,X1……XM爲該函數的參數,y1……

原创 matlab信號分析與處理:時域分析

簡介 時域分析:對所記錄的信號幅值隨時間變化曲線進行分析。因在時間域進行,也稱爲時域分析。即對模擬信號採樣編碼轉化爲數字信號後,在時間域上分析這些數據,得到信號的參數。 1.波形分析 頻率(週期) 過零點檢測法 峯值(雙峯值) 初相

原创 matlab: 計算程序運行時間

需求 當需要定量的評價代碼的執行效率時,需要知道程序的運行時間。 實現 在matlab中,用tic 和 toc命令可以很輕鬆的實現。程序遇到tic時Matlab自動開始計時,運行到toc時自動計算此時與最近一次tic之間的時間。 實例 %

原创 matlab信號處理實例1:信號發生與採樣

問題描述 用GUI方式編程實現一個頻率在100-500Hz,幅值在0-2000,相位0-180度可變的正弦波信號,信號採樣率爲5120Hz 核心代碼 function slider1_Callback(hObject, eventdata

原创 MATLAB中的p文件

什麼是p文件 後綴爲.p的matlab文件。p意思是預解析(preparsed version)。即將.m文件裏的代碼預解析一遍,生成p文件。當再次調用時,實際上調用的就是.p文件。目的是提升調用速度。 有什麼用 一種用處是用來做加密。

原创 matlab:常用內置函數

ischar tf = ischar(A) %判斷是否爲字符數組 returns logical 1 (true) if A is a character array and logical 0 (false) otherwise.

原创 matlab:導入文件夾內所有.mat文件

需求: 需要導入一個文件夾內的所有mat文件 解決方案 利用dir()函數獲取該文件夾下的所有.mat文件名 利用for循環,循環load()所有文件名 實例 讀入這個文件夾‘I:\learn\EE\task1\T=50’下的所有ma

原创 matlab:字符串數組和string的區別

前言 在用sprintf()格式化輸出時,發現formatSpec可以是單引號創建的字符串數組,也可以是string(‘str’)創建的string。所以產生了疑惑,這兩者有什麼區別,各適用在什麼場合 官方文檔 Character arr

原创 matlab:使用全局變量

簡介 全局變量(global variable)是變量的一種類型,區別於局部變量。若將一個變量聲明爲全局變量,則它所佔的內存爲全局內存,而不是本地工作區內存。因此全局變量就可以被所有工作區訪問,修改。 實例理解 在函數間共用全局變量 定義

原创 AWG(任意波形發生器)的原理

AWG簡介 信號源:用來產生各種測試信號的儀器稱爲信號發生器或簡稱信號源。 信號源分類:按照產生信號的特徵可分類爲: 正弦信號發生器 函數發生器 任意波形發生器 …… AWG設計思想 把所需重現的信號波形截取一個週期進行均勻採樣,保

原创 matlab常用快捷鍵

前言 磨刀不誤砍柴工。熟練運用matlab中的快捷鍵能極大提高編程效率。 常用快捷鍵 clc :清屏命令窗口(還你一個清爽乾淨的命令窗口) clear: 清空工作區的變量 Tab:自動補全 Ctrl+C: 停止程序運行 Ctri+Tab

原创 matlab 常用文件讀寫操作

前言 在工作中,常常需要將數據寫入文件,或者從文件中讀取數據。在matlab中,實現文件讀寫操作的函數有許多。比如: fopen() fscanf() fprintf() load() dlmwrite() save() fclose(

原创 matlab:用sprintf()格式化輸出

sprintf()語法 %Format data into string str = sprintf(formatSpec,A1,...,An) %formats the data in arrays A1,...,An accordin