Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

搜索
1 2 3 4
查看: 21601|回復: 7
打印 上一主題 下一主題

[問題求助] 使用Schematic的Highlight遇到的問題

  [複製鏈接]
跳轉到指定樓層
1#
發表於 2009-7-10 11:14:02 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
大大們使用Cadence Schematic 常常會用到 Highlight Net的功能
  T9 v* b) W  e( K* H" d# a& N. V$ y% ^+ Y: j. @5 w
視窗選項是Design -> Probe -> Add Net 9(9是指快速鍵)
! S0 M! J: ?  A* Q1 }8 V+ @8 l! j5 I; ^: E
按了9 就可以去選線 Highlight
. f  Z* i# f. H1 q" ^, {% |! M# n1 k2 x
但是每當亮了一堆線 想要清除的時候 卻只能 用滑鼠選
( C. p* s5 |) ~! VDesign -> Probe -> Remove Net 或是  Remove ALL
( x$ g1 j# ?3 }+ x% q  E* y% G
! h- f9 W9 e. l" }, q: r1.是不是 有熱鍵可以 直接 Remove Net 或是 Remove ALL?( S" ~. o" R1 V" j

% k" t+ Z+ B/ }3 ?& S" \. J2.如果沒有熱鍵 ' U2 ]5 j/ M0 @$ j# u
我找到了一個檔案 SchBindkeys.il 是不是 可以直接寫入? 要怎麼寫?# Y9 v7 g4 O1 _* E! i3 M/ N
' w- H* F4 }' H) G# o/ z9 o; {
裡面有一行是 bk("Schmatic" "<key>9" "geAddNetProbe()")9 @) L! i# T8 Y: L+ s0 A9 r
這行是Design -> Probe -> Add Net 9 的設定
0 n1 ]& A% U  x0 }2 N4 l( C" ]" _8 M

. y  W- S" Q8 |4 y5 ]3.語法"geAddNetProbe()")   開頭的有分 "ge" "hi" "Schhi" "Sch" 各是指什麼意思?5 U6 C1 d& c0 y9 ?% w( k9 y( t
1 H3 |) Z) l9 T0 m2 a  B$ a3 D; _8 a
感謝各位
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 頂41 踩 分享分享
推薦
發表於 2009-7-11 15:37:19 | 只看該作者
建議去研究一下怎麼設bindkey,這在composer或VLE等Cadence的軟體都是一樣的,對我而言,這個算是工程師的基本常識。只要你會設bindkey,你的問題就自然解掉了。這論壇中也有很多篇討論bindkey的文章,或者你從Cadence的online document都可找到進一步詳細解釋。
4 k) h& K8 `: B! T3 K* b; u* Q& U6 V6 U
( c& _5 ^* E; E0 Nex.要remove all probe net,只要加入以下這行在你自己.cdsinit file即可:7 Y' {+ n# T# Q1 I1 I
===============================================================# a+ {' V, I0 C6 E/ L5 e+ ~! P8 t
hiSetBindKey("Schematics" "<Key>F7" "geDeleteAllProbe(getCurrentWindow() t)")0 X  y8 C" L+ H) n, B
===============================================================
' A2 }, Y7 `. b, |. k, w& Z% h: jps.我假釋你要設成F7這個鍵。) R4 C$ x6 z3 a# J, q

