❶ cadlisp二次開發實例
AutoCAD的二次開發主要涉及以下內容:(1)編寫各種用戶自定義函數並形成若干LISP、ARX、VLX或ADS文件,以及一些DCL文件。(2)建立符合自己要求的菜單文件,一般可在AutoCAD原菜單文件內添加自己的內容,對於AutoCAD2000版本還可增加部分菜單文件,然後經交互方式加入到系統中去。(3)在系統的ACAD.LSP或類似文件中加入某些內容以便進行各種初始化操作,如在啟動時立即裝入一些文件等。(4)通過系統對話框設置某些路徑。這些操作在程序開發成功後向其它AutoCAD系統上安裝應用,特別是需要大批安裝時,需要進行很多文件檢索、內容增刪、子目錄創建、文件拷貝、系統設置等繁瑣工作,如能令上述工作全部自動進行,使整個二次開發程序在無人干預的情況下嵌入系統,將大大提高工作效率。
AutoCAD榮登全球繪圖軟體的龍頭寶座,主要是因為它具有開放的體系鏈派高結構。它允許用戶和開發者採用高級編程語言對其進行擴充和修改,即二次開發,能最大限度地滿足用戶的特殊要求。AutoCAD第一版於1982年11月由AutoDESK公司推出,目前大家廣泛使用的是AutoCAD2000或2002,最新版本是AutoCAD2004,其二次開發語言及工具也在不斷地涌現
1AutoLISP
AutoLISP的全名是LISTProcessingLanguage,她出現於1985年推出的AutoCADR2.18中,是一種嵌入在AutoCAD內部的編程語言,是LISP原版的一個子集,她一直是低版本AutoCAD的首選編程語言。它是一種表處理語言,是被解釋執行的,任何一個語句鍵入後就能馬上執行,它對於互動式的程序開發非常方便。其缺點是繼承了LISP語言的編程規則而導致繁多的括弧。
3ADS
ADS的全名是AutoCADDevelopmentSystem,它是AutoCAD的C語言開發系統,ADS本質上是一組可以用C語言編寫AutoCAD應用程序的頭文件和目標庫,它直接利用用戶熟悉的各種流行的C語言編譯器,將應用程序編譯成可執行的文件在AutoCAD環境下運行,這種可以在AutoCAD環境中直接運行的可執行文件叫做ADS應用程序。ADS由於其速度快,又採用結構化的編程體系,因而很適合於高強度的數據處理,如二次開發的機械設計CAD、工程分析CAD、建築結構CAD、土木工程CAD、化學工程CAD、電氣工程CAD等。
4ObjectARX
ObjectARX是一種嶄新的開發AutoCAD應用程序的工具,她以C++為編程語言,採用先進的面向對象的編程原理,提供可與AutoCAD直接交互的開發環境,能使用戶方便快捷地開發出高效簡潔的AutoCAD應用程序。ObjectARX並沒有包含在AutoCAD中,可在AutoDESK公司網站中去下載,其最新版本是ObjectARXforAutoCAD2000,它能夠對AutoCAD的所有事務進行完整的、先進的、面向對象的設計與開發,並且開發的應用程序速度更快、集成度更高、穩定性更強。ObjectARX從本質上講,是一種特定的C++編程環境,她包括一組動態鏈接庫(DLL),這些庫與AutoCAD在同一地址空間運行並能直接利用AutoCAD核心數據結構和代碼,庫中包含一組通用工具,使得二次開發者可以充分利用AutoCAD的開放結構,直接訪問AutoCAD資料庫結構、圖形系統以及CAD幾何造型核心,以便能在運行期間實時擴展AutoCAD的功能,創建能全面享受AutoCAD固有命令的新命令。ObjectARX的核心是兩組關鍵的API,即AcDb(AutoCAD資料庫)和AcEd(AutoCAD編譯器),另外還有其它的一些重要庫棚尺組件,如AcRX(AutoCAD實時擴展)、AcGi(AutoCAD圖形介面)、AcGe(AutoCAD幾何庫)、ADSRX(AutoCAD開發系統實時擴展)。ObjectARX還可以按需要載入應用程序;使用ObjectARX進行應用開發還可以在同一水平上與Windows系統集成,並與其它Windows應用程序實現交互操作。
5VisualLISP
VisualLISP已經被完整地集成到AutoCAD2000中,羨悉她為開發者提供了嶄新的、增強的集成開發環境,一改過去在AutoCAD中內嵌AtuoLISP運行引擎的機制,這樣開發者可以直接使用AutoCAD中的對象和反應器,進行更底層的開發。其特點為自身是AutoCAD2000中默認的代碼編輯工具;用它開發AutoLISP程序的時間被大大地縮短,原始代碼能被保密,以防盜版和被更改;能幫助大家使用ActiveX對象及其事件;使用了流行的有色代碼編輯器和完善的調試工具,使大家很容易創建和分析LISP程序的運行情況。在VisualLISP中新增了一些函數:如基於AutoLISP的ActiveX/COM自動化操作介面;用於執行基於AutoCAD內部事件的LISP程序的對象反應器;新增了能夠對操作系統文件進行操作的函數。
6VBA
VBA即Mcrosoftoffice中的VisualBasicforApplications,它被集成到AutoCAD2000中。VBA為開發者提供了一種新的選擇,也為用戶訪問AutoCAD2000中豐富的技術框架打開一條新的通道。VBA和AutoCAD2000中強大的ActiveX自動化對象模型的結合,代表了一種新型的定製AutoCAD的模式構架。通過VBA,我們可以操作AutoCAD,控制ActiveX和其它一些應用程序,使之相互之間發生互易活動。
❷ 求ads8344驅動程序·················
你好,ADS8344是一個ADC轉換器,8路輸入,8位串列控制輸入,16位串列數據輸出。
下面是寫的程序,粘到記事本里看,網路上顯得亂。
/* ADS8344 */
#define uchar unsigned char
#define uword unsigned int
sbit ADS_SHDN = ;
sbit ADS_CS = ;
sbit ADS_DCLK = ;
sbit ADS_DIN = ;
sbit ADS_BUSY = ;
sbit ADS_DOUT = ;
// (MSB) (LSB)
// BIT7 BIT6 BIT5 BIT4 BIT3 BIT2 BIT1 BIT0
// S A2 A1 A0 — SGL/DIF PD1 PD0
void ads_com(uchar ads_comchar)
{
uchar i=0;
for (i=8; i>0; i--)
{
ADS_DIN = ads_comchar&0x80;//取最高位
ADS_DCLK = 0;
ADS_DCLK = 1;
ads_comchar<<=1;//左移數據
}
}
// (MSB) (LSB)
// BIT15 ...... BIT0
uword ads_dat(void)
{
uword ads_datword = 0;
uchar i=0;
for (i=16; i>0; i--)
{
ads_datword<<=1;//左移數據
ADS_DCLK = 0;
if(DOUT==1) ads_datword = ads_datword|0x01;//最低位或
ADS_DCLK = 1;
}
return(ads_datword);
}
void main()
{
uword ADS_DataWord = 0;
ADS_SHDN = 1;
ADS_CS = 1;
ADS_DCLK = 0;
ADS_CS = 0;
// S A2 A1 A0 — SGL/DIF PD1 PD0
// 1 0 0 0 — 1 1 1
ads_com(0x87);//10000111
ADS_DCLK = 0;
ADS_DCLK = 1;
while(ADS_BUSY == 1);
ADS_DataWord = ads_dat();
ADS_CS = 1;
while(1);
}
❸ ads模擬軟體是干什麼的(ads模擬軟體全稱是什麼)
ADS是一款高級軟體設計系統-ADS是領先的電子設計自動化軟體,適用於射頻、微波和信號完整性應用。ADS是獲得商業成功的創新技術(例如X參數*和3D電磁模擬器)的代表,這些技術已被無線通信與網路以及航空航天與國防領域中的領先廠商廣泛採用。對於WiMAX?6?4、LTE、多千兆位/秒數據鏈路、雷達和衛星應用,ADS能夠藉助集成平台中的無線庫以及電路系統和電磁協同模擬功能提供基於標準的全面設計和驗證。
ADS的主要優勢
快速、精確、簡單易用的全套集成系統、電路和電磁模擬器,能夠一次性成功完成桌面流程設計。
特定應用設計指南將長期積累的專畢察扮業知識應用於簡單易用的界面中。
領先的行業和代工合作夥伴可專門或比其他產品優先數個月為ADS提供支持。
ADS幫助您把更多的精力放在設計上-而不是學習怎樣使用軟體上。
數據顯示一目瞭然
如果不能從模擬結果中一目瞭然地了解手灶設計的執行情況,您的生產效率將大大降低。ADS中強大的數據分析和
顯示技術可以通過多種方式查看結果。後期處理能力則可以使沒稿用自定義表達式管理數據,查看不同圖形上的數據或改變指標,而無需重新模擬。您甚至能夠移動標尺,實時查看其它圖形更新情況。每個數據顯示都與模擬設置相關,可以保存和重用。
設計程序庫,無線設計更加簡便
對尖端無線設計,ADS設計庫可以幫助您更快地推出新興無線產品。通過在ADS中置入最新的信號格式,您可以把時間放在新設計的構想上,而不必去研究標准。設計程序庫包括預先配置的電路圖、數據顯示和測試台,可以幫助您根據無線標准規范定義的測量項目驗證設計。通過在每個開發階段測試和驗證設計,可以大大加快設計進程。
ADS中DesignGuide和模板可以簡便地顯示模擬結果
❹ ADS軟體介紹與入門(ads軟體使用教程)
ADS(先進設計系統)在BeckhoffTwinCAT系統中,各個軟體模塊(如TwinCATPLC、TwinCATNC、Windows應用程序等)的工作模式類似於硬體設備,它們能夠獨立工作。
各個軟體模塊之間的信息交換通過TwinCATADS而完成。ADS(AdvancedDesignSystem)即先進設計系統,它為設備之間的通訊提供路由。在TwinCATPC和Beckhoff的CX、BX、BC系列控制器中都包含TwinCAT信息路由器。因此各個ADS設備之間都能夠交換數據和信息。
(4)ads8344程序擴展閱讀:
通過從頻域和時域電路模擬到電磁場模擬的全套模擬技術,ADS讓攔渣胡設計師全面表徵和優化設計。單一的集成設計環境提供系統和電路模擬器,以及梁胡電路圖捕獲、布局和驗證能力——因此不需要在設計中停下來更換設計工具簡攔。
先進設計系統是強大的電子設計自動化軟體系統。它為蜂窩和便攜電話、尋呼機、無線網路,以及雷達和衛星通信系統這類產品的設計師提供完全的設計集成。
❺ ads8344和ads8343在軟體編程上有什麼不同
,關鍵是ADS8341,感覺散伍TI的資料上面講的也不是很詳細
對ADS8341寫過控制字以後是不是ADS8341就直接開始連續AD轉換了,並且不斷向DSP發送轉換結果,DSP接收攜飢以後如辯掘返何區分是哪個通道的采樣結果啊? DSP是否可以在需要的時候再讀AD轉換結果。
❻ 用ADS1.2運行程序2+4+8+……+100
我不是神人,但我希望可以幫你解決問題,呵呵……
首先,我有個小問題,你要求算的是2+4+8+……+100,是不是2的1次方,2次方,3次方?如果是,那應該是2+4+8+16+32+64,怎麼有還加100呢?或者你筆誤,應該是2—100之間的偶數相加呢?
好,下面來解決你的問題:
1.用ADS1.2運行你的加法程序,要注意一點就是ADS不能直鏈接運行C遍出來的程序,要用匯編代碼啟動。下面是啟動代碼startup.s文件(我空間有關於這個代碼的分析,你可以去看看):
IMPORT |Image$$RO$$Limit|
IMPORT |Image$$RW$$Base|
IMPORT |Image$$ZI$$Base|
IMPORT |Image$$ZI$$Limit|
IMPORT Main ; 聲明C程序中的Main()函數
AREA Start,CODE,READONLY ; 聲明代碼段Start
ENTRY ; 標識程序入口
CODE32 ; 聲明32位ARM指令
Reset LDR SP,=0x40003F00
; 初始化C程序的運行環境
LDR R0,=|Image$$RO$$Limit|
LDR R1,=|Image$$RW$$Base|
LDR R3,=|Image$$ZI$$Base|
CMP R0,R1
BEQ LOOP1
LOOP0 CMP R1,R3
LDRCC R2,[R0],#4
STRCC R2,[R1],#4
BCC LOOP0
LOOP1 LDR R1,=|Image$$ZI$$Limit|
MOV R2,#0
LOOP2 CMP R3,R1
STRCC R2,[R3],#4
BCC LOOP2
B Main ; 跳轉到C程序代碼Main()函數
END
2. 啟動代碼寫好後,再編寫C代碼,運行你的程序(按你的意思算)
#define uint8 unsigned char //這兩個宏定義是ADS裡面防止數據溢出帶的
#define uint32 unsigned int
#define N 100
uint32 sum;
// 使用加法運算來計算2+4+8+……+N的值。
void Main(void)
{ uint32 i;
sum = 0;
for(i=0; i<=N; i=i*2)
{ sum += i;
}
while(1);
}
3. 這兩個程序合在一起才是是完整的ADS實現程序,希望可以解決你的困惑。
祝你進步!