<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > EDA/PCB > 設計應用 > PCB文件PROTEL到ALLEGRO的轉換技巧

PCB文件PROTEL到ALLEGRO的轉換技巧

作者: 時(shí)間:2013-01-23 來(lái)源:網(wǎng)絡(luò ) 收藏

Allegro在注入第三方網(wǎng)表時(shí)還需要每種類(lèi)型器件的設備描述文件Device.txt文件,它的格式如下:

Package: package type

Class: classtype

Pincount: total pinnumber

Pinused: ...

其中常用的是PACKAGE,CLASS,PINCOUNT這幾項。PACKAGE描述了器件的封裝,但Allegro在注入網(wǎng)表時(shí)會(huì )用網(wǎng)表中的PACKAGE項而忽略設備描述文件中的這一項。CLASS確定器件的類(lèi)型,以便信噪分折,Cadence將器件分為IC,IO,DISCRETE三類(lèi)。PINCOUNT說(shuō)明器件的管腳數目。對于大多數器件,Device.txt文件中包含有這三項就足夠了。

有了第三方網(wǎng)表和設備描述文件,我們就可以將Protel中原理圖設計以網(wǎng)表的形式代入到Cadence 設計軟件中,接下來(lái),設計師就可以借助Cadence 軟件在高速高密度設計方面的強大功能完成自己的設計。

如果已經(jīng)在Protel作了PCB布局的工作,Allegro的script功能可以將Protcl中的布局在A(yíng)llegro中重現出來(lái)。在Protel中,設計師可以輸出一個(gè)Place Pick文件,這個(gè)文件中包含了每個(gè)器件的位置、旋轉角度和放在PCB頂層還是底層等信息,可以通過(guò)這個(gè)文件很方便的生成一個(gè)Allegro的script文件,在A(yíng)llegro中執行這個(gè)script就能夠重現Protel中的布局了,下面給出了完成Place Pick文件到Allegro Script文件轉化的C++代碼,筆者使用這段代碼,僅用了數分鐘就將一個(gè)用戶(hù)有800多個(gè)器件的PCB板布局在A(yíng)llegro重現出來(lái)。

 FILE *fp1, *fp2;

  ::AfxMessageBox(hello);

  fp1=fopen(pick.txt, rt);

  if (fp1==NULL) ::AfxMessageBox(Can not open the file!!!);

  fp2=fopen(place.txt,wt);

  if (fp2==NULL) ::AfxMessageBox(Can not create the file!!!);

  char refdes[5], Pattern[5];

  float midx,midy,refx,refy,padx,pady,rotation;

  char tb[1];

  char tmp='';

  fprintf(fp2,%sn, # Allegro script);

  fprintf(fp2,%sn, version 13.6);

  fprintf(fp2,%sn, place refdes);

  while (!feof(fp1)) {

  fscanf(fp1,%s, refdes);

  fscanf(fp1,%s, Pattern);

  fscanf(fp1,%f, midx);

  fscanf(fp1,%f, midy);

  fscanf(fp1,%f, refx);

  fscanf(fp1,%f, refy);

  fscanf(fp1,%f, padx);

  fscanf(fp1,%f, pady);

  fscanf(fp1,%s, tb);

  fscanf(fp1,%f, rotation);

  fprintf(fp2, fillin %c%s%c n,tmp,refdes,tmp);

  if (rotation!=0) {

  fprintf(fp2, rotaten);

  fprintf(fp2, iangle %fn, rotation);

  };

  char yy=tb[0];

  if (yy!='T') fprintf(fp2, pop mirrorn);

  fprintf(fp2, pick %f %f n, padx,pady);

  fprintf(fp2, next n);

  };

  fprintf(fp2, done);

  fclose(fp1);

  fclose(fp2);


上一頁(yè) 1 2 下一頁(yè)

關(guān)鍵詞: ALLEGRO PROTEL PCB 轉換技

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>