📄 pio.h
字号:
//*---------------------------------------------------------------------------//* ATMEL Microcontroller Software Support - ROUSSET -//*---------------------------------------------------------------------------//* The software is delivered "AS IS" without warranty or condition of any//* kind, either express, implied or statutory. This includes without//* limitation any warranty or condition with respect to merchantability or//* fitness for any particular purpose, or against the infringements of//* intellectual property rights of others.//*-----------------------------------------------------------------------------//* File Name : pio.h//* Object : Parallel I/O Definition File//* Translator : ARM Software Development Toolkit V2.11a//*//* 1.0 20/10/97 JCZ : Creation//* 2.0 21/10/98 JCZ : Clean up//*---------------------------------------------------------------------------#ifndef pio_h#define pio_h/*---------------------------------------------*//* Parallel I/O Interface Structure Definition *//*---------------------------------------------*/typedef struct{ at91_reg PIO_PER ; /* PIO Enable Register */ at91_reg PIO_PDR ; /* PIO Disable Register */ at91_reg PIO_PSR ; /* PIO Status Register */ at91_reg Reserved0 ; at91_reg PIO_OER ; /* Output Enable Register */ at91_reg PIO_ODR ; /* Output Disable Register */ at91_reg PIO_OSR ; /* Output Status Register */ at91_reg Reserved1 ; at91_reg PIO_IFER ; /* Input Filter Enable Register */ at91_reg PIO_IFDR ; /* Input Filter Disable Register */ at91_reg PIO_IFSR ; /* Input Filter Status Register */ at91_reg Reserved2 ; at91_reg PIO_SODR ; /* Set Output Data Register */ at91_reg PIO_CODR ; /* Clear Output Data Register */ at91_reg PIO_ODSR ; /* Output Data Status Register */ at91_reg PIO_PDSR ; /* Pin Data Status Register */ at91_reg PIO_IER ; /* Interrupt Enable Register */ at91_reg PIO_IDR ; /* Interrupt Disable Register */ at91_reg PIO_IMR ; /* Interrupt Mask Register */ at91_reg PIO_ISR ; /* Interrupt Status Register */} StructPIO ;/*-----------------------------*//* PIO Handler type definition *//*-----------------------------*///typedef void (*TypePIOHandler) ( StructPIO *pio_pt, u_int pio_mask ) ;/*--------------------------------*//* Device Dependancies Definition *//*--------------------------------*//* Number of PIO Controller */#define NB_PIO_CTRL 1/* Base Address */#define PIO_BASE ((StructPIO *) 0xFFFF0000 )/* Number of PIO Lines */#define NB_PIO 32/* Parallel I/O Bits Definition */#define P0 (1<<0)#define P1 (1<<1)#define P2 (1<<2)#define P3 (1<<3)#define P4 (1<<4)#define P5 (1<<5)#define P6 (1<<6)#define P7 (1<<7)#define P8 (1<<8)#define P9 (1<<9)#define P10 (1<<10)#define P11 (1<<11)#define P12 (1<<12)#define P13 (1<<13)#define P14 (1<<14)#define P15 (1<<15)#define P16 (1<<16)#define P17 (1<<17)#define P18 (1<<18)#define P19 (1<<19)#define P20 (1<<20)#define P21 (1<<21)#define P22 (1<<22)#define P23 (1<<23)#define P24 (1<<24)#define P25 (1<<25)#define P26 (1<<26)#define P27 (1<<27)#define P28 (1<<28)#define P29 (1<<29)#define P30 (1<<30)#define P31 (1<<31)/* PIO Multiplexing Definition *//* There is only one PIO Controller */#define PIO_CTRL 0#define PIO_TC0 PIO_CTRL#define TCLK0 P0#define TIOA0 P1#define TIOB0 P2#define PIN_TC0 (TIOA0|TIOB0|TCLK0)#define PIO_TC1 PIO_CTRL#define TCLK1 P3#define TIOA1 P4#define TIOB1 P5#define PIN_TC1 (TIOA1|TIOB1|TCLK1)#define PIO_TC2 PIO_CTRL#define TCLK2 P6#define TIOA2 P7#define TIOB2 P8#define PIN_TC2 (TIOA2|TIOB2|TCLK2)#define PIO_EXT_IRQ PIO_CTRL#define PIN_IRQ0 P9#define PIN_IRQ1 P10#define PIN_IRQ2 P11#define PIN_FIQ P12#define PIO_USART0 PIO_CTRL#define SCK0 P13#define TXD0 P14#define RXD0 P15#define PIN_USART0 (SCK0|TXD0|RXD0)#define PIO_USART1 PIO_CTRL#define SCK1 P20#define TXD1 P21#define RXD1 P22#define PIN_USART1 (SCK1|TXD1|RXD1)#define MCKO P25#define CS2 P26#define CS3 P27#define CS4 P31#define CS5 P30#define CS6 P29#define CS7 P28#endif /* pio_h */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -