新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > C8051F320-并行端口與交*開關

        C8051F320-并行端口與交*開關

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

        具有25個I/O引腳,分別為P0、P1、P2、P3.0。為了能根據需要使用內部數字系統資源,必須利用數字將所用的資源映射到具體引腳上。分析如下:

        如果沒有用到任何資源,那么所有25個引腳都可以作為正常的并行引腳使用,若用到數字資源,必須犧牲一部分并行口,將引腳提供給內部資源使用。假設有A、B、C三種資源,所需要的引腳數分別為2、1、3。

        1、如果ABC都不用,那么可以正常使用P0、P1、P2以及P3.0

        2、如果使用A資源,那么將會占用P0.0、P0.1,其余引腳照樣可以作為并行口用,但是被占用的口無法控制

        3、如果同時使用ABC資源,則需要6個腳,故P0口只剩下P0.6、P0.7可用,其他口不受影響

        以上只是大概意思,不精確。以下為詳細筆記。

        一、寄存器

        P0口有P0MDIN、P0MDOUT、P0SKIP三個控制寄存器,同理P1、P2都有,P3沒有SKIP

        PxMDIN:設置對應是否作為模擬輸入,“0”表示模擬輸入。當任意引腳作為模擬輸入時,不能作為IO口受到控制

        PxMDOUT:設置對應為漏極開路或推挽,“0”表示開漏。開漏時只能輸出低電平或高阻,若需要輸出高電平,需要另外加上拉電阻,其電流小于推挽。不過實測還沒感覺出開漏與推挽的區別,待查。

        PxSKIP:用來保護特定的引腳不被內部資源使用。為“1”時,表示該引腳被跳過。本來內部數字資源是按照優先級列表按順序占用,如果某個腳你希望留下來自己用,那么可以設置為“1”,那么該腳必然不被占用,可以作為正常的IO口。

        二、

        寄存器XBR0、XBR1用來分配引腳給內部數字資源,收到PxSKIP寄存器的影響,分配優先級見下圖:
        點擊瀏覽下一頁

        三、實測細節

        準備工作:

        1、P0口連接八個發光二極管,P1.0連接觸點開關,P1.1~P1.7連接7個發光二極管。

        2、編程,首先令PxMDIN=FF,PxMDOUT=FF。再令PxSKIP=0,但P1.0例外,跳過,否則沒法測試

        main函數的作用是開關控制所有的燈,按下全亮,松開全暗。

        *XBR1的D6必須等于1,要不所有引腳全都不受控。


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 东乌珠穆沁旗| 南康市| 循化| 甘泉县| 友谊县| 库尔勒市| 汝州市| 耿马| 平定县| 招远市| 贵德县| 杂多县| 天镇县| 颍上县| 西丰县| 勃利县| 唐海县| 和田县| 长白| 都江堰市| 合阳县| 嘉禾县| 淮安市| 精河县| 浠水县| 柳河县| 中山市| 阳泉市| 汶上县| 桐梓县| 通榆县| 永州市| 正镶白旗| 湘乡市| 泸西县| 买车| 徐汇区| 余姚市| 高淳县| 沈丘县| 治县。|