⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 d13hal.c

📁 基于菲利普USB接口芯片ISP1161A1从口的USB设备开发
💻 C
字号:
/****************************************Copyright (c)**************************************************
**                               Guangzhou ZLG-MCU Development Co.,LTD.
**                                      graduate school
**                                 http://www.zlgmcu.com
**
**--------------File Info-------------------------------------------------------------------------------
** File name:			D13HAL.c
** Last modified Date:	2004-12-10
** Last Version:		V1.0
** Descriptions:		USB驱动程序软件包: ISP1181B(D13) 设备端驱动程序----设备控制驱动层
**						Soft Packet of USB Driver: the Driver of Device of ISP1181B(D13)
												   the Layer of Device Control Driver
**------------------------------------------------------------------------------------------------------
** Created by:			Ming Yuan Zheng
** Created date:		2004-12-10
** Version:				V1.0
** Descriptions:		The original version
**
**------------------------------------------------------------------------------------------------------
** Modified by:			
** Modified date:		
** Version:				
** Descriptions:		
**
**------------------------------------------------------------------------------------------------------
** Modified by: 
** Modified date:
** Version:	
** Descriptions: 
**
********************************************************************************************************/

#include  "config.h"
#include  "D13Config.h"

/************************************************************************************************************
** 函数名称: void Init_D13Port(void)		Name:     void Init_D13Port(void)
** 功能描述: 初始化D13与LPC2200的连接端口	Function: Initialize the connected ports between D13 and LPC2200 
** 输   入: 无								Input:	  NULL
** 输   出: 无								Output:	  NULL
*************************************************************************************************************/
void Init_D13Port(void)
{
   	USBRST_GPIO();							//使能 RESET   为通用IO口	enable RESET   is GPIO
  	SUSP_GPIO();							//使能 SUSPEND 为通用IO口 	enable SUSPEND is GPIO 
  	WKUP_GPIO();
  	  	
  	USBRST_OUT();							//RESET   为输出IO口		configure RESET   is output
  	SUSP_IN();								//SUSPEND 为输入IO口		configure SUSPEND is input
  	WKUP_OUT();								//WAKEUP  为输出IO口		configure WAKEUP  is output
    INIT_INTD13();							//INT	  为中断输入口		configure INT is interrupt input
}

/*************************************************************************************************************
** 函数名称: void Rst_D13(void)			    Name:     void Rst_D13(void)
** 功能描述: 复位D13			 			Function: Reset ISP1181B
** 输   入: 无								Input:	  NULL
** 输   出: 无								Output:	  NULL
**************************************************************************************************************/
void Rst_D13(void)
{
	INT32U i;
	
	CLR_USBRST();							//RESET  置0	clear RESET
	for(i = 0;i < 0xffff; i++);				//软件延时		software delay
		SET_USBRST();						//RESET  置1	set RESET
	CLR_WKUP();								//WAKEUP 置0	clear WAKEUP
}


/*************************************************************************************************************
** 函数名称: void bus_delay(void)			Name:     void Rst_D13(void)
** 功能描述: 总线延时						Function: bus delay
** 输   入: 无								Input:	  NULL
** 输   出: 无								Output:	  NULL
**************************************************************************************************************/
void delay(void)
{
	int i = 1;
	
	while(i != 0){i--;};
}


/*************************************************************************************************************
** 函数名称: void outportc(INT8U Data)		Name:     void outportc(INT8U Data)
** 功能描述: 输出命令						Function: output command
** 输   入: INT8U Data:    命令字节		Input:	  INT8U Data: command byte
** 输   出: 无								Output:	  NULL
**************************************************************************************************************/
void outportc(INT8U Data)
{	
	D13_COM = Data;							//发送命令		send command 
}

/************************************************************************************************************
** 函数名称: void outportd(INT8U Data)     Name:	  void outportd(INT8U Data)
** 功能描述: 输出数据					   Function:  output data
** 输   入: INT8U Data:    数据字节	   Input:	  INT8U Data:  data byte 
			 INT16U Data:	数据字		   			  INT16U Data: data word				  
** 输   出: 无							   Output:	  NULL
************************************************************************************************************/
#if D13_16BIT_EN
void outportd(INT16U Data)
{
	D13_DAT = Data;							//发送数据(16位) send data(16-bit)
}
#else
void outportd(INT8U Data)
{
	delay();
	D13_DAT = Data;							//发送数据(8位)	 send data(8-bit)
}
#endif

/************************************************************************************************************
** 函数名称: INT8U inportd(void)			Name:	  INT8U inportd(void)
** 功能描述: 读入数据						Function: read data	
** 输   入: 无								Input:	  NULL
** 输   出: 读到的数据						Output:	  the data of read
*************************************************************************************************************/
#if D13_16BIT_EN
INT16U inportd(void)
{
	return D13_DAT;							//读取数据(16位) read data(16-bit)
}
#else
INT8U inportd(void)					
{
	delay();
	return D13_DAT;							//读取数据(8位)  read data(8-bit)
}
#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -