📄 ambakmi.h
字号:
/* Copyright 1999-2002 Wind River Systems, Inc. All Rights Reserved *//*modification history--------------------01a,05jul01,m_h Created*//* * DESCRIPTION - Definitions for the AMBA PrimeCell KMI PS2 * Keyboard and mouse driver for ARM bsp's * *//* includes */#include "tyLib.h"#ifndef __INCambakmih#define __INCambakmih#if __cplusplusextern "C"{#endiftypedef volatile UINT32 AT91_REG;/* Hardware register definition*/#define USE_BSP_API/* IOCTL codes */#define CONIOCURCONSOLE 1009#define CONIOCONVERTSCAN 1010#define CONIOLEDS 1011/* misc definitions */#define WAIT_MAX 100 /* Maximum wait time for keyboard */#define STP 0x0001 /* capslock flag */#define NUM 0x0002 /* numeric lock flag */#define CAPS 0x0004 /* scroll lock stop output flag */#if 0/* ========== Register definition for PIOD peripheral ========== */#define AT91C_PIOD_PDSR ((AT91_REG *) 0xFFFFFA3C) /* (PIOD) Pin Data Status Register */#define AT91C_PIOD_CODR ((AT91_REG *) 0xFFFFFA34) /* (PIOD) Clear Output Data Register */#define AT91C_PIOD_OWER ((AT91_REG *) 0xFFFFFAA0) /* (PIOD) Output Write Enable Register */#define AT91C_PIOD_MDER ((AT91_REG *) 0xFFFFFA50) /* (PIOD) Multi-driver Enable Register */#define AT91C_PIOD_IMR ((AT91_REG *) 0xFFFFFA48) /* (PIOD) Interrupt Mask Register */#define AT91C_PIOD_IER ((AT91_REG *) 0xFFFFFA40) /* (PIOD) Interrupt Enable Register */#define AT91C_PIOD_ODSR ((AT91_REG *) 0xFFFFFA38) /* (PIOD) Output Data Status Register */#define AT91C_PIOD_SODR ((AT91_REG *) 0xFFFFFA30) /* (PIOD) Set Output Data Register */#define AT91C_PIOD_PER ((AT91_REG *) 0xFFFFFA00) /* (PIOD) PIO Enable Register */#define AT91C_PIOD_OWDR ((AT91_REG *) 0xFFFFFAA4) /* (PIOD) Output Write Disable Register */#define AT91C_PIOD_PPUER ((AT91_REG *) 0xFFFFFA64) /* (PIOD) Pull-up Enable Register */#define AT91C_PIOD_MDDR ((AT91_REG *) 0xFFFFFA54) /* (PIOD) Multi-driver Disable Register */#define AT91C_PIOD_ISR ((AT91_REG *) 0xFFFFFA4C) /* (PIOD) Interrupt Status Register */#define AT91C_PIOD_IDR ((AT91_REG *) 0xFFFFFA44) /* (PIOD) Interrupt Disable Register */#define AT91C_PIOD_PDR ((AT91_REG *) 0xFFFFFA04) /* (PIOD) PIO Disable Register */#define AT91C_PIOD_ODR ((AT91_REG *) 0xFFFFFA14) /* (PIOD) Output Disable Register */#define AT91C_PIOD_OWSR ((AT91_REG *) 0xFFFFFAA8) /* (PIOD) Output Write Status Register */#define AT91C_PIOD_ABSR ((AT91_REG *) 0xFFFFFA78) /* (PIOD) AB Select Status Register */#define AT91C_PIOD_ASR ((AT91_REG *) 0xFFFFFA70) /* (PIOD) Select A Register */#define AT91C_PIOD_PPUSR ((AT91_REG *) 0xFFFFFA68) /* (PIOD) Pad Pull-up Status Register */#define AT91C_PIOD_PPUDR ((AT91_REG *) 0xFFFFFA60) /* (PIOD) Pull-up Disable Register */#define AT91C_PIOD_MDSR ((AT91_REG *) 0xFFFFFA58) /* (PIOD) Multi-driver Status Register */#define AT91C_PIOD_PSR ((AT91_REG *) 0xFFFFFA08) /* (PIOD) PIO Status Register */#define AT91C_PIOD_OER ((AT91_REG *) 0xFFFFFA10) /* (PIOD) Output Enable Register */#define AT91C_PIOD_OSR ((AT91_REG *) 0xFFFFFA18) /* (PIOD) Output Status Register */#define AT91C_PIOD_IFER ((AT91_REG *) 0xFFFFFA20) /* (PIOD) Input Filter Enable Register */#define AT91C_PIOD_BSR ((AT91_REG *) 0xFFFFFA74) /* (PIOD) Select B Register */#define AT91C_PIOD_IFDR ((AT91_REG *) 0xFFFFFA24) /* (PIOD) Input Filter Disable Register */#define AT91C_PIOD_IFSR ((AT91_REG *) 0xFFFFFA28) /* (PIOD) Input Filter Status Register *//* ========== Register definition for PIOC peripheral ========== */#define AT91C_PIOC_IFDR ((AT91_REG *) 0xFFFFF824) /* (PIOC) Input Filter Disable Register */#define AT91C_PIOC_ODR ((AT91_REG *) 0xFFFFF814) /* (PIOC) Output Disable Register */#define AT91C_PIOC_ABSR ((AT91_REG *) 0xFFFFF878) /* (PIOC) AB Select Status Register */#define AT91C_PIOC_SODR ((AT91_REG *) 0xFFFFF830) /* (PIOC) Set Output Data Register */#define AT91C_PIOC_IFSR ((AT91_REG *) 0xFFFFF828) /* (PIOC) Input Filter Status Register */#define AT91C_PIOC_CODR ((AT91_REG *) 0xFFFFF834) /* (PIOC) Clear Output Data Register */#define AT91C_PIOC_ODSR ((AT91_REG *) 0xFFFFF838) /* (PIOC) Output Data Status Register */#define AT91C_PIOC_IER ((AT91_REG *) 0xFFFFF840) /* (PIOC) Interrupt Enable Register */#define AT91C_PIOC_IMR ((AT91_REG *) 0xFFFFF848) /* (PIOC) Interrupt Mask Register */#define AT91C_PIOC_OWDR ((AT91_REG *) 0xFFFFF8A4) /* (PIOC) Output Write Disable Register */#define AT91C_PIOC_MDDR ((AT91_REG *) 0xFFFFF854) /* (PIOC) Multi-driver Disable Register */#define AT91C_PIOC_PDSR ((AT91_REG *) 0xFFFFF83C) /* (PIOC) Pin Data Status Register */#define AT91C_PIOC_IDR ((AT91_REG *) 0xFFFFF844) /* (PIOC) Interrupt Disable Register */#define AT91C_PIOC_ISR ((AT91_REG *) 0xFFFFF84C) /* (PIOC) Interrupt Status Register */#define AT91C_PIOC_PDR ((AT91_REG *) 0xFFFFF804) /* (PIOC) PIO Disable Register */#define AT91C_PIOC_OWSR ((AT91_REG *) 0xFFFFF8A8) /* (PIOC) Output Write Status Register */#define AT91C_PIOC_OWER ((AT91_REG *) 0xFFFFF8A0) /* (PIOC) Output Write Enable Register */#define AT91C_PIOC_ASR ((AT91_REG *) 0xFFFFF870) /* (PIOC) Select A Register */#define AT91C_PIOC_PPUSR ((AT91_REG *) 0xFFFFF868) /* (PIOC) Pad Pull-up Status Register */#define AT91C_PIOC_PPUDR ((AT91_REG *) 0xFFFFF860) /* (PIOC) Pull-up Disable Register */#define AT91C_PIOC_MDSR ((AT91_REG *) 0xFFFFF858) /* (PIOC) Multi-driver Status Register */#define AT91C_PIOC_MDER ((AT91_REG *) 0xFFFFF850) /* (PIOC) Multi-driver Enable Register */#define AT91C_PIOC_IFER ((AT91_REG *) 0xFFFFF820) /* (PIOC) Input Filter Enable Register */#define AT91C_PIOC_OSR ((AT91_REG *) 0xFFFFF818) /* (PIOC) Output Status Register */#define AT91C_PIOC_OER ((AT91_REG *) 0xFFFFF810) /* (PIOC) Output Enable Register */#define AT91C_PIOC_PSR ((AT91_REG *) 0xFFFFF808) /* (PIOC) PIO Status Register */#define AT91C_PIOC_PER ((AT91_REG *) 0xFFFFF800) /* (PIOC) PIO Enable Register */#define AT91C_PIOC_BSR ((AT91_REG *) 0xFFFFF874) /* (PIOC) Select B Register */#define AT91C_PIOC_PPUER ((AT91_REG *) 0xFFFFF864) /* (PIOC) Pull-up Enable Register */#endif/* ========== Register definition for PIOB peripheral ========== */#define AT91C_PIOB_OWSR ((AT91_REG *) 0xFFFFF6A8) /* (PIOB) Output Write Status Register */#define AT91C_PIOB_PPUSR ((AT91_REG *) 0xFFFFF668) /* (PIOB) Pad Pull-up Status Register */#define AT91C_PIOB_PPUDR ((AT91_REG *) 0xFFFFF660) /* (PIOB) Pull-up Disable Register */#define AT91C_PIOB_MDSR ((AT91_REG *) 0xFFFFF658) /* (PIOB) Multi-driver Status Register */#define AT91C_PIOB_MDER ((AT91_REG *) 0xFFFFF650) /* (PIOB) Multi-driver Enable Register */#define AT91C_PIOB_IMR ((AT91_REG *) 0xFFFFF648) /* (PIOB) Interrupt Mask Register */#define AT91C_PIOB_OSR ((AT91_REG *) 0xFFFFF618) /* (PIOB) Output Status Register */#define AT91C_PIOB_OER ((AT91_REG *) 0xFFFFF610) /* (PIOB) Output Enable Register */#define AT91C_PIOB_PSR ((AT91_REG *) 0xFFFFF608) /* (PIOB) PIO Status Register */#define AT91C_PIOB_PER ((AT91_REG *) 0xFFFFF600) /* (PIOB) PIO Enable Register */#define AT91C_PIOB_BSR ((AT91_REG *) 0xFFFFF674) /* (PIOB) Select B Register */#define AT91C_PIOB_PPUER ((AT91_REG *) 0xFFFFF664) /* (PIOB) Pull-up Enable Register */#define AT91C_PIOB_IFDR ((AT91_REG *) 0xFFFFF624) /* (PIOB) Input Filter Disable Register */#define AT91C_PIOB_ODR ((AT91_REG *) 0xFFFFF614) /* (PIOB) Output Disable Register */#define AT91C_PIOB_ABSR ((AT91_REG *) 0xFFFFF678) /* (PIOB) AB Select Status Register */#define AT91C_PIOB_ASR ((AT91_REG *) 0xFFFFF670) /* (PIOB) Select A Register */#define AT91C_PIOB_IFER ((AT91_REG *) 0xFFFFF620) /* (PIOB) Input Filter Enable Register */#define AT91C_PIOB_IFSR ((AT91_REG *) 0xFFFFF628) /* (PIOB) Input Filter Status Register */#define AT91C_PIOB_SODR ((AT91_REG *) 0xFFFFF630) /* (PIOB) Set Output Data Register */#define AT91C_PIOB_ODSR ((AT91_REG *) 0xFFFFF638) /* (PIOB) Output Data Status Register */#define AT91C_PIOB_CODR ((AT91_REG *) 0xFFFFF634) /* (PIOB) Clear Output Data Register */#define AT91C_PIOB_PDSR ((AT91_REG *) 0xFFFFF63C) /* (PIOB) Pin Data Status Register */#define AT91C_PIOB_OWER ((AT91_REG *) 0xFFFFF6A0) /* (PIOB) Output Write Enable Register */#define AT91C_PIOB_IER ((AT91_REG *) 0xFFFFF640) /* (PIOB) Interrupt Enable Register */#define AT91C_PIOB_OWDR ((AT91_REG *) 0xFFFFF6A4) /* (PIOB) Output Write Disable Register */#define AT91C_PIOB_MDDR ((AT91_REG *) 0xFFFFF654) /* (PIOB) Multi-driver Disable Register */#define AT91C_PIOB_ISR ((AT91_REG *) 0xFFFFF64C) /* (PIOB) Interrupt Status Register */#define AT91C_PIOB_IDR ((AT91_REG *) 0xFFFFF644) /* (PIOB) Interrupt Disable Register */#define AT91C_PIOB_PDR ((AT91_REG *) 0xFFFFF604) /* (PIOB) PIO Disable Register */#if 0/* ========== Register definition for PIOA peripheral ========== */#define AT91C_PIOA_IMR ((AT91_REG *) 0xFFFFF448) /* (PIOA) Interrupt Mask Register */#define AT91C_PIOA_IER ((AT91_REG *) 0xFFFFF440) /* (PIOA) Interrupt Enable Register */#define AT91C_PIOA_OWDR ((AT91_REG *) 0xFFFFF4A4) /* (PIOA) Output Write Disable Register */#define AT91C_PIOA_ISR ((AT91_REG *) 0xFFFFF44C) /* (PIOA) Interrupt Status Register */#define AT91C_PIOA_PPUDR ((AT91_REG *) 0xFFFFF460) /* (PIOA) Pull-up Disable Register */#define AT91C_PIOA_MDSR ((AT91_REG *) 0xFFFFF458) /* (PIOA) Multi-driver Status Register */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -