新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > HPI在MCU和DSP接口中的應(yīng)用

        HPI在MCU和DSP接口中的應(yīng)用

        作者: 時(shí)間:2011-09-15 來源:網(wǎng)絡(luò) 收藏
        具體設(shè)置過程如下:

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

          a) 首先初始化HP IC 寄存器,特別是BOB 位。具體方法為:先設(shè)置HCNTL1 =HCNTL0 = 0,選擇將要對(duì)HP IC進(jìn)行操作。然后將HP IC的值寫入HP I。注意HP IC的高8位和低8位是一樣的。

          b) 設(shè)置地址寄存器HP IA。先設(shè)置HCNTL1 =1HCNTL0 = 0,選擇將要對(duì)HP IA進(jìn)行操作。然后將要訪問的C54x片內(nèi)RAM的地址寫入HP I,高8位先寫,低8位后寫。

          c) 讀寫C54x的片內(nèi)RAM。先設(shè)置HCNTL1 /0,選擇將要對(duì)數(shù)據(jù)鎖存器HP ID 進(jìn)行操作。如果設(shè)置HCNTL1 = 0HCNTL0 = 1,表示使用地址自動(dòng)增加模式;如果設(shè)置HCNTL0 = HCNTL1 = 1 時(shí),表示不使用地址自動(dòng)增加模式,這時(shí)完成讀寫操作后,地址寄存器HP IA將不會(huì)變。

          以下是C8051F060的HP I程序:

          (1) 讀D寄存器程序

          unsigned int HP ID_Read ( )

          {

          unsigned char H_Byte,L_Byte;

          HDS2 = 1;

          HCS = 0;         使能HP I

          HCNTL0 = 1;

          HCNTL1 = 0; 主機(jī)可讀寫D

          HB IL = 0; 當(dāng)前是第一字節(jié)

          HRW = 1; 主機(jī)要求讀選通

          HDS1 = 0; 開始數(shù)據(jù)操作

          H_Byte = P1; 讀出高8位數(shù)據(jù)

          Delay(2) ; 等待數(shù)據(jù)讀出完成

          HDS1 = 1; 結(jié)束數(shù)據(jù)操作

          HB IL = 1; 當(dāng)前是第二字節(jié)

          HRW = 1; 主機(jī)要求讀選通HPI

          HDS1 = 0; 開始數(shù)據(jù)操作

          L_Byte = P1; 讀出低8位數(shù)據(jù)

          Delay(2) ; 等待數(shù)據(jù)讀出完成

          HDS1 = 1; 結(jié)束數(shù)據(jù)操作

          }

          (2) 寫HPID寄存器程序

          void HPID_Write ( unsigned intW_data)

          {

          HDS2 = 1;

          HCS = 0; 使能HP I

          HCNTL0 = 1;

          HCNTL1 = 0; 主機(jī)可讀寫HPID

          HB IL = 0; 當(dāng)前是第一字節(jié)

          HRW = 0; 主機(jī)要求寫選通HPI

          HDS1 = 0; 開始數(shù)據(jù)操作

          P1 = ( unsigned char) ( (W_data > > 8) 0xFF) ;  寫入高8位數(shù)據(jù)

          Delay(2) ; 等待數(shù)據(jù)寫入完成

          HDS1 = 1; 結(jié)束數(shù)據(jù)操作

          HB IL = 1; 當(dāng)前是第二字節(jié)

          HRW = 0; 主機(jī)要求寫選通HPI

          HDS1 = 0; 開始數(shù)據(jù)操作

          P1 = ( unsigned char) (W_data0xFF) ;  寫入低8位數(shù)據(jù)

          Delay(2) ; 等待數(shù)據(jù)寫入完成

          HDS1 = 1; 結(jié)束數(shù)據(jù)操作

          }

          3 結(jié)束語

          本設(shè)計(jì)方案具有硬件結(jié)構(gòu)簡(jiǎn)單、使用方便等優(yōu)點(diǎn),有很好的使用價(jià)值。經(jīng)在某導(dǎo)航系統(tǒng)中實(shí)際使用的效果來看,證明該設(shè)計(jì)方案簡(jiǎn)單、性能穩(wěn)定、高效可靠,達(dá)到了預(yù)期的設(shè)計(jì)目的。


        上一頁 1 2 下一頁

        關(guān)鍵詞: 應(yīng)用 接口 DSP MCU HPI

        評(píng)論


        相關(guān)推薦

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

        關(guān)閉
        主站蜘蛛池模板: 吴桥县| 锦屏县| 新干县| 策勒县| 日土县| 高碑店市| 长子县| 安多县| 阳谷县| 阳山县| 乌兰浩特市| 邢台县| 寿阳县| 横峰县| 石台县| 乌兰察布市| 嘉义县| 曲周县| 盐山县| 二手房| 金沙县| 瓮安县| 宾阳县| 九台市| 芒康县| 佛山市| 霍州市| 白水县| 仙居县| 托克逊县| 浠水县| 油尖旺区| 稻城县| 满城县| 凤阳县| 龙口市| 淅川县| 邛崃市| 乃东县| 拉萨市| 延庆县|