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

📄 apb.h

📁 arm(str710)usb功能的实现
💻 H
字号:
/****************************************Copyright (c)**************************************************
**                                      
**                                          STR710 development team
**                                          
**
**                                 http://www.appchip.com
**
**--------------文件信息--------------------------------------------------------------------------------
** 文 件 名: apb.h
** 创 建 人: lhl
** 创建日期: 2006年5月10日
** 描    述: 该文件包含了所有APB功能函数原型与所需要的常量
**
**--------------历史版本--------------------------------------------------------------------------------
** 创 建 人: lhl
** 版    本: V1.0
** 日   期: 2006年5月10日
** 描   述: 原始版本
**
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/

#ifndef __APB_H
#define __APB_H

#include "cpu_cfg.h"

 	#ifdef __cplusplus
    extern "C" {
    #endif

#if EN_ARM_APB > 0		//决定是否编译该文件

/************************************** 宏定义,常量定义 ******************************************/

///APB1 Peripherals 
#define  I2C0_PERIPHERAL      0x0002
#define  I2C1_PERIPHERAL      0x0004
#define  UART0_PERIPHERAL     0x0010
#define  UART1_PERIPHERAL     0x0020
#define  UART2_PERIPHERAL     0x0040
#define  UART3_PERIPHERAL     0x0080
#define  USB_PERIPHERAL       0x0100
#define  CAN_PERIPHERAL       0x0200
#define  BSPI0_PERIPHERAL     0x0400
#define  BSPI1_PERIPHERAL     0x0800
#define  HDLC_PERIPHERAL      0x2000

//APB2 Peripherals 
#define  XTI_PERIPHERAL       0x0002
#define  GPIO0_PERIPHERAL     0x0004
#define  GPIO1_PERIPHERAL     0x0008
#define  GPIO2_PERIPHERAL     0x0010
#define  ADC12_PERIPHERAL     0x0080
#define  TIM0_PERIPHERAL      0x0200
#define  TIM1_PERIPHERAL      0x0400
#define  TIM2_PERIPHERAL      0x0800
#define  TIM3_PERIPHERAL      0x1000
#define  RTC_PERIPHERAL       0x2000
#define  WDG_PERIPHERAL       0x4000
#define  EIC_PERIPHERAL       0x8000

/**************************************  枚举类型定义  *******************************************/

typedef enum { APB1 = 0, APB2 = 1 } APB_CHANNELS_T;

/************************************** 结构体类型定义  ******************************************/

/********************************** 全局外部函数原型声明 *****************************************/

/*********************************************************************************************************
;** 函数名称: APBn_ClockConfig
;** 功能描述: 允许禁止APBn所属外设时钟 说明:该函数不被频繁的调用,执行速度没有什么要求,所以可不定义为内联函数
;** 
;** 参    数: abp_number: 外设所属的APB编号(APB1,ABP2) 
:**           new_status: ENABLE: 允许 DISABLE: 禁止
;**           peripheral: 具体的设备
;**  
;** 返 回 值: 无
;**         
;** 作   者: lhl
;** 日   期: 2006年5月10日
;**-------------------------------------------------------------------------------------------------------
;** 修 改 人: 
;** 日   期: 
;**------------------------------------------------------------------------------------------------------
;********************************************************************************************************/
void APBn_ClockConfig(APB_CHANNELS_T abp_channel, CONFIG_STATUS_T new_status, UWORD16 peripheral);
/*********************************************************************************************************
;** 函数名称: APBn_SwResetConfig
;** 功能描述: 禁止或允许指定外设软件复位
;** 
;** 参    数: abp_number: 外设所属的APB编号(APB1,ABP2) 
:**           new_status: ENABLE: 允许 DISABLE: 禁止
;**           peripheral: 具体的设备
;**
;** 返 回 值: 无
;**         
;** 作   者: lhl
;** 日   期: 2006年5月10日
;**-------------------------------------------------------------------------------------------------------
;** 修 改 人: 
;** 日   期: 
;**------------------------------------------------------------------------------------------------------
;********************************************************************************************************/
void APBn_SwResetConfig(APB_CHANNELS_T abp_channel, CONFIG_STATUS_T new_status, UWORD16 peripheral);
/*********************************************************************************************************
;** 函数名称: APBn_AllClockConfig
;** 功能描述: 允许允许APBn所属外设时钟
;** 
;** 参    数: abp_number: 外设所属的APB编号(APB1,ABP2) 
:**           new_status: ENABLE: 允许 DISABLE: 禁止
;**
;** 返 回 值: 无
;**         
;** 作   者: lhl
;** 日   期: 2006年5月10日
;**-------------------------------------------------------------------------------------------------------
;** 修 改 人: 
;** 日   期: 
;**------------------------------------------------------------------------------------------------------
;********************************************************************************************************/
void APBn_AllClockConfig(APB_CHANNELS_T abp_channel, CONFIG_STATUS_T new_status);
/*********************************************************************************************************
;** 函数名称: APBn_AllSwResetConfig
;** 功能描述: 禁止或允许所有APBn外设软件复位
;** 
;** 参    数: abp_number: 外设所属的APB编号(APB1,ABP2) 
:**           status    : new_status: ENABLE: 允许 DISABLE: 禁止
;**
;** 返 回 值: 无
;**         
;** 作   者: lhl
;** 日   期: 2006年5月10日
;**-------------------------------------------------------------------------------------------------------
;** 修 改 人: 
;** 日   期: 
;**------------------------------------------------------------------------------------------------------
;********************************************************************************************************/
void APBn_AllSwResetConfig(APB_CHANNELS_T abp_channel, CONFIG_STATUS_T new_status);


#endif /* EN_ARM_APB > 0 */

    #ifdef __cplusplus
    }
    #endif

#endif	// __APB_H

/***************************************** end of file *******************************************/

⌨️ 快捷键说明

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