《DSP與PC機串行通信的設計(共8頁).doc》由會員分享,可在線閱讀,更多相關《DSP與PC機串行通信的設計(共8頁).doc(8頁珍藏版)》請在匯文網(wǎng)上搜索。
1、精選優(yōu)質文檔-傾情為你奉上 DSP與PC機串行通信的設計摘要:實現(xiàn)了一種全集成可變帶寬中頻寬帶低通濾波器,討論分析了跨導放大器-電容(OTAC)連續(xù)時間型濾波器的結構、設計和具體實現(xiàn),使用外部可編程電路對所設計濾波器帶寬進行控制,并利用ADS軟件進行電路設計和仿真驗證。仿真結果表明,該濾波器帶寬的可調范圍為126 MHz,阻帶抑制率大于35 dB,帶內波紋小于05 dB,采用18 V電源,TSMC 018m CMOS工藝庫仿真,功耗小于21 mW,頻響曲線接近理想狀態(tài)。關鍵詞:Butte摘要:以TMS320F240 系列為例,簡要介紹了數(shù)字信號處理
2、器串行通信接口SCI 模塊和RS485 串口通信,并編程實現(xiàn)了TMS320F240 與PC 機串行通信接口電路。1 引言DSP 既是Digital Signal Pricessing 的縮寫,也是Digital Signal Pricessor 的縮寫。前者是指數(shù)字信號處理的理論和方法,后者則是指用于數(shù)字信號處理的可編程微處理器。TMS320F240 系列是在TMS320F2000TM 平臺下的一種定點DSP 芯片,是專為數(shù)字電機控制和其他控制應用系統(tǒng)而設計的16位定點運算的DSP。它集合了DSP 的高速運算功能與電機的強大控制能力,為控制系統(tǒng)應用提供了一種理想的解決方案。TMS320F240
3、 片內外設有一個16 位的同步串行外圍接口(SPI),一個用于串行通訊接口的SCI 模塊,雙10 位A/D 轉換器,帶中斷的看門狗定時器模塊(WDT),帶有鎖相環(huán)(PLL)時鐘發(fā)生器。另外,還集成了兩個事件管理模塊EVA 和EVB。因此,TMS320F240 不僅具有高速數(shù)據(jù)處理能力,還具有控制和事件管理能力,可完成人機界面、與上位機進行串行通信等功能。2 串行通訊接口(SCI)模塊SCI 接收器和發(fā)送器是雙緩沖的,每一個都有他自己單獨的使能和中斷標志位。兩者可單獨工作,或在全雙工的方式下同時工作。為了確保數(shù)據(jù)的完整性,SCI 對接收到的數(shù)據(jù)進行間斷檢測、奇偶性校驗、超時和幀出錯的檢查。通過一
4、個16 位的波特率選擇寄存器,數(shù)據(jù)傳輸?shù)乃俣瓤梢员痪幊虨?5535多種不同的方式。SCI 的串行通信接口包括SCIRXD(串行通信數(shù)據(jù)接收)和SCITXD(串行通信數(shù)據(jù)發(fā)送),在不使用SCI 時,這兩個引腳也可作通用I/O 口。發(fā)送和接收的操作可以利用狀態(tài)標志位通過中斷驅動或查詢算法來完成。與之相關的主要寄存器:發(fā)送緩沖寄存器SCITXBUF、接收緩沖寄存器 SCIRCBUF、接收仿真緩沖寄存器SCIRXEMU;通信控制寄存器SCICCR、中斷使能和內部時鐘使能SCICTL1 和SCICTL2 、波特率選擇高字節(jié)寄存器SCIHBAUD、波特率選擇低字節(jié)寄存器SCILBAUD、優(yōu)先級控制寄存器S
5、CIPRI、引腳控制功能SCIPC2 以及反映通信狀態(tài)SCIXST 等。串行通信接口模塊有兩個多處理器通信協(xié)議:空閑線多處理器模式和地址多處理器模式??臻e線模式在地址前留有一個固定空間,該模式?jīng)]有附加的地址 /數(shù)據(jù)位,它在處理包含多于10 個字節(jié)的數(shù)據(jù)塊方面比地址位模式更有效;地址位模式在每個字節(jié)中加入一個額外位(地址位)來區(qū)分地址和數(shù)據(jù),這種模式在處理多個小數(shù)據(jù)塊時更有效。3 RS-485串口通信RS-232 雖然被廣泛接受,但其數(shù)據(jù)傳送的速度慢、在現(xiàn)代網(wǎng)絡通信中已暴露出的接口處各信號間容易產(chǎn)生干擾等明顯的缺點。RS-232 只能傳輸15 米,不能滿足遠距離傳輸要求,而RS-485 最大傳輸
6、距離為1200 米,最大傳送速率可達10Mb/s。因此,RS-485 在遠程通信和多機總線系統(tǒng)中具有很大吸引力。MAX48X49X 系列收發(fā)器芯片適合于RS 一422RS 485 通信標準。其主要有以下特點:·單+5V 電源供電;· 低功耗:工作電流120 500A :· 驅動過載保護;· 通信傳輸線上可掛32 個收發(fā)器方便組成半雙工通信電路;· 共模輸入電壓范圍:-7V + l2VMAX485 為8 腳封裝,引腳配置如圖l 所示,各引腳功能說明如表l 所示。表1摘要:以TMS320F240 系列為例,簡要介紹了數(shù)字信號處理器串行通信接口SCI
7、 模塊和RS485 串口通信,并編程實現(xiàn)了TMS320F240 與PC 機串行通信接口電路。1 引言DSP 既是Digital Signal Pricessing 的縮寫,也是Digital Signal Pricessor 的縮寫。前者是指數(shù)字信號處理的理論和方法,后者則是指用于數(shù)字信號處理的可編程微處理器。TMS320F240 系列是在TMS320F2000TM 平臺下的一種定點DSP 芯片,是專為數(shù)字電機控制和其他控制應用系統(tǒng)而設計的16位定點運算的DSP。它集合了DSP 的高速運算功能與電機的強大控制能力,為控制系統(tǒng)應用提供了一種理想的解決方案。TMS320F240 片內外設有一個16
8、 位的同步串行外圍接口(SPI),一個用于串行通訊接口的SCI 模塊,雙10 位A/D 轉換器,帶中斷的看門狗定時器模塊(WDT),帶有鎖相環(huán)(PLL)時鐘發(fā)生器。另外,還集成了兩個事件管理模塊EVA 和EVB。因此,TMS320F240 不僅具有高速數(shù)據(jù)處理能力,還具有控制和事件管理能力,可完成人機界面、與上位機進行串行通信等功能。2 串行通訊接口(SCI)模塊SCI 接收器和發(fā)送器是雙緩沖的,每一個都有他自己單獨的使能和中斷標志位。兩者可單獨工作,或在全雙工的方式下同時工作。為了確保數(shù)據(jù)的完整性,SCI 對接收到的數(shù)據(jù)進行間斷檢測、奇偶性校驗、超時和幀出錯的檢查。通過一個16 位的波特率選
9、擇寄存器,數(shù)據(jù)傳輸?shù)乃俣瓤梢员痪幊虨?5535多種不同的方式。SCI 的串行通信接口包括SCIRXD(串行通信數(shù)據(jù)接收)和SCITXD(串行通信數(shù)據(jù)發(fā)送),在不使用SCI 時,這兩個引腳也可作通用I/O 口。發(fā)送和接收的操作可以利用狀態(tài)標志位通過中斷驅動或查詢算法來完成。與之相關的主要寄存器:發(fā)送緩沖寄存器SCITXBUF、接收緩沖寄存器 SCIRCBUF、接收仿真緩沖寄存器SCIRXEMU;通信控制寄存器SCICCR、中斷使能和內部時鐘使能SCICTL1 和SCICTL2 、波特率選擇高字節(jié)寄存器SCIHBAUD、波特率選擇低字節(jié)寄存器SCILBAUD、優(yōu)先級控制寄存器SCIPRI、引腳控制
10、功能SCIPC2 以及反映通信狀態(tài)SCIXST 等。串行通信接口模塊有兩個多處理器通信協(xié)議:空閑線多處理器模式和地址多處理器模式??臻e線模式在地址前留有一個固定空間,該模式?jīng)]有附加的地址 /數(shù)據(jù)位,它在處理包含多于10 個字節(jié)的數(shù)據(jù)塊方面比地址位模式更有效;地址位模式在每個字節(jié)中加入一個額外位(地址位)來區(qū)分地址和數(shù)據(jù),這種模式在處理多個小數(shù)據(jù)塊時更有效。3 RS-485串口通信RS-232 雖然被廣泛接受,但其數(shù)據(jù)傳送的速度慢、在現(xiàn)代網(wǎng)絡通信中已暴露出的接口處各信號間容易產(chǎn)生干擾等明顯的缺點。RS-232 只能傳輸15 米,不能滿足遠距離傳輸要求,而RS-485 最大傳輸距離為1200 米,
11、最大傳送速率可達10Mb/s。因此,RS-485 在遠程通信和多機總線系統(tǒng)中具有很大吸引力。MAX48X49X 系列收發(fā)器芯片適合于RS 一422RS 485 通信標準。其主要有以下特點:·單+5V 電源供電;· 低功耗:工作電流120 500A :· 驅動過載保護;· 通信傳輸線上可掛32 個收發(fā)器方便組成半雙工通信電路;· 共模輸入電壓范圍:-7V + l2VMAX485 為8 腳封裝,引腳配置如圖l 所示,各引腳功能說明如表l 所示。表1本設計以PC 機為主機,TMS320F240 為從機,主從機之間進行串口通信。TMS320F240 與
12、PC 機之間采用RS 一485 標準進行半雙工通信的接口電路如圖2 所示。其中,接收器和驅動器的選擇由TMS320F240 的XFIOPC2 引腳控制。由于一般PC 機上提供的是標準的RS 232 C 串行接口,因此,需要RS 232CRS485 轉換器進行接口轉換。4 上位機PC機的軟件設計上位機PC 采用高級語言C,在用C 語言開發(fā)DSP 應用程序時,需要嵌入一句或幾句匯編語言,如在程序的初始化階段對INTM、SXM 等位的配置。用asm 的方式就可以實現(xiàn)單句匯編語言的嵌入。Code Composer Studio 簡稱CCS,是TI 公司推出的為開發(fā)TMS320 系列DSP 軟件的集成開
13、發(fā)環(huán)境(IDE)。CCS 工作在Windows 操作系統(tǒng)下,類似于VC+的集成開發(fā)環(huán)境,采用圖形接口界面,提供有編輯工具和工程管理工具。在CC 環(huán)境下串行通信有兩種方式:即同步方式和異步方式,在此僅討論異步方式中的串行通信。PC 串行口發(fā)送器輸出端和接收器輸入端的數(shù)據(jù)格式為幀信息格式,與TMS320F240的SCI 口格式相同。通信時,雙方必須約定通信數(shù)據(jù)傳輸格式、傳輸速率及各自工作方式等。本文設計,當上位機請求通訊時,先發(fā)請求通訊命令,下位機有效接收并判斷,確認后向上位機發(fā)響應碼。上位機在收到響應碼后,再發(fā)操作命令。雙方約定:波特率208h;8 位字符,一位停止位,無校驗;傳送方式:PC 機
14、采用查詢方式接收數(shù)據(jù),TMS320F240 采用中斷方式接收數(shù)據(jù)。5 DSP軟件設計5.1 串口初始化首先對寄存器地址、波特率、數(shù)據(jù)位、停止位、奇偶校驗位進行設置。void Set()*SCICCR=0x7; /8 位字符,1 停止位,無校驗*SCICTL1=0X13; /使能發(fā)送和接受*SCICTL2=0x03; /使能接受和發(fā)送中斷*SCIHBAUD=0x02; /波特率=208h,40MHZ*SCILBAUD=0x08; /208h=40*106/(9600*8)-1*SCICTL1=0x33; /使能發(fā)送和接受,復位*SCIPRI=0X60; /SCI 中斷(接受和發(fā)送中斷)為低優(yōu)先級
15、中斷5.2 中斷初始化a)禁止總中斷子程序void inline disable()asm(setc INTM);asm(setc SXM);b)使能總中斷子程序void inline enable()asm(clrc INTM) ;c)中斷服務程序void interrupt uarttr()switch (*PVIR)/根據(jù)中斷向量寄存器PVIR 的值區(qū)別是接收還是發(fā)送中斷case 6:UartRec();/如果PVIR=6,則發(fā)生了接受中斷,執(zhí)行接受中斷服務程序d)當由于干擾而引起其它中斷時,中斷進入此程序直接返回主程序void interrupt nothing()return; 5.3中斷處理void UartRec()unsigned int uwork;int I, k;k=0;while(1) douwork=(*SCIRXST);while(uwork&0x40= =0);cReceive=(*SCIRXBUF);cBufferk= cReceive;if(cReceive= =。) cBufferk+1=;nlen=k+1;Set();Break;k+; k%=16;5.4程序初始化# include 2407c.h/初始化