<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > DSP與PC機(jī)串行通訊的設(shè)計(jì)

          DSP與PC機(jī)串行通訊的設(shè)計(jì)

          作者: 時(shí)間:2016-12-20 來源:網(wǎng)絡(luò) 收藏

            5 DSP軟件設(shè)計(jì)

            5.1 串口初始化

            首先對寄存器地址、波特率、數(shù)據(jù)位、停止位、奇偶校驗(yàn)位進(jìn)行設(shè)置。

            void Set()

            {

            *SCICCR=0x7; //8 位字符,1 停止位,無校驗(yàn)

            *SCICTL1=0X13; //使能發(fā)送和接受

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

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

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

            *SCICTL1=0x33; //使能發(fā)送和接受,復(fù)位

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

            }

            5.2 中斷初始化

            a)禁止總中斷子程序

            void inline disable()

            {

            asm("setc INTM");

            asm("setc SXM");

            }

            b)使能總中斷子程序

            void inline enable()

            {

            asm("clrc INTM") ;

            }

            c)中斷服務(wù)程序

            void interrupt uarttr(){

            switch (*PVIR){

            //根據(jù)中斷向量寄存器PVIR 的值區(qū)別是接收還是發(fā)送中斷

            case 6:UartRec();

            //如果PVIR=6,則發(fā)生了接受中斷,執(zhí)行接受中斷服務(wù)程序

            }

            }

            d)當(dāng)由于干擾而引起其它中斷時(shí),中斷進(jìn)入此程序直接返回主程序

            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; //清除中斷標(biāo)志

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

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

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

            *PADATDIR=0x100; //設(shè)置ADIR 為輸出口

            }

            5.5主程序

            Main(){

            Set();

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

            Initial(); //系統(tǒng)初始化

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

           ?。?P>  }

            }

            6結(jié)束語

            本文作者創(chuàng)新點(diǎn):利用DSP 的串行通信接口(SCI)和功能強(qiáng)大的開發(fā)環(huán)境CCS,可以方便地實(shí)現(xiàn)DSP 與PC 機(jī)間的單機(jī)或多機(jī)串行通信。通過實(shí)際運(yùn)行表明,利用TMS320 的SCI 模塊實(shí)現(xiàn)DSP 之間或與PC 機(jī)的通信,與傳統(tǒng)的C51 單片機(jī)相比,其電路簡單、設(shè)置靈活、運(yùn)行速度快,性能可靠穩(wěn)定。


          上一頁 1 2 下一頁

          關(guān)鍵詞: DSPPC機(jī)串行通訊RS48

          評論


          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();