新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于TMS320F2812的電氣平臺開發設計

        基于TMS320F2812的電氣平臺開發設計

        作者: 時間:2012-08-16 來源:網絡 收藏

        2 DSP與單片機的通信
        2.1 DSP與單片機通信的接口設計
        通常情況下DSP與單片機的通信方式有兩種:串行通信和并行通信。串行通信設計起來比較簡單,接口電路較少,但傳輸的速率不高。并行通信設計電路比較復雜,成本較高,但傳輸速率快。綜合考慮一下,在本論文中選擇串行通信。的串行接口主要是包括串行通信接口(SCI)和串行外圍設備接口(SPI)。SCI是一個采用發送、接收雙線制的中行通信接口,就是通常所說的UART接口,支持16級的接收發送FIFO,從而降低了串行通信時CPU的開銷。SPI是一種高速的同步串行輸入輸出(I/O)接口,允許1~16位的數據流在設備與設備之間交換。考慮到設計電路的方便,及后續的軟件編程簡單,本文采用了SCI口與單片機通信,選取STC89C51型的單片機。將的SCITXD和SCIRXD分別接單片機的RXD和TXD口,但是是串口通信電壓是33V,而89C51則是5V。因此,由于通信信號電平的不同它們不能直接接在一起。在本文當中采用了兩片由TI公司生產的MAX3232芯片作為通信的轉換接口,MAX3232采用專有抵押差發生器輸出級,利用雙電荷泵在3.0V至5.5V電壓電源供電時能夠實現RS-232的功能,保證在120Kbps數據速率下維持RS-232輸出電平。MAX3232具有兩個發送器、接收器,可以實現全雙工的異步串行通信。其接口電路如圖3所示。

        本文引用地址:http://www.104case.com/article/148593.htm

        b.JPG


        2.2 DSP與單片機通信的初始化設計
        在DSP與單片機通信時必須將其初始化,才能進行正常的串行通信。
        (1) TMS320F2812的串行通信初始化設置
        DSP系統的串行通信時鐘是南外設時鐘LSPCLK的波特率選擇寄存器確定的。SCI的波特率計算公式為
        d.JPG
        其中1≤BRR≤65535才成立,如果BRR=0,則波特率=LSPCLK/16,本文所選DSP的SYSCLK=120MHz,LSPCLK=30MHz,波特率為4800bit/s,由式(1)計算得BRR=780。16位波特率寄存器SCIHBAUD (高字節)和SCILBAUD(低字節)連接在一起,構成16位波特率設置寄存器BRR。
        (2)單片機的初始化
        本文選剛的是STC89C51型單片機,其主要的特點有:
        片內帶振蕩器,頻率范圍為1.2~12MHz;
        片內有128字節的數據存儲器(RAM),4KB的Flash程序存儲器(ROM)
        4個8位的并行I/O接口:P0、P1、P2、R3;
        2個16位定時器/計數器T0、T1;
        2個優先級別的5個中斷源;
        1個全雙工的串行I/O口,可多級通信;
        128位(16字節)用戶尋址空間;
        在MCS-51串行口的四種工作方式中,方式0和2的波特率是固定的,而方式1和3的波特率是可變的,由定時器TI的溢出率控制。在這里選擇方式3,單片機的晶振頻率為11.0592MHz,其波特率的計算公式為
        e.JPG
        帶入數值可以得出X=243,X就是T1的初值。

        3 DSP外設模塊通信設計
        DSP的外設模塊包括AD模塊,E2PROM模塊,時鐘模塊等。
        3.1 時鐘電路
        TMS320F2812芯片提供了兩種不同的產生時鐘的方案:利用電路板上的內部品振或者利用外部時鐘。外部輸入的時鐘頻率是在20MHz~35MHz的范圍內。芯片上的時鐘鎖環(PLL)可以來倍頻輸入時鐘頻率。圖4是利用晶振來連接的外部電路。

        f.JPG



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 武陟县| 瓦房店市| 芦溪县| 高台县| 大英县| 白银市| 华亭县| 阿拉善右旗| 西城区| 古田县| 无锡市| 平江县| 商城县| 瑞昌市| 美姑县| 盐津县| 万载县| 黔东| 比如县| 宜州市| 北宁市| 八宿县| 万年县| 阿拉尔市| 凤山县| 铁岭县| 宁强县| 濮阳县| 措勤县| 五大连池市| 香河县| 鄄城县| 且末县| 长海县| 大余县| 安溪县| 长葛市| 长乐市| 高唐县| 淄博市| 太仓市|