新聞中心

        EEPW首頁 > EDA/PCB > 牛人業話 > Proteus幫你輕松入門DSP(2)--GPIO操作

        Proteus幫你輕松入門DSP(2)--GPIO操作

        作者:antonine 時間:2015-01-20 來源:電子產品世界 收藏

          一、TMS320F2802X的GPIO概述

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

          TMS320F2802X的每個GPIO引腳除了具有GPIO功能外,還可復用最多三種獨立的外設功能。每個器件共有3個端口,端口A包括GPIO0-GPIO31,端口B包括GPIO32-GPIO38,模塊端口包括AIO0-AIO15.

          下圖為TMS320F2802X典型GPIO端口A內部結構圖。

          二、TMS320F2802X的GPIO寄存器

          引腳功能分配、輸入限制條件,外部中斷源都是通過GPIO配置寄存器來控制。另外,你可以分配引腳將設備從HALT或STANDBY模式喚醒,使能/禁用內部上拉電阻。下表列出了GPIO配置寄存器。

          三、TMS320F2802X的GPIO操作

          TMS320F2802X的GPIO配置通常包括以下幾個步驟:

          1.規劃器件引腳輸出

          通過功能復用,為我們對帶有GPIO功能的引腳進行功能分配進帶來了極大的靈活性。在開始系統設計之前,檢查一下每個引腳的可用的外設功能,根據具體的系統規劃GPIO引腳輸出方案。引腳能不能用作通用輸入口,通用輸出口,或者其他外設功能?知道這些信息,可以幫助我們決定如何進一步配置引腳。

          2.使能或禁用內部上拉電阻

          通過寫GPIO內部上拉電阻禁用寄存器(GPAPUD和GPBPUD),可以使能或禁用內部上拉電阻。能夠用于ePWM輸出的引腳,其內部上拉電阻默認是禁用的,其他所有具有GPIO功能的引腳,其內部上拉電阻默認都是使能的。模擬輸入輸出(AIOx)是沒有內聞上拉電阻的。

          3.選擇輸入限制條件

          對于輸入引腳,如果有,需要指定所需的輸入限制條件。輸入限制條件在GPACTRL,GPBCTRL,GPAQSEL1,GPAQSEL2,GPBQSEL1,GPBQSEL2寄存器中指定。默認情況下,所有的輸入信號同步于SYSCLKOUT。

          4.選擇引腳功能

          通過配置GPxMUXn或AIOMUXn寄存器,將引腳配置為GPIO口或其他可用的復用功能。默認情況下,所有帶GPIO功能引腳在復位時被配置為通用輸入引腳。

          5.選擇引腳方向(對于通用數字IO)

          如果引腳配置為GPIO,通過配置GPADIR,GPBDIR,AIODIR寄存器來指定引腳方向為輸入還是輸出。如果想要把引腳方向從輸入改為輸出,首先通過配置GPXCLEAR,GPXSET或GPXTOGGLE寄存器將數據下載到輸出鎖存器中,一旦輸出鎖存器數據下載完成,通過GPXIDR寄存器改變引腳方向。在復位的時候,所有引腳的輸出鎖存器被清零。

          6.選擇低功耗模塊喚醒源

          在GPIOLPMSEL寄存器中,可以配置哪些引腳可以將器件從HALT和STANDBY低功耗模式中喚醒。

          7.選擇中斷源

          指定XINT1-XINT3中斷的中斷源。對于每個中斷,你可以指定端口A的一個信號作為中斷源,這需要在GPIOXINTnSEL寄存器中指定。中斷源的極性可以在XINTXCR寄存器中配置。

          四、GPIO的PROTEUS驗證

          1.在畫仿真原理圖如下圖所示,用于驗證GPIO的通用輸入、輸出功能。

          2.在CCS中編寫驗證代碼,核心代碼如下圖所示。

          3.按《幫你輕松入門》第一篇中的要求,生成可執行文件加載到工程中,仿真運行如下圖所示。

        上拉電阻相關文章:上拉電阻原理
        全息投影相關文章:全息投影原理


        關鍵詞: Proteus DSP

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 棋牌| 会同县| 嘉善县| 罗平县| 会昌县| 沙河市| 东台市| 察雅县| 正安县| 罗甸县| 额济纳旗| 绥化市| 龙岩市| 武宁县| 乐业县| 儋州市| 南丰县| 文成县| 丹东市| 新乐市| 临夏市| 什邡市| 巩义市| 延边| 天等县| 桐庐县| 宜川县| 桐乡市| 日土县| 双鸭山市| 拉孜县| 丹东市| 湘阴县| 城市| 定远县| 中方县| 博罗县| 波密县| 榆林市| 紫云| 孟连|