2019年12月19日 星期四

加入ZedGrapControl控制項

1. 在專案視窗中點選"References",按"滑鼠右鍵" > "Add Reference..."。

2. 選擇"Browse"欄位後,按"Browse..."按鈕。

3. 點選"ZedGraph.dll"後,按"Add"。

4. 結果可以看到專案中增加參考的"ZedGraph"。

5. 使用"滑鼠左鍵"點選"Toolbox"視窗後,按"滑鼠右鍵" > "Choose Items..."。

6. 在".NET Framework Components"標籤欄,按"Browse..."按鍵。

7. 點選"ZedGraph.dll"後,按"開啟"。

8. 可以看到在".NET Framework Components"標籤欄中增加參考的"ZedGraphControl",最後按"OK"。

9. 結果可以在"Toolbox"視窗中看到"ZedGraphControl"控制項。

2019年8月8日 星期四

Allegro電路板設計 - 增加印刷面文字

1. 點選"Add Text"增加文字。

(2). 在"Active Class and Subclass:"欄位中選擇"Package Geometry"與"Silkscreen_Top"。

(3). 使用滑鼠點選欲增加文字的位置,直接輸入文字。

2019年6月29日 星期六

Quartus II 16.1 - 使用parameter參數傳遞時ModelSim無法模擬

(1). 一般描述完電路後會習慣按"Start Compilation"的ICON合成並直接進入ModelSim摸擬,可是當我加入了parameter參數傳遞時,如下圖所示,

會發現載入錯誤的,導致無法使用ModelSim摸擬,將parameter參數傳遞的方式刪除又可以正常使用ModelSim摸擬。

電路:

module Test
#(parameter Width = 1)(
input [Width-1:0] a,
input [Width-1:0] b,
output [Width-1:0] c
);

assign c = a & b;

endmodule


Testbench:

module Testbench;
reg [7:0]a;
reg [7:0]b;
wire [7:0]c;
Test #(.Width(8)) DUT(
.a(a),
.b(b),
.c(c)
);
initial 
begin
a = 8'h01;
b = 8'h00;
#100
a = 8'h02;
b = 8'h00;
#100
a = 8'h04;
b = 8'h00;
#100
a = 8'h08;
b = 8'h00;
#100
a = 8'h10;
b = 8'h00;
#100
a = 8'h20;
b = 8'h00;
#100
a = 8'h40;
b = 8'h00;
#100
a = 8'h80;
b = 8'h00;
#100
a = 8'h01;
b = 8'h01;
#100
a = 8'h02;
b = 8'h02;
#100
a = 8'h04;
b = 8'h04;
#100
a = 8'h08;
b = 8'h08;
#100
a = 8'h10;
b = 8'h10;
#100
a = 8'h20;
b = 8'h20;
#100
a = 8'h40;
b = 8'h40;
#100
a = 8'h80;
b = 8'h80;
#100
$finish;
end
endmodule

(2). 點選"Tools" > "Options"。

(3). 點選"EDA Tool Options",確認ModelSim-Altera欄位路徑後按"OK"。

(4). 滑鼠游標在工具列空白處按"滑鼠右鍵",勾選"Processing"。

(5). 編輯好電路與Testbench,按"Analyze Current File"進行分析與合成電路,

模擬前在Project的Top層圖示按"滑鼠右鍵" > "Settings...",

點選"Simulation",圈選"Compile test bench:"欄位,並加入之前所撰寫好的Testbench。


(6). 按"RTL Simulation"進行模擬。

(7). ModelSim可以正常載入並模擬。


2019年5月27日 星期一

Allegro電路版設計 - Highlight線路與關閉Highlight線路

(1). 點選"Highlight"的ICON,
 或是點選"Shadow Toggle"的ICON。

(2).  在"Find By Name"欄位中選擇"Net",在按下"More"按鍵,選擇欲 Highlight的線路後按"OK"。

(3). 顯示結果如下圖所示。

(4). 關閉Highlight線路,點選"Dehighlight"的ICON。

(5). 按住"滑鼠左鍵",框選之前Highlight線路的區域,既可關閉Highlight。

2019年5月21日 星期二

Allegro電路板設計 - 1:1列印設計圖

(1). 選擇"File" > "Plot Setup..."。

(2). 在"Plot orientation:"欄位中勾選"Auto center",如果需要列印背面也請勾選"Mirror",
在"Plot method:"欄位中勾選"Black and white",
在"Plot contents:"欄位中勾選"Sheet contents",
設定完成按"OK"結束。


(3). 選擇"File" > "Plot..."開始列印,或是選擇"Plot Preview..."預覽列印。

2019年5月13日 星期一

OrCAD 電路圖設計-產生Excel BOM表

(1). 點選"Tools" > "Bill of Materials..."。

(2). 勾選"Open in Excel",之後按"OK"。

(3). 結果如下所示。

Allegro電路板設計 - 鋪銅後修改單個Pad、Via的Shape

(1). 點選"Edit" > "Properties"。

(2). 只勾選"Pins"。

(3). 先點選Pad或Via,在"Available Properties"欄中選擇"Dyn_Thermal_Con_Type","Value"欄位中選擇欲修改的形狀,最後按"Apply"結束設定。

Orthogonal: 十字型連接。
Diagonal: X型連接。
Full Contact: 完整連接。
8 Way Connect: 八個連接點。
None: 不連接。

2019年4月29日 星期一

Linux下VIM安裝插件-數字自動排序

(1). 先進入"root"管理員權限,下載VIM插件"visincr.vim",路徑:https://www.vim.org/scripts/script.php?script_id=670,並複製到路徑"/usr/share/vim/vim63/plugin"下,其中63是VIM的版本編號,重新啟動作業系統即可

範例:
:I 
Use "Ctrl+V" to Original Select, ":I" 
           8            8 
           8            9 
           8            10 
           8            11 
           8            12 

:I -1 
Use "Ctrl+V" to Original Select, ":I -1" 
           8            8 
           8            7 
           8            6 
           8            5 
           8            4 

:II 
Use "Ctrl+V" to Original Select, ":II" 
           8             8 
           8             9 
           8            10 
           8            11 
           8            12 


:II -1 
Use "Ctrl+V" to Original Select, ":II -1" 
           8            8 
           8            7 
           8            6 
           8            5 
           8            4 

:IMDY 
Use "Ctrl+V" to Original Select, ":IMDY"
        06/10/03     6/10/03 
        06/10/03     6/11/03 
        06/10/03     6/12/03 
        06/10/03     6/13/03 
        06/10/03     6/14/03 

:IYMD 
Use "Ctrl+V" to Original Select, ":IYMD" 
        03/06/10    03/06/10 
        03/06/10    03/06/11 
        03/06/10    03/06/12 
        03/06/10    03/06/13 
        03/06/10    03/06/14 

:IDMY 
Use "Ctrl+V" to Original Select, ":IDMY" 
        10/06/03    10/06/03 
        10/06/03    11/06/03 
        10/06/03    12/06/03 
        10/06/03    13/06/03 
        10/06/03    14/06/03 

:ID 
Use "Ctrl+V" to Original Select, ":ID" 
          Sun       Sun 
          Sun       Mon 
          Sun       Tue 
          Sun       Wed 
          Sun       Thu 

:ID 
Use "Ctrl+V" to Original Select, ":ID" 
         Sunday     Sunday 
         Sunday     Monday 
         Sunday     Tuesday 
         Sunday     Wednesday 
         Sunday     Thursday 

:IA 
Use "Ctrl+V" to Original Select, ":IA" 
           a          a 
           a          b 
           a          c 
           a          d 
           a          e 

:IO 
Use "Ctrl+V" to Original Select, ":IO" 
            5         5 
            5         6 
            5         7 
            5         10 
            5         11 

:IR 
Use "Ctrl+V" to Original Select, ":IR"
           II         II 
           II         III 
           II         IV 
           II         V 
           II         VI 


Use "Ctrl+V" to Original Select, ":IX"
            8         8 
            8         9 
            8         a 
            8         b 
            8         c 

2019年4月28日 星期日

Allegro電路板設計 - 機械層添加螺絲孔

(1). 點選"Place Manual"增加元件。

(2). 在標籤欄"Advanced Settings"中,勾選"Library"。

(3). 在標籤欄"Placement List"中,選擇"Mechanical symbols"機械層。

(4). 勾選欲加入的螺絲孔元件,並使用Command輸入座標值,最後按"OK"結束。
例如:
x (x座標值) (y座標值)

2019年4月19日 星期五

Windows下GVIM安裝插件-數字自動排序

安裝VIM插件"visincr.vba.gz",路徑:https://www.vim.org/scripts/script.php?script_id=670

(1). 下載後點選visincr.vba.gz,按"滑鼠右鍵"解壓縮。

(2). 解壓縮後,點選visincr.vba,按"滑鼠右鍵",選擇使用Vim開啟。

(3). 按"ESC"鍵,輸入":so %",安裝插件。

(4). 安裝完成。

(5). 測試安裝是否成功,使用Vim開啟一個新的編輯檔案,按"i"輸入文字如下所示。

(6). 按"ESC"至命令模式,在按"Ctrl + V",之後按'方向鍵"選擇需排序的數字,最後輸入":I"按"ENTER"。

(7). 顯示結果如下所示。

範例:
:I 
Use "Ctrl+V" to Original Select, ":I" 
           8            8 
           8            9 
           8            10 
           8            11 
           8            12 

:I -1 
Use "Ctrl+V" to Original Select, ":I -1" 
           8            8 
           8            7 
           8            6 
           8            5 
           8            4 

:II 
Use "Ctrl+V" to Original Select, ":II" 
           8             8 
           8             9 
           8            10 
           8            11 
           8            12 


:II -1 
Use "Ctrl+V" to Original Select, ":II -1" 
           8            8 
           8            7 
           8            6 
           8            5 
           8            4 

:IMDY 
Use "Ctrl+V" to Original Select, ":IMDY"
        06/10/03     6/10/03 
        06/10/03     6/11/03 
        06/10/03     6/12/03 
        06/10/03     6/13/03 
        06/10/03     6/14/03 

:IYMD 
Use "Ctrl+V" to Original Select, ":IYMD" 
        03/06/10    03/06/10 
        03/06/10    03/06/11 
        03/06/10    03/06/12 
        03/06/10    03/06/13 
        03/06/10    03/06/14 

:IDMY 
Use "Ctrl+V" to Original Select, ":IDMY" 
        10/06/03    10/06/03 
        10/06/03    11/06/03 
        10/06/03    12/06/03 
        10/06/03    13/06/03 
        10/06/03    14/06/03 

:ID 
Use "Ctrl+V" to Original Select, ":ID" 
          Sun       Sun 
          Sun       Mon 
          Sun       Tue 
          Sun       Wed 
          Sun       Thu 

:ID 
Use "Ctrl+V" to Original Select, ":ID" 
         Sunday     Sunday 
         Sunday     Monday 
         Sunday     Tuesday 
         Sunday     Wednesday 
         Sunday     Thursday 

:IA 
Use "Ctrl+V" to Original Select, ":IA" 
           a          a 
           a          b 
           a          c 
           a          d 
           a          e 

:IO 
Use "Ctrl+V" to Original Select, ":IO" 
            5         5 
            5         6 
            5         7 
            5         10 
            5         11 

:IR 
Use "Ctrl+V" to Original Select, ":IR"
           II         II 
           II         III 
           II         IV 
           II         V 
           II         VI 


Use "Ctrl+V" to Original Select, ":IX"
            8         8 
            8         9 
            8         a 
            8         b 
            8         c