% W* \5 G) Z) `又:
% B2 m1 Z. K4 ~* d" H6 Kge=> graphic editor
2 ?# v: M4 o& O' {$ _hi=> human interface- }  q) C7 H& r+ f! |5 T1 r& y
Schhi=> Schematic human interface
% c% i8 u8 c) p/ |0 v' ?Sch=> Schematic; }: E8 S- r1 t7 o  _6 a
不用特定記,除非你有打算自己寫SKILL code。
- P# |' a- Q5 o) e( G6 G
; B* Z: z: d1 n* q6 ?; X/ ^Hope this help,4 a7 [6 A( i% V; S
Veteran

評分

參與人數 1 +5 收起 理由
tcm099 + 5 非常詳細的解說!謝謝!

查看全部評分

回復 支持 1 反對 0

使用道具 舉報

3#
 樓主| 發表於 2009-7-13 18:07:58 | 只看該作者
感謝~
, K# x8 ~+ n- ^. d( G8 b' C4 U, ?$ d
但是 假如說 系統底下 搜尋不到 .cdsinit 這個檔案
! u0 ?: m. Q& o5 K9 u  G3 N7 c8 D" J5 R2 o+ R- V
只能找到了一個檔案 SchBindkeys.il ...
4#
 樓主| 發表於 2009-7-14 10:17:12 | 只看該作者
我試這去把 SchBindkeys.il 裡面描述的 指令去做更改( O) ^4 {  I2 g0 m& Y2 I; R

3 i; Q/ ?9 b3 {6 U& L/ O然後重新開啟,發現對於Schmatic是有效果的
  i/ E$ G" e" |. Y" S9 k7 E4 ]: P/ Q& g$ p3 h7 _
所以我覺得SchBindkeys.il是可以設定BindKey的檔案
" w+ Y' E- H0 Q0 A7 y% J) |8 z1 ~$ U2 s+ B
於是我將 1 f( e/ K" O/ a& a
- G$ m' g* A# W3 V/ X4 h
hiSetBindKey("Schematics" "<Key>F7" "geDeleteAllProbe(getCurrentWindow() t)")
, J3 b1 h/ J( b: E. \
5 N! [& y$ H, u$ _寫入 (也有試著更改語法描述方式Remove.Clear.....等等 )
3 {9 v$ ^. y% f2 I0 D5 m% S4 X
前面有改成bk(因為檔案裡其他的語法都以bk開頭)* q1 D& k: b& Y

: q+ A8 g! O5 E9 u: m不論怎麼改  當我使用 設定的BindKey時,都還是出現
4 w: T8 ~- }5 ~+ ~, Q2 W$ ~5 X* L# {# f& {+ g" y
SYNTAX ERROR found at line 1 column 37 of file *string*$ [! |$ a' b$ ?+ |5 `: K
lineread /read : eyntax error encountered in input/ b, i$ n- u" n, _; k
, S& b9 A# t% k1 U- p& Y* A
的錯誤訊息
5#
發表於 2009-7-20 00:22:18 | 只看該作者
原帖由 tcm099 於 2009-7-13 06:07 PM 發表 6 b/ C4 H3 J' V7 ~& G" C! L
感謝~8 U# H7 q2 G" k, [6 \
$ }% d0 ^- R$ j# ?! [! G, Y
但是 假如說 系統底下 搜尋不到 .cdsinit 這個檔案 : k$ D" y5 t) ~% K! \1 f7 ]
7 U+ Q$ b5 g1 B' o/ ~2 o
只能找到了一個檔案 SchBindkeys.il ...

