Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

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

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

  [複製鏈接]
跳轉到指定樓層
1#
發表於 2009-7-10 11:14:02 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
大大們使用Cadence Schematic 常常會用到 Highlight Net的功能( {: y' }" ^! B8 m( v# `/ Y

  |: n1 f' B* X視窗選項是Design -> Probe -> Add Net 9(9是指快速鍵)' o% S/ g% Z, u/ }5 U; F- ]
4 |4 a5 j, p3 X' X  [. S: _+ z, k
按了9 就可以去選線 Highlight
  Q* g1 }/ H( l0 @6 W+ J( w( h. f
9 X" c0 M  R3 Y% Z5 f7 u9 |& A但是每當亮了一堆線 想要清除的時候 卻只能 用滑鼠選
* h/ l7 |) {+ i: }& {Design -> Probe -> Remove Net 或是  Remove ALL4 P; [; t9 O6 V1 T6 J( U

( t/ p5 }7 P8 h) p$ }1 L& {5 t1.是不是 有熱鍵可以 直接 Remove Net 或是 Remove ALL?
2 R2 I% A9 Z0 h' E5 O2 u& U
+ t6 Z1 q0 n$ Y( H+ E+ Y( @; m( P2.如果沒有熱鍵
, [/ d, d1 n, H我找到了一個檔案 SchBindkeys.il 是不是 可以直接寫入? 要怎麼寫?. ]5 s3 R3 _. N0 P! X' s0 [7 Q* i

' e. b7 d; m+ Z" A裡面有一行是 bk("Schmatic" "<key>9" "geAddNetProbe()")
( w# `' n7 I- `% _! i5 O& _這行是Design -> Probe -> Add Net 9 的設定. e5 b- D- S2 ~- o: S
+ V! V1 d" I  o( Y. B: S
# x; `; B" g3 x
3.語法"geAddNetProbe()")   開頭的有分 "ge" "hi" "Schhi" "Sch" 各是指什麼意思?" W: z4 [  n: d! T3 U

8 ]! a: A/ i, O2 _" c# ?* Y感謝各位
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 頂41 踩 分享分享
推薦
發表於 2009-7-11 15:37:19 | 只看該作者
建議去研究一下怎麼設bindkey,這在composer或VLE等Cadence的軟體都是一樣的,對我而言,這個算是工程師的基本常識。只要你會設bindkey,你的問題就自然解掉了。這論壇中也有很多篇討論bindkey的文章,或者你從Cadence的online document都可找到進一步詳細解釋。
& _/ h8 L+ ^4 S3 C( c7 ^% z% B/ ]
1 S) u9 e# M5 Uex.要remove all probe net,只要加入以下這行在你自己.cdsinit file即可:/ ~- O) P* N1 G1 `1 L( Y
===============================================================
( g' V' W5 G% J* l2 ~. Z* _' @hiSetBindKey("Schematics" "<Key>F7" "geDeleteAllProbe(getCurrentWindow() t)")
1 Z' z, N# S* H# I) q0 g===============================================================
& [9 n6 @. \1 o' Cps.我假釋你要設成F7這個鍵。7 Z- D2 n1 C& c0 `. t5 I

. `7 G  U' x2 ]/ D9 y, b4 B又:
4 J0 ~  i2 N  Wge=> graphic editor
3 ~6 U; d" k! {9 f) V6 ~4 g: v6 Qhi=> human interface3 [; A# I4 v) l0 [% K" w* g' G/ L- k
Schhi=> Schematic human interface
) F( m- r6 A7 E! A1 P7 RSch=> Schematic
. s' h3 Q3 @9 ~# P0 n) X7 U" }3 R不用特定記,除非你有打算自己寫SKILL code。
& X3 V3 c- Y3 Y" o
  `4 m4 m. f2 `: ?, pHope this help,! }) k; n* m6 P2 @
Veteran

評分

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

查看全部評分

回復 支持 1 反對 0

使用道具 舉報

3#
 樓主| 發表於 2009-7-13 18:07:58 | 只看該作者
感謝~
* T& o' f: R. T7 s7 x! v7 w7 R( P# O, p! z5 R1 t; w3 _
但是 假如說 系統底下 搜尋不到 .cdsinit 這個檔案 ! G/ E" x7 r# @. W, z2 t- @! }

# E4 d+ Z9 v/ k只能找到了一個檔案 SchBindkeys.il ...
4#
 樓主| 發表於 2009-7-14 10:17:12 | 只看該作者
我試這去把 SchBindkeys.il 裡面描述的 指令去做更改
/ [! @+ c  }; b; N" D  p: |
: \& `( @# w0 _3 l* @/ x3 Y. P然後重新開啟,發現對於Schmatic是有效果的' ?8 ?$ N: }  T4 n! i3 z: H& f
& ?1 F+ W- z4 P) ]: ~% e% d5 d: v  l
所以我覺得SchBindkeys.il是可以設定BindKey的檔案
5 b" f' k) [) ]# ^- c7 H2 K
2 o6 p+ E6 R, W, L) j3 h: P於是我將 * ^8 `7 @. z+ x  q$ v4 O, K/ B

* l( d- \/ A* S9 p8 LhiSetBindKey("Schematics" "<Key>F7" "geDeleteAllProbe(getCurrentWindow() t)")
  J; {$ C1 j3 ~$ e% r" J9 n. M- H
! E- B" X4 o) I4 J$ I5 o, ~3 `) x( C寫入 (也有試著更改語法描述方式Remove.Clear.....等等 )
# H6 y- O! {* ]; C0 b  L; G: Z: V; F% m( ]
前面有改成bk(因為檔案裡其他的語法都以bk開頭)6 R% T, t7 q9 }

( p: e1 Q" B7 T! S2 k不論怎麼改  當我使用 設定的BindKey時,都還是出現4 H  M- g9 N6 D( R; r
) _4 b. o3 c0 O4 r7 M; [4 x) I
SYNTAX ERROR found at line 1 column 37 of file *string*7 Y/ W4 X2 [; d* L" ^
lineread /read : eyntax error encountered in input8 L* a- M4 p: M- t5 L/ l
0 X- t) T7 r0 H2 n3 u1 y. R) P# x
的錯誤訊息
5#
發表於 2009-7-20 00:22:18 | 只看該作者
原帖由 tcm099 於 2009-7-13 06:07 PM 發表
9 C" Q4 I/ E6 i感謝~8 U6 D9 X7 M! m. g+ G
  M. B! g/ T) S, [" k0 E7 K
但是 假如說 系統底下 搜尋不到 .cdsinit 這個檔案 3 b# I! b. T! M" _) ?7 y
% I) A0 B( b8 `; {$ g* H$ C" Z9 ^
只能找到了一個檔案 SchBindkeys.il ...
5 K  R) q. k9 {
" y9 L8 q: M3 g0 h; E
6 k$ Z0 c- J- m; ?3 }
一開始default是不會有那個file的。你可以去把$CDSHOME/tools/dfII/cdsuser/.cdsinit copy到你home dir下,在檔案最後新增自己的bindkey設定。當然,自己建一個空的.cdsinit 亦可。
' r* ?9 {1 C; A  V7 U6 S
+ J2 u( h' u/ }Veteran

評分

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

查看全部評分

6#
發表於 2009-7-20 00:26:59 | 只看該作者
原帖由 tcm099 於 2009-7-14 10:17 AM 發表 & x& a2 T" {+ m2 P5 l* q: _: c
我試這去把 SchBindkeys.il 裡面描述的 指令去做更改- a+ o: k( q6 A- W: y( o
* D- J9 v: H# ?. k/ ?6 {7 \9 ~
然後重新開啟,發現對於Schmatic是有效果的
& [! W( C' w% B* V& r! O2 d$ D2 h) ~" A- ]
所以我覺得SchBindkeys.il是可以設定BindKey的檔案0 G! |/ `. a* c5 L4 I

. x1 i, |0 J6 n" o. a於是我將
1 ^3 i& Z; Z* y, S9 i! q/ E, N$ s
% n# Y  {- O* ghiSetBindKey("Schematics" "F7" "geDelete ...

4 ~# F$ E0 b0 Y' s  K& P2 S, N. D* I  u7 p1 a
請把你改完後的檔案內容貼出來看看..看起來還是syntax不對..切記,大小寫一定要對..

評分

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

查看全部評分

7#
 樓主| 發表於 2009-7-20 15:38:12 | 只看該作者
原帖由 veteran 於 2009-7-20 12:22 AM 發表 0 ~9 E, P1 X. I1 M9 {& I" K
' v* B& S8 h5 g+ ^

9 u  Q6 N$ S6 h. l
8 ~- g3 P6 y' K* R一開始default是不會有那個file的。你可以去把$CDSHOME/tools/dfII/cdsuser/.cdsinit copy到你home dir下,在檔案最後新增自己的bindkey設定。當然,自己建一個空的.cdsinit 亦可。
6 l' V5 |5 }) c. U2 G5 ?2 M4 v9 r" L1 v( ]7 |
Veteran
: h, p- s+ G8 y7 ?/ U
" k5 {; `5 i9 A" e; C6 b
已經將.cdsinit COPY 至 home目錄下
0 T" |  D# F( b8 V( I6 M! i) q$ T2 A# |& J& v$ J$ {* J3 g4 w( p. k0 I
並且將
9 P8 F& _8 C! @9 e6 ?+ o, M! HhiSetBindKey("Schematics" "<Key>F7" "geDeleteAllProbe(getCurrentWindow() t)")
' }+ C+ h% Q4 e3 N$ C* P9 W$ }0 E, H寫在最後一行
: X5 E# d6 l* z+ Y5 T/ a. C' s( b8 P4 g4 l  G# n
然後執行icfb& 開啟Schematics
. E* a5 `( u$ L+ M' S" |按下F7
8 n# F" V! t, r1 }1 |, Q- `結果出現:7 |% E% C$ i* F  U
lineread /read : eyntax error encountered in input
4 a* r1 f4 r- E; c8 P+ X" XSYNTAX ERROR found at line 1 column 37 of file *string*" u  a3 b+ S- A2 ]% z! |9 n$ d
geDeleteAllProbe(getCurrentWindow()t)
8#
發表於 2009-7-20 22:21:26 | 只看該作者
原帖由 tcm099 於 2009-7-20 03:38 PM 發表
  x9 J' v: j5 v1 z+ X' K7 p* N; h2 o! H0 i$ G3 f2 B
# G  K1 H& v0 Z, V4 }2 `
已經將.cdsinit COPY 至 home目錄下
2 a8 H! G3 l& B5 h8 R; y/ f2 d# o! H& O
並且將3 I7 s: w) }$ _5 U0 k+ d
hiSetBindKey("Schematics" "F7" "geDeleteAllProbe(getCurrentWindow() t)")
: j$ Z6 q( i9 H! E  i寫在最後一行
  @  l( H' {- X9 y/ ~6 G" j
0 }0 M" {: M* B! o- O然後執行icfb& 開啟Schematics: m' B% }2 f$ D5 I: c
按下F7
7 n$ p$ _8 E* N5 m, L結果出現:8 J0 b' C* i3 ~# P4 L, H  W/ h
lineread /re ...

8 q- D$ u9 m* R8 \; N3 U
  a6 u! M- X8 y& x0 p6 J4 QHi,. z9 ^. G! G$ I0 Z) x- C. q" j
% Q" o$ Q: Q5 |" ~4 m+ j
我又試了一次,在我這邊是ok的啊..但我懷疑你是在getCurrentWindow()跟t之間沒有空格,因為我若把空格拿掉,啟動F7 bindkey就會得到跟你一樣的error message。Please check it.4 f- r' j6 m* y; D. _
; T3 Q8 q- o* H0 y* ^
Veteran

評分

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

查看全部評分

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

本版積分規則

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

GMT+8, 2024-12-5 09:32 PM , Processed in 0.171010 second(s), 19 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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