首 页文档资料下载资料维修视频包年699元
请登录  |  免费注册
当前位置:精通维修下载 > 文档资料 > 家电技术 > 单元电路介绍 > 其它电路
HPI在MCU和DSP接口中的应用
来源:本站整理  作者:佚名  2011-09-16 15:24:16



具体设置过程如下:

  a) 首先初始化HP IC 寄存器,特别是BOB 位。具体方法为:先设置HCNTL1 =HCNTL0 = 0,选择将要对HP IC进行操作。然后将HP IC的值写入HP I。注意HP IC的高8位和低8位是一样的。

  b) 设置地址寄存器HP IA。先设置HCNTL1 =1&HCNTL0 = 0,选择将要对HP IA进行操作。然后将要访问的C54x片内RAM的地址写入HP I,高8位先写,低8位后写。

  c) 读写C54x的片内RAM。先设置HCNTL1 /0,选择将要对数据锁存器HP ID 进行操作。如果设置HCNTL1 = 0&HCNTL0 = 1,表示使用地址自动增加模式;如果设置HCNTL0 = HCNTL1 = 1 时,表示不使用地址自动增加模式,这时完成读写操作后,地址寄存器HP IA将不会变。

  以下是C8051F060的HP I接口程序:

  (1) 读HPID寄存器程序

  unsigned int HP ID_Read ( )

  {

  unsigned char H_Byte,L_Byte;

  HDS2 = 1;

  HCS = 0;         使能HP I

  HCNTL0 = 1;

  HCNTL1 = 0; 主机可读写HPID

  HB IL = 0; 当前是第一字节

  HRW = 1; 主机要求读选通HPI

  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_data&0xFF) ;  写入低8位数据

  Delay(2) ; 等待数据写入完成

  HDS1 = 1; 结束数据操作

  }

  3 结束语

  本设计方案具有硬件结构简单、使用方便等优点,有很好的使用价值。经在某导航系统中实际使用的效果来看,证明该设计方案简单、性能稳定、高效可靠,达到了预期的设计目的。

上一页  [1] [2] 

关键词:

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分)
Copyright © 2007-2017 down.gzweix.Com. All Rights Reserved .
页面执行时间:78,792.97000 毫秒