! N: F' G$ B. F8 c. N+ T  _$ ~  ]  R7 u% g9 v9 g; R& W( y, s# ]
+ b2 ?+ @5 @* P5 w7 S0 e& L) F
一開始default是不會有那個file的。你可以去把$CDSHOME/tools/dfII/cdsuser/.cdsinit copy到你home dir下,在檔案最後新增自己的bindkey設定。當然,自己建一個空的.cdsinit 亦可。
+ l7 R( g, y6 c" O% N
* J+ y+ l% c3 V2 C2 k% {- HVeteran

評分

參與人數 1 +5 收起 理由
tcm099 + 5 OK~我把檔案COPY到HOME底下試看看

查看全部評分

6#
發表於 2009-7-20 00:26:59 | 只看該作者
原帖由 tcm099 於 2009-7-14 10:17 AM 發表 5 h. h, j2 E3 w& X0 l8 O3 [4 p
我試這去把 SchBindkeys.il 裡面描述的 指令去做更改6 q1 u, v2 B' P- s( W' }3 w

8 e) D" I/ |! Z9 W1 y8 g: `$ ~然後重新開啟,發現對於Schmatic是有效果的! ?0 I( s" W7 ~* x- B
" K* X1 C  [- ^( s1 F1 Z- N/ K
所以我覺得SchBindkeys.il是可以設定BindKey的檔案7 D2 j: p1 V6 @( l8 t; q& J& J7 t

+ B1 K& h* L: G' M) @& Z  _6 w於是我將 ( o/ C- w- O! _/ I. l! S6 Z9 g
3 Q0 a# A2 e% i' l+ Q7 R5 K
hiSetBindKey("Schematics" "F7" "geDelete ...

) E+ d, s$ C2 [$ }
4 z  ^6 A8 W% g( ^6 M' o4 g請把你改完後的檔案內容貼出來看看..看起來還是syntax不對..切記,大小寫一定要對..

評分

參與人數 1 +5 收起 理由
tcm099 + 5 大小寫check過了~謝謝~

查看全部評分

7#
 樓主| 發表於 2009-7-20 15:38:12 | 只看該作者
原帖由 veteran 於 2009-7-20 12:22 AM 發表
, [+ t  U  o' h0 J) E9 ~( K1 U0 O8 T2 \; T2 g# o, @
& @, d2 W$ }3 F* s) k( Z& z

. L6 L4 @. D- t4 q) Y3 A6 m, \一開始default是不會有那個file的。你可以去把$CDSHOME/tools/dfII/cdsuser/.cdsinit copy到你home dir下,在檔案最後新增自己的bindkey設定。當然,自己建一個空的.cdsinit 亦可。3 X+ B9 `! b" k  l4 m$ b5 n! z

1 `2 [+ {9 o' P2 @+ HVeteran

/ @6 ?& C& A' I1 {# l- I/ {# Y% ]5 z$ @
已經將.cdsinit COPY 至 home目錄下
; E2 C+ D; p+ A+ l
. ?& Q. b' M3 L- x5 U  U並且將9 ~; E- ]  N" h4 ^. E: Y4 Q
hiSetBindKey("Schematics" "<Key>F7" "geDeleteAllProbe(getCurrentWindow() t)")
. R+ p9 w% ?) ^1 Z; Y4 B& v5 D寫在最後一行8 e+ X3 M: U9 }1 m" p$ c
7 I4 O- I' H( R8 e, G! R
然後執行icfb& 開啟Schematics
* s1 J( ^  p/ d按下F7
* x" A2 S0 L0 _6 G" I- L結果出現:
# A3 B4 C) j6 ^: Z0 ]( S0 F4 Mlineread /read : eyntax error encountered in input
& A$ N  [* Q' E. f/ |5 R' jSYNTAX ERROR found at line 1 column 37 of file *string*6 s, S, y. p: a: ~: i( Z% H1 W
geDeleteAllProbe(getCurrentWindow()t)
8#
發表於 2009-7-20 22:21:26 | 只看該作者
原帖由 tcm099 於 2009-7-20 03:38 PM 發表
7 R8 m7 [7 v/ j5 {
1 b3 a4 l1 j! n& o1 O; v. h2 H' m  d* P. _5 n3 g7 ]4 |
已經將.cdsinit COPY 至 home目錄下
$ k( n# g4 U* `/ l1 g* O& q; O$ n* G" T+ S( C1 J
並且將
  K1 [+ j) L4 N3 Q' ohiSetBindKey("Schematics" "F7" "geDeleteAllProbe(getCurrentWindow() t)")" b. D' c/ {3 }
寫在最後一行
+ Q% K- v2 F0 E0 u) V! \; T7 v" `% @+ x- y5 s. c! C: v
然後執行icfb& 開啟Schematics! G: R! v! b0 X7 U3 u
按下F7
) t1 W/ X/ {8 O+ h! t7 @結果出現:) n# m! C+ f% l2 F2 d- R9 |
lineread /re ...

: u0 X3 I5 L+ }" Z% e
( [+ Y5 l  }$ [) PHi,. |# a, b9 K" R2 r6 p) k/ r) P4 W

4 h% M/ q7 C- y0 ]( \! U; s$ \我又試了一次,在我這邊是ok的啊..但我懷疑你是在getCurrentWindow()跟t之間沒有空格,因為我若把空格拿掉,啟動F7 bindkey就會得到跟你一樣的error message。Please check it.
$ U4 C( U2 y7 P! b
8 d& U# m% u! _Veteran

評分

參與人數 1 +5 收起 理由
tcm099 + 5 成功了!!感謝!!就是t之間沒有空格的原因!!

查看全部評分

您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

首頁|手機版|Chip123 科技應用創新平台 |新契機國際商機整合股份有限公司

GMT+8, 2024-12-6 05:15 PM , Processed in 0.168009 second(s), 19 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回復 返回頂部 返回列表