新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > HPI在MCU和DSP接口中的應用

        HPI在MCU和DSP接口中的應用

        作者: 時間:2011-09-15 來源:網絡 收藏
        具體設置過程如下:

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

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

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

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

          以下是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; 主機可讀寫D

          HB IL = 0; 當前是第一字節

          HRW = 1; 主機要求讀選通

          HDS1 = 0; 開始數據操作

          H_Byte = P1; 讀出高8位數據

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

          HDS1 = 1; 結束數據操作

          HB IL = 1; 當前是第二字節

          HRW = 1; 主機要求讀選通HPI

          HDS1 = 0; 開始數據操作

          L_Byte = P1; 讀出低8位數據

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

          HDS1 = 1; 結束數據操作

          }

          (2) 寫HPID寄存器程序

          void HPID_Write ( unsigned intW_data)

          {

          HDS2 = 1;

          HCS = 0; 使能HP I

          HCNTL0 = 1;

          HCNTL1 = 0; 主機可讀寫HPID

          HB IL = 0; 當前是第一字節

          HRW = 0; 主機要求寫選通HPI

          HDS1 = 0; 開始數據操作

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

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

          HDS1 = 1; 結束數據操作

          HB IL = 1; 當前是第二字節

          HRW = 0; 主機要求寫選通HPI

          HDS1 = 0; 開始數據操作

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

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

          HDS1 = 1; 結束數據操作

          }

          3 結束語

          本設計方案具有硬件結構簡單、使用方便等優點,有很好的使用價值。經在某導航系統中實際使用的效果來看,證明該設計方案簡單、性能穩定、高效可靠,達到了預期的設計目的。


        上一頁 1 2 下一頁

        關鍵詞: 應用 接口 DSP MCU HPI

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 延安市| 东莞市| 谢通门县| 龙口市| 天长市| 宝应县| 都兰县| 四子王旗| 高密市| 桃源县| 石首市| 武功县| 临泉县| 铁岭县| 新沂市| 万荣县| 卢湾区| 阜平县| 通道| 雅安市| 龙川县| 公安县| 宿州市| 平山县| 临西县| 自贡市| 泊头市| 恩平市| 临江市| 思茅市| 平顶山市| 杭锦旗| 大悟县| 礼泉县| 双鸭山市| 六枝特区| 辽阳市| 扶余县| 洪洞县| 淮南市| 延吉市|