發表文章

目前顯示的是 2019的文章

PSPICE不正確使用手冊-方波

圖片
錒錒今天做作業發現方波不知道要怎麼生出來就去GOOGLE了一下 SOURCE.slb 裡面有一個叫做 VPULSE 的元件可以拿來產生方波 參數的話 V1 起始電壓(單位為V) V2 脈衝電壓(單位為V) TD 延遲時間(單位為s) TR 上升時間(單位為s) TF 下降時間(單位為s) PW 脈衝寬度(單位為s) PER 週期(單位為s) 附上我用小畫家畫的精美插圖 理論上我要的方波TR跟TF都是趨近於0 網路上有人說這樣會出錯所以要設一個很小的數值   e.g.  1n 我是自己試過如果打0的話圖形會變成梯形 不太清楚是甚麼原因造成的,有空再問助教八!

PSpice不正確使用手冊-畫畫&分析篇

圖片
PSpice 下載完成之後會有這幾樣東西 1.Cadence Help: 感覺可以查詢什麼東西,待補充 2.Capture CIS Lite:  今天會用到的東西,可以拿來畫電路圖跟分析(分析其實還是靠PSpice AD) 3.PSpice Advanced Analysis Lite: 感覺可以分析,待補充 4.PSpice AD Lite: 感覺也可以分析,待補充 5.SQLite 3: 阿災,待補充 6.Re-install ODBC Drivers: 阿災,待補充 讓我們打開Capture CIS Lite 那麼要完成我們的作業還必須經過下列三個步驟 1.專案的新增 2.繪製電路圖 3.分析輸入輸出訊號 1.專案的新增 2.繪製電路圖 新增電阻R元件並更改電阻值 新增更多元件&接線 3.分析輸入輸出訊號

PSpice不正確使用手冊-下載篇

圖片
有啥麼事情比系辦選課時唬爛你老師會加開名額還要雷人? 那就是二年級時大家把PSpice都當打字練習程式在那裏抄抄抄 現在老師卻要你認真尻出一個電路。而且老實說學校從頭到尾其實 沒有任何一堂課 認真地去教你如何去操作PSpice、示波器、電源供應器或是他媽的訊號產生器時 你只能去找他媽的GOOGLE大大求救 1.首先要去下載PSpice 官網: https://www.orcad.com/resources/orcad-downloads PSpice 公司OrCAD 官網當中的 RESORCES 欄頁裡有OrCAD PSpice Designer Lite (Capture & PSpice Only) 點選圖中連結下載 之後他會叫你填一堆個資 填完之後他就會將下載連結寄到妳的信箱 下載出來還是一個壓縮檔XD 點選setup.exe安裝就完成6!

Leetcode-TwoSum

圖片
今天心血來潮了完成人生第一題leetcode /** * Note: The returned array must be malloced, assume caller calls free(). */ int* twoSum(int* nums, int numsSize, int target) { int *a= (int*)malloc(2*sizeof(int)); for(int i=0; i<numsSize; i++){ for(int j=i+1; j<numsSize; j++){ if(nums[i]+nums[j]==target&&i!=j){ a[0]=i; a[1]=j; //return a; } } } return a; } 詳細之後再補

危機處理-藍芽傳送字元(HC-05)

圖片
今天來補個用藍芽傳字元給M0的程式碼 使用的藍芽模組是HC-05(主從合一),之後有空再補上HC-05的設定 查了查資料發現藍牙傳輸的方式不會對傳輸內容做任何的手腳(應該說調變?)等效於一條RS-232傳輸線 所以關於藍牙與板子的溝通就是通過UART協定去寫 而NUC140關於UART的腳位如下 (擷取自樹德科技大學資訊工程系 吳鴻志副教授之PPT) 我測試用的程式碼如下: #include <stdio.h> #include "NUC1xx.h" #include "Driver\DrvSYS.h" #include "Driver\DrvGPIO.h" #include "Driver\DrvSPI.h" #include "LCD_Driver.h" #include "ScanKey.h" #include "Seven_Segment.h" #include "LCD_Driver_Extend.h" #include "Driver/DrvUART.h" #define DATASIZE 1 uint8_t mode; extern unsigned char Ascii[]; unsigned char TEXT1[16]="Keypad = "; unsigned char LCD_Point[64]; unsigned char DisplayBuf[8*128]; int main(void) { UNLOCKREG(); DrvSYS_SetOscCtrl(E_SYS_XTL12M, 1); SysTimerDelay(5000); /* HCLK clock source. 0: external 12MHz; 4:internal 22MHz RC oscillator */ DrvSYS_SelectHCLKSource(0); LOCKREG(); Initial_pannel(); //call initial pannel f