Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

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

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

  [複製鏈接]
跳轉到指定樓層
1#
發表於 2009-7-10 11:14:02 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
大大們使用Cadence Schematic 常常會用到 Highlight Net的功能
" R4 u" o# V& s0 Q+ [- _& B( z  F$ T6 k+ b; n0 C
視窗選項是Design -> Probe -> Add Net 9(9是指快速鍵)
% C) ?; W* _! x3 u# H0 Y  U( g
$ Q+ X1 O/ B% v按了9 就可以去選線 Highlight
/ F6 r3 P. G" y, |7 M! s. j" F% L) N7 g* ?  b" d9 {4 |! F+ i
但是每當亮了一堆線 想要清除的時候 卻只能 用滑鼠選
& u  Y- t9 |+ t: ^2 ?, MDesign -> Probe -> Remove Net 或是  Remove ALL
! ?' l" P1 H9 U9 w- Y  c4 K( k  L3 I( T& \% |9 S
1.是不是 有熱鍵可以 直接 Remove Net 或是 Remove ALL?+ k6 v" s( n& u8 W; k+ u
8 i/ L8 `: k# `' s& D4 F4 J- X
2.如果沒有熱鍵
8 W& Q5 ^/ ~/ `& R, I我找到了一個檔案 SchBindkeys.il 是不是 可以直接寫入? 要怎麼寫?
$ W/ A1 {4 h* t4 v) f, p
. |- O7 E0 l1 ~$ M/ b& z5 D" v* B裡面有一行是 bk("Schmatic" "<key>9" "geAddNetProbe()")- o7 c6 G% c  b; }* @7 G% s
這行是Design -> Probe -> Add Net 9 的設定9 ^  `! r; ]+ N$ r$ f& h1 ]
$ ^0 p9 [! _' S, c6 j( D( g9 J
7 h6 B' O, x3 F  v5 _
3.語法"geAddNetProbe()")   開頭的有分 "ge" "hi" "Schhi" "Sch" 各是指什麼意思?. ~% q7 g( W9 p" ~! h3 W/ f* T

- M! J2 {( Q/ X+ [; F  J0 O; s' p感謝各位
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 頂41 踩 分享分享
推薦
發表於 2009-7-11 15:37:19 | 只看該作者
建議去研究一下怎麼設bindkey,這在composer或VLE等Cadence的軟體都是一樣的,對我而言,這個算是工程師的基本常識。只要你會設bindkey,你的問題就自然解掉了。這論壇中也有很多篇討論bindkey的文章,或者你從Cadence的online document都可找到進一步詳細解釋。+ b- Z& q7 V; J; n5 ~4 g/ \# L

$ w; i, R# f5 w; h- s, p% Nex.要remove all probe net,只要加入以下這行在你自己.cdsinit file即可:
5 e. |% Y9 f# O# L2 r===============================================================3 R+ ~$ O) [4 l! P6 H0 i
hiSetBindKey("Schematics" "<Key>F7" "geDeleteAllProbe(getCurrentWindow() t)")
; e9 F5 y, H  \; R' g# e===============================================================
- U: l  _0 ~1 b4 Zps.我假釋你要設成F7這個鍵。5 U- W# S$ H/ l! U; |$ z

& t) t  q9 p8 D; t4 T又:
4 h: [. Z, B. \- K6 g6 E; gge=> graphic editor
7 F. ]& V3 j! o8 d2 M" `+ Ahi=> human interface
1 ~/ {9 L* z4 K( R  rSchhi=> Schematic human interface
  X+ A/ {1 H' c+ c, D' j; xSch=> Schematic
! L7 I4 E) c7 l1 `! T8 I不用特定記,除非你有打算自己寫SKILL code。. Z4 O4 `9 S6 O/ y" H

. T% Z9 i/ l3 S) a" o% {0 ?! OHope this help,
. j. D* c5 g+ Y+ LVeteran

評分

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

查看全部評分

回復 支持 1 反對 0

使用道具 舉報

3#
 樓主| 發表於 2009-7-13 18:07:58 | 只看該作者
感謝~
  j$ ?( F) O: ~% I/ M. Y+ b% q5 V! ]- |
但是 假如說 系統底下 搜尋不到 .cdsinit 這個檔案
# X8 ?  S. C' p0 ~2 k
& {' o4 @9 l2 u* {& O+ X$ g" W2 Y$ [& H- D只能找到了一個檔案 SchBindkeys.il ...
4#
 樓主| 發表於 2009-7-14 10:17:12 | 只看該作者
我試這去把 SchBindkeys.il 裡面描述的 指令去做更改
% @6 j+ D4 t& [8 n% E
! c, i, L4 S* I0 e" B/ M然後重新開啟,發現對於Schmatic是有效果的
7 d+ P5 T, i' {0 {2 O1 J" O
+ M4 d. t8 S4 g0 c8 c: y5 ~. p所以我覺得SchBindkeys.il是可以設定BindKey的檔案
5 {* \- U2 E* y% \8 N
4 z4 f) c" C' i. @1 v" F7 }於是我將 : }0 z6 T3 {$ x# G# H* e: e
2 y# J! l0 I  x3 _( w, B7 x
hiSetBindKey("Schematics" "<Key>F7" "geDeleteAllProbe(getCurrentWindow() t)")
6 G4 X/ W$ L1 h. D! i; `  s  @4 C6 n  H+ ^7 I  I0 @
寫入 (也有試著更改語法描述方式Remove.Clear.....等等 )- q/ o) v! ^2 {9 j- A' p7 z
- R0 P9 c. K. S
前面有改成bk(因為檔案裡其他的語法都以bk開頭)
7 M! }2 f! X7 L, j0 F2 s
) G: J1 e: H% z! u8 Y0 e1 S- h不論怎麼改  當我使用 設定的BindKey時,都還是出現
8 h$ E) l( y$ A4 J  ^. h8 C1 n. T$ O9 c+ s, X' B( W/ b5 _
SYNTAX ERROR found at line 1 column 37 of file *string*
; f" G* N7 P" j: |/ ?2 R8 slineread /read : eyntax error encountered in input
4 ?0 L6 ?6 i, h4 k& z' F- a5 ]) ^9 H4 ?
的錯誤訊息
5#
發表於 2009-7-20 00:22:18 | 只看該作者
原帖由 tcm099 於 2009-7-13 06:07 PM 發表
- _4 O" h- M* u& S7 N感謝~
! {$ t. q9 t5 {5 e* ?
; \- Q# J4 ?; P0 n但是 假如說 系統底下 搜尋不到 .cdsinit 這個檔案
# D3 ~/ k+ I2 D& ?# Q+ m
, O  R" g- m7 v) Y只能找到了一個檔案 SchBindkeys.il ...

+ r- ~4 i2 e: g$ }
* V# ]' P% Z) C- t0 J
+ m2 g  m; T. S& f" y一開始default是不會有那個file的。你可以去把$CDSHOME/tools/dfII/cdsuser/.cdsinit copy到你home dir下,在檔案最後新增自己的bindkey設定。當然,自己建一個空的.cdsinit 亦可。
; B) a8 `4 ^5 U+ m' z$ u$ h5 o2 @. ]4 `) E3 B
Veteran

評分

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

查看全部評分

6#
發表於 2009-7-20 00:26:59 | 只看該作者
原帖由 tcm099 於 2009-7-14 10:17 AM 發表
( ^7 b$ h# H8 U9 ^& u我試這去把 SchBindkeys.il 裡面描述的 指令去做更改. K# p5 ?" c/ U- c; ^
# V2 w8 M7 j( `# f$ ~1 N) B
然後重新開啟,發現對於Schmatic是有效果的. z; h3 U" {3 e3 h

* q4 q9 I$ Z1 k+ F: i7 M所以我覺得SchBindkeys.il是可以設定BindKey的檔案
% a; V" e6 @" ?5 ^3 `
0 e& x- j' Q7 Z( V. k" a* j6 P於是我將
6 f% l8 ^/ `/ R0 q7 n/ w( x! ~: {& L) u' t& `8 n
hiSetBindKey("Schematics" "F7" "geDelete ...

9 d7 W2 m- F, u$ ]) Y% D4 ~" e. g" E8 D" X& b/ e+ b' n, o
請把你改完後的檔案內容貼出來看看..看起來還是syntax不對..切記,大小寫一定要對..

評分

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

查看全部評分

7#
 樓主| 發表於 2009-7-20 15:38:12 | 只看該作者
原帖由 veteran 於 2009-7-20 12:22 AM 發表 . k& l1 A; l  H1 t$ p% ?
7 b& G& T: q# z* \" l

  e# \; ]6 c, U, g! @) V! p; _  ]* \6 V5 t' e
一開始default是不會有那個file的。你可以去把$CDSHOME/tools/dfII/cdsuser/.cdsinit copy到你home dir下,在檔案最後新增自己的bindkey設定。當然,自己建一個空的.cdsinit 亦可。
6 {$ l, |4 I" q7 ^2 m* _
: u( f* u% ^9 V: I, V: rVeteran

9 t" D- j, u4 O+ {, Y2 l) ?
: G7 a2 M. R3 v( n* H7 y1 l已經將.cdsinit COPY 至 home目錄下8 A/ e) M2 ~8 a' L; b  t0 Z* c

" a! c9 ]: A* Y" P. B並且將2 i. t# x) u6 S; _
hiSetBindKey("Schematics" "<Key>F7" "geDeleteAllProbe(getCurrentWindow() t)")% N6 m$ M: K9 a: @
寫在最後一行
6 n! R0 A9 T. F. l! {% _
$ y/ D- J% g0 f- T/ J然後執行icfb& 開啟Schematics
5 s3 Z6 L: v& e) e按下F76 D9 t; K6 m; F$ i& a9 H
結果出現:
9 y6 K) p; r2 A! _8 L9 ?( f! \- Jlineread /read : eyntax error encountered in input4 y0 h2 R0 @! T7 w
SYNTAX ERROR found at line 1 column 37 of file *string*
8 v5 {$ D. }  x, }9 F- fgeDeleteAllProbe(getCurrentWindow()t)
8#
發表於 2009-7-20 22:21:26 | 只看該作者
原帖由 tcm099 於 2009-7-20 03:38 PM 發表
( E' {( p  l8 l, X& c# Y8 G
, A( o& W6 w) e5 ]
+ z+ V  F' l3 e) {8 m& Y已經將.cdsinit COPY 至 home目錄下  D8 o; n" Q3 b% Q  ^' x4 O

$ S; N* r) _, i% D% j: I& U並且將
9 v/ Y" Q0 Z: K  f% b5 }hiSetBindKey("Schematics" "F7" "geDeleteAllProbe(getCurrentWindow() t)")
/ l5 j% r& o" K0 a: A- _寫在最後一行' k" P! V/ P0 K8 N& w& A8 @
" @, H1 u6 q& k5 Y
然後執行icfb& 開啟Schematics
7 y) @% }; ]) _( c2 i' ?. W7 T& b按下F7
5 E5 a) A( j# e結果出現:
( z: }. {4 O6 ]lineread /re ...
2 f- t1 A. y+ d9 c1 W
2 K* e4 J! h8 d0 z( x$ E9 F
Hi,
8 k( E. i- X- x# M0 |$ D& }
1 i. |" a' F) {  Y: q5 J我又試了一次,在我這邊是ok的啊..但我懷疑你是在getCurrentWindow()跟t之間沒有空格,因為我若把空格拿掉,啟動F7 bindkey就會得到跟你一樣的error message。Please check it.
: A. p1 v: F# n: @$ }: L7 N3 D; d& ?
Veteran

評分

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

查看全部評分

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

本版積分規則

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

GMT+8, 2024-12-7 10:03 AM , Processed in 0.169009 second(s), 19 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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