《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > DSP與PC機串行通信的設計
DSP與PC機串行通信的設計
OFweek電子工程網
摘要: 本文以TMS320F240系列為例,簡要介紹了數字信號處理器串行通信接口SCI模塊和RS485串口通信,并編程實現了TMS320F240與PC機串行通信接口電路。
Abstract:
Key words :

  摘要:以TMS320F240 系列為例,簡要介紹了數字信號處理器串行通信接口SCI 模塊和RS485 串口通信,并編程實現了TMS320F240 與PC 機串行通信接口電路。

  1 引言

  DSP 既是Digital Signal Pricessing 的縮寫,也是Digital Signal Pricessor 的縮寫。前者是指數字信號處理的理論和方法,后者則是指用于數字信號處理的可編程微處理器。TMS320F240 系列是在TMS320F2000TM 平臺下的一種定點DSP 芯片,是專為數字電機控制和其他控制應用系統而設計的16位定點運算的DSP。它集合了DSP 的高速運算功能與電機的強大控制能力,為控制系統應用提供了一種理想的解決方案。TMS320F240 片內外設有一個16 位的同步串行外圍接口(SPI),一個用于串行通訊接口的SCI 模塊,雙10 位A/D 轉換器,帶中斷的看門狗定時器模塊(WDT),帶有鎖相環(PLL)時鐘發生器。另外,還集成了兩個事件管理模塊EVA 和EVB。因此,TMS320F240 不僅具有高速數據處理能力,還具有控制和事件管理能力,可完成人機界面、與上位機進行串行通信等功能。

  2 串行通訊接口(SCI)模塊

  SCI 接收器和發送器是雙緩沖的,每一個都有他自己單獨的使能和中斷標志位。兩者可單獨工作,或在全雙工的方式下同時工作。為了確保數據的完整性,SCI 對接收到的數據進行間斷檢測、奇偶性校驗、超時和幀出錯的檢查。通過一個16 位的波特率選擇寄存器,數據傳輸的速度可以被編程為65535多種不同的方式。SCI 的串行通信接口包括SCIRXD(串行通信數據接收)和SCITXD(串行通信數據發送),在不使用SCI 時,這兩個引腳也可作通用I/O 口。發送和接收的操作可以利用狀態標志位通過中斷驅動或查詢算法來完成。與之相關的主要寄存器:發送緩沖寄存器SCITXBUF、接收緩沖寄存器 SCIRCBUF、接收仿真緩沖寄存器SCIRXEMU;通信控制寄存器SCICCR、中斷使能和內部時鐘使能SCICTL1 和SCICTL2 、波特率選擇高字節寄存器SCIHBAUD、波特率選擇低字節寄存器SCILBAUD、優先級控制寄存器SCIPRI、引腳控制功能SCIPC2 以及反映通信狀態SCIXST 等。

  串行通信接口模塊有兩個多處理器通信協議:空閑線多處理器模式和地址多處理器模式。空閑線模式在地址前留有一個固定空間,該模式沒有附加的地址 /數據位,它在處理包含多于10 個字節的數據塊方面比地址位模式更有效;地址位模式在每個字節中加入一個額外位(地址位)來區分地址和數據,這種模式在處理多個小數據塊時更有效。

  3 RS-485串口通信

  RS-232 雖然被廣泛接受,但其數據傳送的速度慢、在現代網絡通信中已暴露出的接口處各信號間容易產生干擾等明顯的缺點。RS-232 只能傳輸15 米,不能滿足遠距離傳輸要求,而RS-485 最大傳輸距離為1200 米,最大傳送速率可達10Mb/s。因此,RS-485 在遠程通信和多機總線系統中具有很大吸引力。MAX48X/49X 系列收發器芯片適合于RS 一422/RS 485 通信標準。其主要有以下特點:

  

  ·單+5V 電源供電;

  · 低功耗:工作電流120~ 500μA :

  · 驅動過載保護;

  · 通信傳輸線上可掛32 個收發器方便組成半雙工通信電路;

  · 共模輸入電壓范圍:-7V ~ + l2V

  MAX485 為8 腳封裝,引腳配置如圖l 所示,各引腳功能說明如表l 所示。

  表1

  

  摘要:以TMS320F240 系列為例,簡要介紹了數字信號處理器串行通信接口SCI 模塊和RS485 串口通信,并編程實現了TMS320F240 與PC 機串行通信接口電路。

  1 引言

  DSP 既是Digital Signal Pricessing 的縮寫,也是Digital Signal Pricessor 的縮寫。前者是指數字信號處理的理論和方法,后者則是指用于數字信號處理的可編程微處理器。TMS320F240 系列是在TMS320F2000TM 平臺下的一種定點DSP 芯片,是專為數字電機控制和其他控制應用系統而設計的16位定點運算的DSP。它集合了DSP 的高速運算功能與電機的強大控制能力,為控制系統應用提供了一種理想的解決方案。TMS320F240 片內外設有一個16 位的同步串行外圍接口(SPI),一個用于串行通訊接口的SCI 模塊,雙10 位A/D 轉換器,帶中斷的看門狗定時器模塊(WDT),帶有鎖相環(PLL)時鐘發生器。另外,還集成了兩個事件管理模塊EVA 和EVB。因此,TMS320F240 不僅具有高速數據處理能力,還具有控制和事件管理能力,可完成人機界面、與上位機進行串行通信等功能。

  2 串行通訊接口(SCI)模塊

  SCI 接收器和發送器是雙緩沖的,每一個都有他自己單獨的使能和中斷標志位。兩者可單獨工作,或在全雙工的方式下同時工作。為了確保數據的完整性,SCI 對接收到的數據進行間斷檢測、奇偶性校驗、超時和幀出錯的檢查。通過一個16 位的波特率選擇寄存器,數據傳輸的速度可以被編程為65535多種不同的方式。SCI 的串行通信接口包括SCIRXD(串行通信數據接收)和SCITXD(串行通信數據發送),在不使用SCI 時,這兩個引腳也可作通用I/O 口。發送和接收的操作可以利用狀態標志位通過中斷驅動或查詢算法來完成。與之相關的主要寄存器:發送緩沖寄存器SCITXBUF、接收緩沖寄存器 SCIRCBUF、接收仿真緩沖寄存器SCIRXEMU;通信控制寄存器SCICCR、中斷使能和內部時鐘使能SCICTL1 和SCICTL2 、波特率選擇高字節寄存器SCIHBAUD、波特率選擇低字節寄存器SCILBAUD、優先級控制寄存器SCIPRI、引腳控制功能SCIPC2 以及反映通信狀態SCIXST 等。

  串行通信接口模塊有兩個多處理器通信協議:空閑線多處理器模式和地址多處理器模式。空閑線模式在地址前留有一個固定空間,該模式沒有附加的地址 /數據位,它在處理包含多于10 個字節的數據塊方面比地址位模式更有效;地址位模式在每個字節中加入一個額外位(地址位)來區分地址和數據,這種模式在處理多個小數據塊時更有效。

  3 RS-485串口通信

  RS-232 雖然被廣泛接受,但其數據傳送的速度慢、在現代網絡通信中已暴露出的接口處各信號間容易產生干擾等明顯的缺點。RS-232 只能傳輸15 米,不能滿足遠距離傳輸要求,而RS-485 最大傳輸距離為1200 米,最大傳送速率可達10Mb/s。因此,RS-485 在遠程通信和多機總線系統中具有很大吸引力。MAX48X/49X 系列收發器芯片適合于RS 一422/RS 485 通信標準。其主要有以下特點:

  

  ·單+5V 電源供電;

  · 低功耗:工作電流120~ 500μA :

  · 驅動過載保護;

  · 通信傳輸線上可掛32 個收發器方便組成半雙工通信電路;

  · 共模輸入電壓范圍:-7V ~ + l2V

  MAX485 為8 腳封裝,引腳配置如圖l 所示,各引腳功能說明如表l 所示。

  表1

  

  本設計以PC 機為主機,TMS320F240 為從機,主從機之間進行串口通信。TMS320F240 與PC 機之間采用RS 一485 標準進行半雙工通信的接口電路如圖2 所示。其中,接收器和驅動器的選擇由TMS320F240 的XF/IOPC2 引腳控制。由于一般PC 機上提供的是標準的RS 232 C 串行接口,因此,需要RS 232C/RS485 轉換器進行接口轉換。

  

  4 上位機PC機的軟件設計

  上位機PC 采用高級語言C,在用C 語言開發DSP 應用程序時,需要嵌入一句或幾句匯編語言,如在程序的初始化階段對INTM、SXM 等位的配置。用asm 的方式就可以實現單句匯編語言的嵌入。

  Code Composer Studio 簡稱CCS,是TI 公司推出的為開發TMS320 系列DSP 軟件的集成開發環境(IDE)。CCS 工作在Windows 操作系統下,類似于VC++的集成開發環境,采用圖形接口界面,提供有編輯工具和工程管理工具。在CC 環境下串行通信有兩種方式:即同步方式和異步方式,在此僅討論異步方式中的串行通信。PC 串行口發送器輸出端和接收器輸入端的數據格式為幀信息格式,與TMS320F240的SCI 口格式相同。通信時,雙方必須約定通信數據傳輸格式、傳輸速率及各自工作方式等。本文設計,當上位機請求通訊時,先發請求通訊命令,下位機有效接收并判斷,確認后向上位機發響應碼。上位機在收到響應碼后,再發操作命令。雙方約定:波特率208h;8 位字符,一位停止位,無校驗;傳送方式:PC 機采用查詢方式接收數據,TMS320F240 采用中斷方式接收數據。

  5 DSP軟件設計

  5.1 串口初始化

  首先對寄存器地址、波特率、數據位、停止位、奇偶校驗位進行設置。

  void Set()

  {

  *SCICCR=0x7; //8 位字符,1 停止位,無校驗

  *SCICTL1=0X13; //使能發送和接受

  *SCICTL2=0x03; //使能接受和發送中斷

  *SCIHBAUD=0x02; //波特率=208h,40MHZ

  *SCILBAUD=0x08; //208h=40*106/(9600*8)-1

  *SCICTL1=0x33; //使能發送和接受,復位

  *SCIPRI=0X60; //SCI 中斷(接受和發送中斷)為低優先級中斷

  }

  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){

  //根據中斷向量寄存器PVIR 的值區別是接收還是發送中斷

  case 6:UartRec();

  //如果PVIR=6,則發生了接受中斷,執行接受中斷服務程序

  }

  }

  d)當由于干擾而引起其它中斷時,中斷進入此程序直接返回主程序

  void interrupt nothing(){

  return; }

  5.3中斷處理

  void UartRec(){

  unsigned int uwork;

  int I, k;

  k=0;

  while(1) {

  do{

  uwork=(*SCIRXST);

  }while((uwork&0x40= =0));

  cReceive=(*SCIRXBUF);

  cBuffer[k]= cReceive;

  if(cReceive= =’。’) {

  cBuffer[k+1]=’’;

  nlen=k+1;

  Set();

  Break;

  }

  k++; k%=16;

  }

  }

  5.4程序初始化

  # include "2407c.h"

  //初始化子程序

  Initial(){

  *IFR=0xFFFF; //清除中斷標志

  *WDCR=0Xe8; //不使能看門狗

  *SCSR1=0x81FE; //CLKIN=6M, CLKOUT=24M

  *MCRA=0x3; //use SCITXD, SCIRXD

  *PADATDIR=0x100; //設置ADIR 為輸出口

  }

  5.5主程序

  Main(){

  Set();

  Disable(); //屏蔽所有中斷

  Initial(); //系統初始化

  Enable(); //使能總中斷

  While(1) {

  unsigned int uwork;

  For (intI=0;I《10;I++){

  Do{

  Uwork=(*SCICTL2);

  }while (uwork&0x0c0!=0x0c0);

  (*SCITXBUF)=cAnswer[i];

  *IFR=0x0010;

  Enable();

  }

  Do{

  Uwork=(*SCICTL2);

  }while (uwork&0x0c0!=0x0c0);

  (*SCITXBUF)=‘“’;

  }

  For(;;){

  :

  }

  }

  6結束語

  本文作者創新點:利用DSP 的串行通信接口(SCI)和功能強大的開發環境CCS,可以方便地實現DSP 與PC 機間的單機或多機串行通信。通過實際運行表明,利用TMS320 的SCI 模塊實現DSP 之間或與PC 機的通信,與傳統的C51 單片機相比,其電路簡單、設置靈活、運行速度快,性能可靠穩定。

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
日韩一区二区精品葵司在线| 午夜精品国产更新| 亚洲图片欧美午夜| 亚洲精品日韩久久| 亚洲国产高清高潮精品美女| 黄色亚洲大片免费在线观看| 国产亚洲一区二区在线观看 | 在线综合欧美| 一本大道久久a久久精二百| 日韩一区二区精品葵司在线| 日韩午夜av电影| 日韩亚洲国产欧美| 一本色道久久综合| 亚洲视频观看| 亚洲欧美国产制服动漫| 亚洲欧美综合国产精品一区| 亚洲欧美综合v| 久久激五月天综合精品| 久久精品一区四区| 看欧美日韩国产| 欧美大片一区| 欧美日韩在线免费观看| 国产精品xxxxx| 国产精品一区二区男女羞羞无遮挡| 国产精品综合色区在线观看| 国产偷国产偷精品高清尤物| 一区二区三区在线不卡| 亚洲国产综合视频在线观看| 亚洲精品一二三| 亚洲一区www| 欧美一区二区三区精品| 亚洲国产精品视频一区| 99re热精品| 亚洲欧美日韩第一区| 久久激情中文| 欧美顶级大胆免费视频| 欧美色精品天天在线观看视频| 国产精品日本欧美一区二区三区| 国产亚洲成人一区| 亚洲国产va精品久久久不卡综合| 日韩天天综合| 亚洲欧美日韩视频二区| 亚洲国产欧美久久| 亚洲午夜精品久久久久久app| 欧美一区二区三区久久精品茉莉花| 久久资源av| 欧美日韩大片| 国产日韩欧美在线播放不卡| 亚洲高清激情| 亚洲一区二区欧美| 亚洲国产精品电影| 亚洲视频在线观看三级| 久久疯狂做爰流白浆xx| 欧美电影在线免费观看网站| 欧美午夜片在线免费观看| 国产午夜精品久久久久久久| 91久久精品视频| 亚洲欧美日韩国产另类专区| 91久久精品国产91久久性色| 亚洲一区二区三区在线看| 久久激情五月丁香伊人| 欧美日韩成人一区二区| 国产一区香蕉久久| 99pao成人国产永久免费视频| 欧美亚洲日本国产| 日韩特黄影片| 久久aⅴ国产欧美74aaa| 欧美精品不卡| 国产一区91精品张津瑜| 一区二区三区高清不卡| 亚洲第一区色| 午夜一级在线看亚洲| 欧美激情视频给我| 国产一区二区三区成人欧美日韩在线观看| 亚洲日本无吗高清不卡| 欧美综合国产精品久久丁香| 亚洲一区二区三区四区五区黄| 免费成人在线视频网站| 国产日韩欧美亚洲一区| 日韩一级欧洲| 亚洲黄色免费网站| 欧美一级二级三级蜜桃| 欧美日韩一区二区三区在线 | 尤物yw午夜国产精品视频明星| 亚洲一区二区三区三| 亚洲美女在线一区| 久久先锋影音av| 国产精品综合不卡av| 亚洲最新视频在线| 亚洲精选一区二区| 久久久噜噜噜久久狠狠50岁| 国产精品国产三级国产专区53| 亚洲国产99精品国自产| 久久福利影视| 久久av红桃一区二区小说| 欧美日韩亚洲一区二区三区| 亚洲国产精品精华液网站| 久久精品国产亚洲a| 欧美亚洲综合网| 国产精品国产三级国产专区53| 亚洲精品日日夜夜| 亚洲精品视频在线观看免费| 久久亚洲国产成人| 国产一区久久| 欧美一区二区在线播放| 欧美一区二区高清在线观看| 国产精品久久久久久久久婷婷| 一区二区久久久久| av成人福利| 欧美精品在线观看| 亚洲国产老妈| 亚洲欧洲午夜| 欧美国产视频日韩| 亚洲黄色av| 亚洲美女av在线播放| 欧美国产专区| 亚洲精品免费一区二区三区| 亚洲精选在线观看| 欧美精品99| 99riav1国产精品视频| 一本久久综合亚洲鲁鲁五月天| 欧美人与性禽动交情品 | 久久久精品999| 国产综合香蕉五月婷在线| 欧美在线播放| 久久久亚洲欧洲日产国码αv| 国产亚洲精品bt天堂精选| 午夜伦理片一区| 久久激情视频| 极品少妇一区二区三区| 亚洲国产精品999| 欧美成人高清视频| 亚洲人成网在线播放| 中文av一区特黄| 国产精品毛片a∨一区二区三区|国| 亚洲视屏一区| 欧美有码在线视频| 国产一区亚洲| 最新亚洲视频| 欧美极品影院| 一区二区av| 久久成人在线| 激情视频一区二区| 亚洲精品中文字幕女同| 欧美日韩在线三区| 午夜免费久久久久| 老司机精品视频一区二区三区| 亚洲高清在线精品| 亚洲一区二区三区成人在线视频精品 | 国产区精品在线观看| 久久aⅴ国产欧美74aaa| 欧美成熟视频| 亚洲视频电影图片偷拍一区| 久久国产精品一区二区三区四区 | 亚洲人成绝费网站色www| 欧美日韩国产不卡| 亚洲一区日韩| 美日韩精品视频| 99精品视频免费全部在线| 久久都是精品| 亚洲国产精品黑人久久久| 亚洲一二三区精品| 国产日韩欧美在线视频观看| 亚洲精品1区| 国产精品青草久久| 亚洲欧洲久久| 国产精品视频精品视频| 亚洲欧洲日本专区| 国产精品黄色在线观看| 久久精品成人| 欧美天天影院| 亚洲国产精品国自产拍av秋霞| 欧美午夜电影在线| 久久成人综合视频| 欧美日韩国产麻豆| 先锋资源久久| 欧美日韩亚洲三区| 久久精品国产清自在天天线| 欧美日韩亚洲国产精品| 久久精品国产综合| 欧美视频在线观看| 亚洲国产精品高清久久久| 国产精品久久久久高潮| 亚洲精品美女免费| 国产毛片一区二区| 一区二区三区四区国产| 国产一区二区精品久久91| 一区二区三区高清在线观看| 国内久久婷婷综合| 亚洲图片欧美一区| 在线播放日韩专区| 性色一区二区三区| 亚洲另类在线一区| 美女免费视频一区| 亚洲欧美视频一区| 欧美三区在线视频| 亚洲精品一区二区三区福利| 国产日本亚洲高清| 亚洲视频二区| 91久久久在线|